From 8bce3b487bf54015d10b73658d07c02c8a204f68 Mon Sep 17 00:00:00 2001 From: Corentin LABBE Date: Mon, 8 Apr 2019 15:47:34 +0200 Subject: SPEC-1850: Implement CIBT for applications build This commit enable CIBT for applications. For keeping the same naming for GERRIT_PATCHSET_NUMBER and GERRIT_CHANGEID_NUMBER and use of the new releng-scripts app-changeid/app-patchset, we use a new jjb/common/include-agl-app-run-test-short.sh Change-Id: Ic2a93327236b932ae43125a172237a3882f4569e Signed-off-by: Corentin LABBE --- jjb/ci-apps-verify/ci-apps-jjb.yaml | 32 +++++++++++++++---- jjb/common/include-agl-app-run-test-short.sh | 48 ++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+), 7 deletions(-) create mode 100644 jjb/common/include-agl-app-run-test-short.sh diff --git a/jjb/ci-apps-verify/ci-apps-jjb.yaml b/jjb/ci-apps-verify/ci-apps-jjb.yaml index 8f2444e9..710ca366 100644 --- a/jjb/ci-apps-verify/ci-apps-jjb.yaml +++ b/jjb/ci-apps-verify/ci-apps-jjb.yaml @@ -78,6 +78,8 @@ - ci-apps-{project}-verify-{aglbranch} - ci-apps-{project}-verify-{aglbranch}-CIB-{architecture} - ci-apps-{project}-verify-{aglbranch}-CIB-finish-success + - ci-apps-{project}-verify-{aglbranch}-CIBT-{architecture} + - ci-apps-{project}-verify-{aglbranch}-CIBT-finish-success - ci-apps-{project}-verify-{aglbranch}-signal-gracetime - ci-apps-{project}-verify-{aglbranch}-failure - ci-apps-{project}-remove-{aglbranch}-artifacts @@ -87,8 +89,6 @@ # currently unused templates # - ci-apps-{project}-verify-CIB-start # - ci-apps-{project}-verify-CIBT-start - #- ci-apps-{project}-verify-CIBT-{architecture} - #- ci-apps-{project}-verify-CIBT-finish-success ################################################################################################################################################################ @@ -182,6 +182,24 @@ current-parameters: true abort-all-job: true kill-phase-on: FAILURE + - multijob: + name: CIBT-{project} + condition: SUCCESSFUL + projects: + - name: 'ci-apps-{project}-verify-{aglbranch}-CIBT-x86-64' + current-parameters: true + #abort-all-job: true + kill-phase-on: FAILURE + predefined-parameters: AGLBRANCH={aglbranch} + - multijob: + name: CIBT-{project}-finish-success + condition: SUCCESSFUL + projects: + - name: 'ci-apps-{project}-verify-{aglbranch}-CIBT-finish-success' + current-parameters: true + abort-all-job: true + kill-phase-on: FAILURE + ################################################################################ @@ -719,7 +737,7 @@ # ########################### - job-template: - name: 'ci-apps-{project}-verify-CIBT-{architecture}' + name: 'ci-apps-{project}-verify-{aglbranch}-CIBT-{architecture}' project-type: freestyle concurrent: true node: hwtest-slave @@ -746,9 +764,9 @@ default: "2" description: "patchset # to build" - string: - name: MACHINE + name: TARGETARCH default: '{architecture}' - description: "Machine to build" + description: "Architecture to build" build-discarder: days-to-keep: 30 @@ -775,7 +793,7 @@ - ../common/include-agl-select.sh - ../common/include-agl-run-test-prepare.sh - ../common/include-agl-lava-labs-prepare.sh - - ../common/include-agl-run-test-short.sh + - ../common/include-agl-app-run-test-short.sh - ../common/include-agl-lava-jobs-submit.sh publishers: @@ -838,7 +856,7 @@ # #################### - job-template: - name: 'ci-apps-{project}-verify-CIBT-finish-success' + name: 'ci-apps-{project}-verify-{aglbranch}-CIBT-finish-success' project-type: freestyle concurrent: true node: control-slave diff --git a/jjb/common/include-agl-app-run-test-short.sh b/jjb/common/include-agl-app-run-test-short.sh new file mode 100644 index 00000000..e26cb604 --- /dev/null +++ b/jjb/common/include-agl-app-run-test-short.sh @@ -0,0 +1,48 @@ +# (c) 2019 Corentin Labbe clabbe(at)baylibre.com +# License GPLv2 +# Copied from jjb/common/include-agl-run-test-short.sh + +################################################################################ +## Run SHORT CI test +################################################################################ + +set -x + +cd $REPODIR + +echo "# LAVA lab target: ${LAVA_LAB} #" +# releng-scripts depends on jinja2 >= 2.9 +echo "## Check version of python-jinja2: " +pip show jinja2 +CREATE_ARGS="" +case $TARGETARCH in +arm) +CREATE_ARGS+="--machine qemuarm " +;; +x86_64) +CREATE_ARGS+="--machine qemux86_64 " +;; +aarch64) +CREATE_ARGS+="--machine qemuarm64 " +;; +*) + echo "ERROR: unknown architecture $TARGETARCH" + exit 1 +;; +esac +CREATE_ARGS+="--build-type snapshot --branch master --version latest " +[[ ! -z $GERRIT_CHANGE_NUMBER ]] && CREATE_ARGS+="--app-changeid $GERRIT_CHANGE_NUMBER " +[[ ! -z $GERRIT_PATCHSET_NUMBER ]] && CREATE_ARGS+="--app-patchset $GERRIT_PATCHSET_NUMBER " +BUILD_VERSION="AGL-gerrit-$GERRIT_CHANGE_NUMBER-$GERRIT_PATCHSET_NUMBER" +[[ -e output/repo-manifest-r.txt.sha1 ]] && BUILD_VERSION+="-$(cat output/repo-manifest-r.txt.sha1)" +CREATE_ARGS+="--name AGL-gerrit-$GERRIT_CHANGE_NUMBER-$GERRIT_PATCHSET_NUMBER " +CREATE_ARGS+="--build-version $BUILD_VERSION " +CREATE_ARGS+="--callback-from ${LAVA_LAB} " +$RELENG/utils/create-jobs.py ${CREATE_ARGS} > testjob.yaml + +if [ $? != 0 ]; then + echo "ERROR: Machine ${releng_device}: LAVA job creation failed." + exit 0 +else + cat testjob.yaml +fi -- cgit 1.2.3-korg