diff --git a/lib/worker_multibuild.py b/lib/worker_multibuild.py index b672718..5a44b41 100644 --- a/lib/worker_multibuild.py +++ b/lib/worker_multibuild.py @@ -81,8 +81,8 @@ def list_jobs(directory=".buildbot"): return results -def get_revision(): - proc = Popen(["git", "rev-parse", "HEAD"], stdout=PIPE) +def get_revision(branch): + proc = Popen(["git", "rev-parse", branch], stdout=PIPE) retval = proc.stdout.read().strip() retval = retval.decode('utf-8') return retval @@ -117,7 +117,7 @@ def _get_dockerfile_contents(dockerfile): return res + dockerfile_extra_contents[os_codename] -def trigger_child_hooks(buildbotUrl: str, repository, branch, directory=".buildbot"): +def trigger_child_hooks(buildbotUrl: str, repository, branch, revision, directory=".buildbot"): request_url = buildbotUrl + ty # List all jobs in the directory jobs = list_jobs(directory) @@ -126,7 +126,7 @@ def trigger_child_hooks(buildbotUrl: str, repository, branch, directory=".buildb "X-Multibuild-Trigger": get_secret(), "Accept": "text/plain", } - revision = get_revision() + #revision = get_revision(branch) # Check if build.sh or test.sh exists in each of the jobs for job in jobs: @@ -168,13 +168,14 @@ if __name__ == "__main__": # expect jobname, repository, branch, buildbotUrl from command line import sys - if len(sys.argv) == 4: + if len(sys.argv) == 5: buildbotUrl = sys.argv[1] repository = sys.argv[2] branch = sys.argv[3] + revision = sys.argv[4] - trigger_child_hooks(buildbotUrl, repository, branch) + trigger_child_hooks(buildbotUrl, repository, branch, revision) else: sys.exit( - "Usage: python3 multibuild.py " + "Usage: python3 multibuild.py " ) diff --git a/multibuild.py b/multibuild.py index f594d77..1d70c94 100644 --- a/multibuild.py +++ b/multibuild.py @@ -40,7 +40,8 @@ def add_parent_step(build_factory): '/usr/local/bin/worker_multibuild.py', util.Property("buildboturl"), util.Property('repository'), - util.Property('branch') + util.Property('branch'), + util.Property('revision') ], ) )