Fetch the remote crypto branch, rather than cloning it

This commit is contained in:
Darryl Green 2019-03-08 11:12:19 +00:00
parent 3a5f6c83bc
commit 1d95c539e9

View File

@ -151,21 +151,23 @@ class AbiChecker(object):
return return
if version.crypto_repository: if version.crypto_repository:
shutil.rmtree(os.path.join(git_worktree_path, "crypto")) fetch_process = subprocess.Popen(
clone_process = subprocess.Popen( [self.git_command, "fetch", version.crypto_repository,
[self.git_command, "clone", version.crypto_repository, version.crypto_revision],
"--branch", version.crypto_revision, "crypto"], cwd=os.path.join(git_worktree_path, "crypto"),
cwd=git_worktree_path,
stdout=subprocess.PIPE, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT stderr=subprocess.STDOUT
) )
clone_output, _ = clone_process.communicate() fetch_output, _ = fetch_process.communicate()
self.log.info(clone_output.decode("utf-8")) self.log.info(fetch_output.decode("utf-8"))
if clone_process.returncode != 0: if fetch_process.returncode != 0:
raise Exception("git clone failed, aborting") raise Exception("git fetch failed, aborting")
crypto_rev = "FETCH_HEAD"
else: else:
crypto_rev = version.crypto_revision
checkout_process = subprocess.Popen( checkout_process = subprocess.Popen(
[self.git_command, "checkout", version.crypto_revision], [self.git_command, "checkout", crypto_rev],
cwd=os.path.join(git_worktree_path, "crypto"), cwd=os.path.join(git_worktree_path, "crypto"),
stdout=subprocess.PIPE, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT stderr=subprocess.STDOUT