diff options
| author | Florian Fischer <florian.fl.fischer@fau.de> | 2020-07-10 18:23:46 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fl.fischer@fau.de> | 2020-07-10 18:23:46 +0200 |
| commit | ca4de66821b097dc6a43c0384f75a7ab5a292be1 (patch) | |
| tree | ba234089b17a611c2cee646df541eaff2ba09dba | |
| parent | a0a78c0be4f891de343232949e08004b77667959 (diff) | |
| download | allocbench-ca4de66821b097dc6a43c0384f75a7ab5a292be1.tar.gz allocbench-ca4de66821b097dc6a43c0384f75a7ab5a292be1.zip | |
[GitArtifact] only update bare repo when checkout can't be provided
| -rw-r--r-- | allocbench/artifact.py | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/allocbench/artifact.py b/allocbench/artifact.py index 60b2ca0..22e50f3 100644 --- a/allocbench/artifact.py +++ b/allocbench/artifact.py @@ -86,22 +86,25 @@ class GitArtifact(Artifact): if not os.path.exists(self.repo): self.retrieve() - # update repo - print_status(f'Updating git repository "{self.name}" ...') - try: - run_cmd(GIT_FETCH_CMD, output_verbosity=1, cwd=self.repo) - except CalledProcessError: - print_error(f"Failed to update {self.name}") - raise - worktree_cmd = ["git", "worktree", "add", location, checkout] print_debug("create new worktree. By running: ", worktree_cmd, f"in {self.repo}") try: run_cmd(worktree_cmd, output_verbosity=1, cwd=self.repo) except CalledProcessError: - print_error(f"Failed to provide {self.name}") - raise + # update repo + print_status(f'Updating git repository "{self.name}" ...') + try: + run_cmd(GIT_FETCH_CMD, output_verbosity=1, cwd=self.repo) + except CalledProcessError: + print_error(f"Failed to update {self.name}") + raise + + try: + run_cmd(worktree_cmd, output_verbosity=1, cwd=self.repo) + except CalledProcessError: + print_error(f"Failed to provide {self.name}") + raise submodule_init_cmd = [ "git", "submodule", "update", "--init", "--recursive" |
