From 067667566bec460a40c6f561020e34f87ff1c103 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Thu, 15 Aug 2024 16:06:33 +0000 Subject: [PATCH] redo some stuff in project import --- backlogger/main.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/backlogger/main.py b/backlogger/main.py index b065589..e65fed4 100644 --- a/backlogger/main.py +++ b/backlogger/main.py @@ -67,16 +67,18 @@ def import_project(path, url, aliases=None, code=None, isDataset=True): dl.save(path + '/projects/tmp', dataset=path) else: dl.install(path=tmp_path, source=url, dataset=path) - - conf = dlc.ConfigManager(tmp_path) + tmp_ds = dl.Dataset(tmp_path) + conf = dlc.ConfigManager(tmp_ds) uuid = conf.get("datalad.dataset.id") if not uuid: raise ValueError("The dataset does not have a uuid!") - dl.unlock(path + "/backlogger.db", dataset=path) - create_project(path, uuid, aliases, code) - move_submodule(path, 'projects/tmp', 'projects/' + uuid) - - os.mkdir(path + '/import_scripts/' + uuid) + if not os.path.exists(path + "/projects/" + uuid): + dl.unlock(path + "/backlogger.db", dataset=path) + create_project(path, uuid, aliases, code) + move_submodule(path, 'projects/tmp', 'projects/' + uuid) + os.mkdir(path + '/import_scripts/' + uuid) + dl.save([path + "/backlogger.db", 'projects/' + uuid], message="Import project from " + url, dataset=path) + else: + print("Project is already imported.") # make this more concrete - dl.save([path + "/backlogger.db", 'projects/' + uuid], message="Import project from " + url, dataset=path) return uuid