X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-dev.git/blobdiff_plain/4561c47c9c4dcd3fe004ff46f4915de87a64b909..10277b30403ade535cdd169a3517561e56f53311:/invirtibuilder diff --git a/invirtibuilder b/invirtibuilder index 4849bee..32744ae 100755 --- a/invirtibuilder +++ b/invirtibuilder @@ -7,7 +7,7 @@ attempts to build a particular package. If the build succeeds, the new version of the package is uploaded to the apt repository, tagged in its git repository, and the Invirt -superrepo is updated to point at the new version. +superproject is updated to point at the new version. If the build fails, the Invirtibuilder sends mail with the build log. @@ -173,19 +173,19 @@ def uploadBuild(pocket, workdir): changes]) -def updateSuperrepo(pocket, package, commit, principal): - """Update the superrepo. +def updateSuperproject(pocket, package, commit, principal): + """Update the superproject. This will create a new commit on the branch for the given pocket that sets the commit for the package submodule to commit. Note that there's no locking issue here, because we disallow all - pushes to the superrepo. + pushes to the superproject. """ - superrepo = os.path.join(b._REPO_DIR, 'invirt/packages.git') + superproject = os.path.join(b._REPO_DIR, 'invirt/packages.git') branch = b.pocketToGit(pocket) tree = c.captureOutput(['git', 'ls-tree', branch], - cwd=superrepo) + cwd=superproject) new_tree = re.compile( r'^(160000 commit )[0-9a-f]*(\t%s)$' % package, re.M).sub( @@ -193,7 +193,7 @@ def updateSuperrepo(pocket, package, commit, principal): tree) new_tree_id = c.captureOutput(['git', 'mktree'], - cwd=superrepo, + cwd=superproject, stdin_str=new_tree) commit_msg = ('Update %s to version %s\n\n' @@ -202,13 +202,13 @@ def updateSuperrepo(pocket, package, commit, principal): principal)) new_commit = c.captureOutput( ['git', 'commit-tree', new_tree_hash, '-p', branch], - cwd=superrepo, + cwd=superproject, env=env, stdin_str=commit_msg) c.captureOutput( ['git', 'update-ref', 'refs/heads/%s' % branch, new_commit], - cwd=superrepo) + cwd=superproject) @contextlib.contextmanager @@ -329,8 +329,8 @@ def build(): tagSubmodule(pocket, package, commit, principal) db.failed_stage = 'updating submodule branches' updateSubmoduleBranch(pocket, package, commit) - db.failed_stage = 'updating superrepo' - updateSuperrepo(pocket, package, commit, principal) + db.failed_stage = 'updating superproject' + updateSuperproject(pocket, package, commit, principal) db.failed_stage = 'uploading packages to apt repo' uploadBuild(pocket, workdir)