aboutsummaryrefslogtreecommitdiff
path: root/linaro-edk2-prep-matrix.yaml
diff options
context:
space:
mode:
authorFathi Boudra <fathi.boudra@linaro.org>2015-06-02 22:55:17 +0300
committerFathi Boudra <fathi.boudra@linaro.org>2015-06-02 22:55:17 +0300
commitc9075b84c6eb50b7930e14e62a471ade0a4ddadc (patch)
tree25ee2f978bad862be0a4d5238b00109998267399 /linaro-edk2-prep-matrix.yaml
parente709b4ba8c5358d2e3b1f2ec436ad4e29c4be1ec (diff)
linaro-edk2-prep-matrix: add new job
Change-Id: I6065a228c8f0e9842457ca0f969f09fcb2e7b08b Signed-off-by: Roy Franc <roy.franz@linaro.org>
Diffstat (limited to 'linaro-edk2-prep-matrix.yaml')
-rw-r--r--linaro-edk2-prep-matrix.yaml146
1 files changed, 146 insertions, 0 deletions
diff --git a/linaro-edk2-prep-matrix.yaml b/linaro-edk2-prep-matrix.yaml
new file mode 100644
index 0000000000..fb566479f4
--- /dev/null
+++ b/linaro-edk2-prep-matrix.yaml
@@ -0,0 +1,146 @@
+- job:
+ name: linaro-edk2-prep-matrix
+ project-type: matrix
+ defaults: global
+ logrotate:
+ daysToKeep: 30
+ numToKeep: 30
+ properties:
+ - authorization:
+ anonymous:
+ - job-read
+ - job-extended-read
+ linaro:
+ - job-read
+ - job-extended-read
+ - job-build
+ - job-cancel
+ disabled: false
+ node: build
+# child-workspace: .
+ display-name: 'Linaro EDK II - UEFI Continuous Integration (pre-release) - Matrix'
+# scm:
+# - git:
+# url: http://git.linaro.org/git/uefi/linaro-edk2.git
+# refspec: +refs/heads/release-prep:refs/remotes/origin/release-prep
+# name: origin
+# branches:
+# - refs/heads/release-prep
+# basedir: linaro-edk2
+# skip-tag: true
+# shallow-clone: true
+# clean: true
+# wipe-workspace: false
+# triggers:
+# - pollscm: 'H/5 * * * *'
+ axes:
+ - axis:
+ type: user-defined
+ name: MX_B
+ values:
+ - qemu64
+ - qemu
+ - juno-armbds
+ - juno
+ - fvp-base-armbds
+ - mustang
+ - fvp-foundation-armbds
+ - rtsm_a15mpcore-armbds
+ - tc2-armbds
+ - beagle-armbds
+ - axis:
+ type: user-defined
+ name: MX_TYPE
+ values:
+ - RELEASE
+ - DEBUG
+ - axis:
+ type: user-defined
+ name: MX_TC
+ values:
+# - 47
+ - 48
+ - 49
+ - axis:
+ type: slave
+ name: label
+ values:
+ - docker-utopic
+ execution-strategy:
+ combination-filter: |
+ MX_B=="qemu64" && MX_TYPE=="RELEASE" && MX_TC=="48"
+# sequential: true
+ wrappers:
+ - timestamps
+# - build-name:
+# name: '#${BUILD_NUMBER}-${GIT_REVISION,length=8}'
+ - matrix-tie-parent:
+ node: build
+ builders:
+ - linaro-publish-token
+ - shell: |
+ #!/bin/bash
+
+ export JOB_NAME=linaro-edk2-prep
+ echo "MX_B: ${MX_B}"
+ echo "MX_TYPE: ${MX_TYPE}"
+ echo "BUILD_NUMBER: ${BUILD_NUMBER}"
+ echo "WORKSPACE: ${WORKSPACE}"
+
+ set -ex
+
+ # Here we check if we are the 'touchstone build. There _MUST_ be only 1 of these, as this is used
+ # to do some per-build setup (initialize reference repository, etc)
+ # This configuration will build first, and by itself. After this is successful, then
+ # other builds can go in parallel.
+ export FIRST_BUILD=0
+ if [ ${MX_B} == "qemu64" && ${MX_TYPE} == "RELEASE" && ${MX_TC} == "48" ]; then
+ export FIRST_BUILD=1
+ fi
+ echo "FIRST_BUILD: ${FIRST_BUILD}"
+
+ # Find the base of the multi-config workspace so we can cache copies
+ # of the git repos there.
+ pushd .
+ while : ; do
+ TT=$(pwd)
+ WS_BASE=$(pwd)
+ TT=$(basename ${TT})
+ [[ "${TT}" != "workspace" ]] || break
+ [[ "${TT}" == "/" ]] && exit 1
+ cd ..
+ done
+ popd
+
+ echo "WS_BASE is: ${WS_BASE}"
+ export WS_BASE
+
+ trap cleanup_exit INT TERM EXIT
+
+ cleanup_exit()
+ {
+ cd ${WORKSPACE}
+ rm -rf uefi-ci uefi-tools
+ # rm -rf ${JOB_NAME}-build
+ # rm -rf out
+ }
+
+ # Use pre-installed linaro toolchain
+ [ ${MX_TC} == "48" ] && export PATH="${HOME}/srv/toolchain/arm-tc-14.04/bin:${HOME}/srv/toolchain/arm64-tc-14.04/bin:$PATH"
+ [ ${MX_TC} == "49" ] && export PATH="${HOME}/srv/toolchain/arm-tc-15.02/bin:${HOME}/srv/toolchain/arm64-tc-15.02/bin:$PATH"
+
+ git clone git://git.linaro.org/uefi/uefi-tools.git
+ git clone git://git.linaro.org/people/roy.franz/uefi-ci.git -b rfranz-jenkins-test uefi-ci
+ bash -x uefi-ci/uefi.sh
+
+ builddir=${WORKSPACE}/${JOB_NAME}-build
+ outdir=${WORKSPACE}/out
+
+ rm -rf ${outdir}
+ mkdir -p ${outdir}
+ mv ${builddir}/* ${outdir}/
+ find ${outdir}/ -name '*QEMU_EFI.fd' -exec bash -c 'in=${1}; out=${in%fd}img; cat $in /dev/zero | dd iflag=fullblock bs=1M count=64 of=$out; gzip -9 $out' _ {} \;
+
+ OUT_DIR=${WORKSPACE}/output/mx-build-${BUILD_NUMBER}-gcc${MX_TC}
+ mkdir -p ${OUT_DIR}
+ cp -r out/* ${OUT_DIR}/