From e319e59d757469430e98ef7fc56cfb79232ed3da Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Fri, 13 Nov 2015 13:38:49 +0100 Subject: [PATCH] contrib/rh-bkr: fix jenkins script to schedule beaker jobs --- contrib/rh-bkr/bkr.py | 7 +++++-- contrib/rh-bkr/jenkins.sh | 15 ++++++++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/contrib/rh-bkr/bkr.py b/contrib/rh-bkr/bkr.py index 0d03ac793e..0b5cbc79ad 100755 --- a/contrib/rh-bkr/bkr.py +++ b/contrib/rh-bkr/bkr.py @@ -585,6 +585,9 @@ class CmdSubmit(CmdBase): self.subs['RPM_LIST'] = [ u for x in self.rpm for u in x[1].urls() ] tests = [] + t = self._get_var("TESTS") + if t: + tests.extend([t]) if self.options.tests: tests.extend(self.options.tests) if self.options.nitrate_all or self.options.nitrate_tag or self.options.nitrate_exclude_tag: @@ -607,11 +610,11 @@ class CmdSubmit(CmdBase): else: print("Selected %d cases..." % (len(cases))) nitrate_print_cases(cases, prefix=" + ") - tests.extend([nitrate_get_script_name_for_case(case) for case_id, case in cases.iteritems()]) + tests.extend(sorted(set([nitrate_get_script_name_for_case(case) for case_id, case in cases.iteritems()]))) elif self.options.nitrate_status or self.options.nitrate_exclude_status: raise Exception("--nitrate-status or --nitrate-exclude-status makes only sense with selecting nitrate tags") - self.subs['TESTS'] = ','.join(sorted(set(tests))) + self.subs['TESTS'] = ','.join(tests) self.subs['ARGV'] = ("\"" + "\" \"".join(sys.argv) + "\"").replace('"', '"') if sys.argv else '' self.subs['ARGV_PROFILE'] = ("\"" + "\" \"".join(self.argv_profile) + "\"").replace('"', '"') if hasattr(self, 'argv_profile') else '' diff --git a/contrib/rh-bkr/jenkins.sh b/contrib/rh-bkr/jenkins.sh index 5b4e6b4705..02d860ac3b 100755 --- a/contrib/rh-bkr/jenkins.sh +++ b/contrib/rh-bkr/jenkins.sh @@ -16,6 +16,11 @@ DIR="$(dirname "$(readlink -f "$0")")" # HOSTYPE= # TESTS= # ARGS= +# GIT_TARGETBRANCH= + +# Trigger from remote: +# TOKEN_NAME= // secret +# URL="https://desktopqe-jenkins.rhev-ci-vms.eng.rdu2.redhat.com/job/NetworkManager-upstream/buildWithParameters?token=$TOKEN_NAME&cause=$CAUSE&ARGS=..." RPM=() for r in $RPM_URLS; do @@ -45,6 +50,12 @@ for r in $ARGS; do _ARGS+=("$r") done +if [ -n "$GIT_TARGETBRANCH" -a "$GIT_TARGETBRANCH" != "--" ]; then + GIT_TARGETBRANCH=(--var "GIT_TARGETBRANCH=$GIT_TARGETBRANCH") +else + GIT_TARGETBRANCH=() +fi + export WHITEBOARD="$BUILD_URL" python -u \ @@ -59,9 +70,11 @@ python -u \ "${PROFILE[@]}" \ "${HOSTTYPE[@]}" \ --var "TESTS=$TESTS" \ + "${GIT_TARGETBRANCH[@]}" \ + --var "GIT_URL=$GIT_TEST_REPOSITORY" \ --bkr-write-job-id 'beaker_job_id' \ --bkr-wait-completion \ - --bkr-job-results 'results.txt' \ + --bkr-job-results 'results.xml' \ --no-test \ "${_ARGS[@]}"