Fix revision handling (should fix github/gitea reporting)
Some checks failed
buildbot/multibuild_parent Build done.
buildbot/travis_bionic Build done.

This commit is contained in:
Peter Šurda 2022-04-11 16:53:39 +08:00
parent 53fcd7e7b9
commit f2cb5fd8d3
Signed by: PeterSurda
GPG Key ID: 3E47497CF67ABB95
2 changed files with 10 additions and 8 deletions

View File

@ -81,8 +81,8 @@ def list_jobs(directory=".buildbot"):
return results return results
def get_revision(): def get_revision(branch):
proc = Popen(["git", "rev-parse", "HEAD"], stdout=PIPE) proc = Popen(["git", "rev-parse", branch], stdout=PIPE)
retval = proc.stdout.read().strip() retval = proc.stdout.read().strip()
retval = retval.decode('utf-8') retval = retval.decode('utf-8')
return retval return retval
@ -117,7 +117,7 @@ def _get_dockerfile_contents(dockerfile):
return res + dockerfile_extra_contents[os_codename] 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 request_url = buildbotUrl + ty
# List all jobs in the directory # List all jobs in the directory
jobs = list_jobs(directory) jobs = list_jobs(directory)
@ -126,7 +126,7 @@ def trigger_child_hooks(buildbotUrl: str, repository, branch, directory=".buildb
"X-Multibuild-Trigger": get_secret(), "X-Multibuild-Trigger": get_secret(),
"Accept": "text/plain", "Accept": "text/plain",
} }
revision = get_revision() #revision = get_revision(branch)
# Check if build.sh or test.sh exists in each of the jobs # Check if build.sh or test.sh exists in each of the jobs
for job in jobs: for job in jobs:
@ -168,13 +168,14 @@ if __name__ == "__main__":
# expect jobname, repository, branch, buildbotUrl from command line # expect jobname, repository, branch, buildbotUrl from command line
import sys import sys
if len(sys.argv) == 4: if len(sys.argv) == 5:
buildbotUrl = sys.argv[1] buildbotUrl = sys.argv[1]
repository = sys.argv[2] repository = sys.argv[2]
branch = sys.argv[3] branch = sys.argv[3]
revision = sys.argv[4]
trigger_child_hooks(buildbotUrl, repository, branch) trigger_child_hooks(buildbotUrl, repository, branch, revision)
else: else:
sys.exit( sys.exit(
"Usage: python3 multibuild.py <buildbotUrl> <repository> <branch>" "Usage: python3 multibuild.py <buildbotUrl> <repository> <branch> <revision>"
) )

View File

@ -40,7 +40,8 @@ def add_parent_step(build_factory):
'/usr/local/bin/worker_multibuild.py', '/usr/local/bin/worker_multibuild.py',
util.Property("buildboturl"), util.Property("buildboturl"),
util.Property('repository'), util.Property('repository'),
util.Property('branch') util.Property('branch'),
util.Property('revision')
], ],
) )
) )