From e6383e2e061fd51ca74366f1cf1762448a7bab91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20tom=20W=C3=B6rden?= <h.tomwoerden@indiscale.com> Date: Wed, 4 Mar 2020 16:03:43 +0100 Subject: [PATCH] ENH: make rerun an argument --- src/caosadvancedtools/export_related.py | 2 +- src/caosadvancedtools/import_from_xml.py | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/caosadvancedtools/export_related.py b/src/caosadvancedtools/export_related.py index 1c32106a..5b41c97e 100644 --- a/src/caosadvancedtools/export_related.py +++ b/src/caosadvancedtools/export_related.py @@ -118,7 +118,7 @@ def main(rec_id): xml = etree.tounicode(cont.to_xml( local_serialization=True), pretty_print=True) - with open("test.txt", "w") as fi: + with open("caosdb_data.xml", "w") as fi: fi.write(xml) diff --git a/src/caosadvancedtools/import_from_xml.py b/src/caosadvancedtools/import_from_xml.py index 8e17d8e0..e5496d54 100644 --- a/src/caosadvancedtools/import_from_xml.py +++ b/src/caosadvancedtools/import_from_xml.py @@ -33,9 +33,6 @@ from tempfile import NamedTemporaryFile import caosdb as db from caosmodels.data_model import DataModel -from lxml import etree - -RERUN = False def create_dummy_file(text="Please ask the administrator for this file."): @@ -47,7 +44,7 @@ def create_dummy_file(text="Please ask the administrator for this file."): return tmpfile.name -def main(filename): +def main(filename, rerun=False): cont = db.Container() with open(filename) as fi: cont = cont.from_xml(fi.read()) @@ -78,7 +75,7 @@ def main(filename): new_files = [] print(files) - if not RERUN: + if not rerun: for fi in files: new = db.File(file=fi.file, path=fi.path, name=fi.name, id=fi.id, description=fi.description) @@ -110,7 +107,7 @@ def main(filename): # insert files - if not RERUN: + if not rerun: for i, el in enumerate(files): print(el) r = el.insert(unique=False) @@ -137,6 +134,9 @@ def main(filename): def defineParser(): parser = argparse.ArgumentParser(description=__doc__) parser.add_argument("file", help='file to be imported') + parser.add_argument("--rerun", help='if this script is run at least a' + ' second time and files are already inserted', + action="store_true") return parser @@ -145,4 +145,4 @@ if __name__ == "__main__": parser = defineParser() args = parser.parse_args() - main(args.file) + main(args.file, args.rerun) -- GitLab