def export_datasources(print_stdout, datasource_file, back_references, include_defaults): """Export datasources to YAML""" data = dict_import_export.export_to_dict( session=db.session, recursive=True, back_references=back_references, include_defaults=include_defaults) if print_stdout or not datasource_file: yaml.safe_dump(data, stdout, default_flow_style=False) if datasource_file: logging.info('Exporting datasources to %s', datasource_file) with open(datasource_file, 'w') as data_stream: yaml.safe_dump(data, data_stream, default_flow_style=False)
def test_export_datasource_ui_cli(self): cli_export = export_to_dict( session=db.session, recursive=True, back_references=False, include_defaults=False, ) self.get_resp("/login/", data=dict(username="******", password="******")) resp = self.get_resp( "/databaseview/action_post", {"action": "yaml_export", "rowid": 1} ) ui_export = yaml.safe_load(resp) self.assertEqual( ui_export["databases"][0]["database_name"], cli_export["databases"][0]["database_name"], ) self.assertEqual( ui_export["databases"][0]["tables"], cli_export["databases"][0]["tables"] )
def export_datasources( print_stdout: bool, datasource_file: str, back_references: bool, include_defaults: bool, ) -> None: """Export datasources to YAML""" from superset.utils import dict_import_export data = dict_import_export.export_to_dict( recursive=True, back_references=back_references, include_defaults=include_defaults, ) if print_stdout or not datasource_file: yaml.safe_dump(data, stdout, default_flow_style=False) if datasource_file: logger.info("Exporting datasources to %s", datasource_file) with open(datasource_file, "w") as data_stream: yaml.safe_dump(data, data_stream, default_flow_style=False)
def export_datasources( datasource_file: Optional[str], print_stdout: bool = False, back_references: bool = False, include_defaults: bool = False, ) -> None: """Export datasources to YAML""" # pylint: disable=import-outside-toplevel from superset.utils import dict_import_export data = dict_import_export.export_to_dict( session=db.session, recursive=True, back_references=back_references, include_defaults=include_defaults, ) if print_stdout or not datasource_file: yaml.safe_dump(data, sys.stdout, default_flow_style=False) if datasource_file: logger.info("Exporting datasources to %s", datasource_file) with open(datasource_file, "w") as data_stream: yaml.safe_dump(data, data_stream, default_flow_style=False)
def test_export_datasource_ui_cli(self): # TODO(bkyryliuk): find fake db is leaking from self.delete_fake_db() cli_export = export_to_dict( recursive=True, back_references=False, include_defaults=False, ) self.get_resp("/login/", data=dict(username="******", password="******")) resp = self.get_resp("/databaseview/action_post", { "action": "yaml_export", "rowid": 1 }) ui_export = yaml.safe_load(resp) self.assertEqual( ui_export["databases"][0]["database_name"], cli_export["databases"][0]["database_name"], ) self.assertEqual(ui_export["databases"][0]["tables"], cli_export["databases"][0]["tables"])