diff options
author | Vishal Bhoj <vishal.bhoj@linaro.org> | 2016-04-25 22:18:23 +0530 |
---|---|---|
committer | Vishal Bhoj <vishal.bhoj@linaro.org> | 2016-04-26 03:41:14 +0000 |
commit | 4398194a717c3cfc505c32a5a8f2ba593649fcf3 (patch) | |
tree | e43c26563162c07fb680bfdda440ab87cb7d49d4 /96boards-hikey-aosp-master.yaml | |
parent | aa1b6ca6428d3adfaf791e89208c98a1ce2ef6e1 (diff) |
96boards-hikey-aosp-master: Initial job template
This job will help us monitor AOSP master on hikey
Change-Id: I52c14c4bf537e54ad03308e9dcee473cc23c4ad7
Signed-off-by: Vishal Bhoj <vishal.bhoj@linaro.org>
Diffstat (limited to '96boards-hikey-aosp-master.yaml')
-rw-r--r-- | 96boards-hikey-aosp-master.yaml | 156 |
1 files changed, 156 insertions, 0 deletions
diff --git a/96boards-hikey-aosp-master.yaml b/96boards-hikey-aosp-master.yaml new file mode 100644 index 0000000000..261f6c0bcc --- /dev/null +++ b/96boards-hikey-aosp-master.yaml @@ -0,0 +1,156 @@ +- job: + name: 96boards-hikey-aosp-master + project-type: freestyle + defaults: global + logrotate: + daysToKeep: 60 + numToKeep: 60 + properties: + - authorization: + anonymous: + - job-read + linaro: + - job-build + - job-cancel + parameters: + - string: + name: BUILD_CONFIG_FILENAME + default: 'hikey-aosp-master' + disabled: false + node: docker-utopic-aosp + display-name: '96boards - AOSP Master - HiKey' + concurrent: true + triggers: + - timed : '@daily' + wrappers: + - timestamps + - timeout: + timeout: 500 + builders: + - linaro-publish-token: + host: builds.96boards.org + - shell: | + #!/bin/bash + + java -version + + sudo sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list + sudo apt-get update + sudo apt-get install -y gcc-4.9-multilib bison git gperf libxml2-utils python-mako zip time python-pycurl genisoimage patch mtools + + wget -q http://mirrors.kernel.org/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre-headless_8u45-b14-1_amd64.deb \ + http://mirrors.kernel.org/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jre_8u45-b14-1_amd64.deb \ + http://mirrors.kernel.org/ubuntu/pool/universe/o/openjdk-8/openjdk-8-jdk_8u45-b14-1_amd64.deb + sudo dpkg -i --force-all *.deb + + mkdir -p ${HOME}/bin ${WORKSPACE}/build/out + curl https://storage.googleapis.com/git-repo-downloads/repo > ${HOME}/bin/repo + wget https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py + chmod a+x ${HOME}/bin/* + export PATH=${HOME}/bin:${PATH} + + if [ ! -d "/home/buildslave/srv/${JOB_NAME}" ]; then + sudo mkdir -p /home/buildslave/srv/${JOB_NAME} + sudo chmod 777 /home/buildslave/srv/${JOB_NAME} + fi + cd /home/buildslave/srv/${JOB_NAME} + + git config --global user.email "ci_notify@linaro.org" + git config --global user.name "Linaro CI" + + # Runs as ubuntu + set -xe + rm -rf build-tools jenkins-tools build/out build/android-patchsets build-configs + git clone --depth 1 https://git.linaro.org/infrastructure/linaro-android-build-tools.git build-tools + git clone --depth 1 https://git.linaro.org/infrastructure/linaro-jenkins-tools.git jenkins-tools + git clone --depth 1 http://android.git.linaro.org/git/android-build-configs.git build-configs + + export BUILD_CONFIG_FILENAME=${BUILD_CONFIG_FILENAME:-${JOB_NAME#android-*}} + + cat << EOF > config.txt + BUILD_CONFIG_REPO=http://android.git.linaro.org/git/android-build-configs.git + BUILD_CONFIG_BRANCH=master + EOF + echo config.txt + export CONFIG=`base64 -w 0 config.txt` + + # Download vendor binaries for hikey. + mkdir -p build + cd build/ + wget https://dl.google.com/dl/android/aosp/linaro-hikey-20160226-67c37b1a.tgz + tar -xvf linaro-hikey-20160226-67c37b1a.tgz + yes "I ACCEPT" | ./extract-linaro-hikey.sh + cd - + + build-tools/node/build us-east-1.ec2-git-mirror.linaro.org "${CONFIG}" + cp -a /home/buildslave/srv/${JOB_NAME}/build/out/*.xml /home/buildslave/srv/${JOB_NAME}/build/out/*.json ${WORKSPACE}/ + + # Create smaller userdata partition for 4gb emmc + cd build/ + out/host/linux-x86/bin/make_ext4fs -s -T -1 -S out/root/file_contexts -L data -l 1342177280 -a data out/userdata-4gb.img out/data + cd - + + # Publish + PUB_DEST=snapshots/reference-platform/aosp/hikey/${BUILD_NUMBER} + + cd build/out + rm -f boot.img ramdisk.img + for image in "boot_fat.uefi.img" "system.img" "userdata.img" "userdata-4gb.img" "cache.img"; do + echo "Compressing ${image}" + tar -Jcf ${image}.tar.xz ${image} + rm -f ${image} + done + cd - + + time linaro-cp.py \ + --manifest \ + --no-build-info \ + --link-latest \ + --split-job-owner \ + --server ${PUBLISH_SERVER} \ + build/out \ + ${PUB_DEST} \ + --include "^[^/]+[._](img[^/]*|tar[^/]*|xml|sh|config)$" \ + --include "^[BHi][^/]+txt$" \ + --include "^(MANIFEST|MD5SUMS)$" + + # Construct post-build-lava parameters + if [ -f build-configs/${BUILD_CONFIG_FILENAME} ]; then + source build-configs/${BUILD_CONFIG_FILENAME} + else + echo "No config file named ${BUILD_CONFIG_FILENAME} exists" + echo "in android-build-configs.git" + exit 1 + fi + + cat << EOF > ${WORKSPACE}/post_build_lava_parameters + DEVICE_TYPE=${LAVA_DEVICE_TYPE:-${TARGET_PRODUCT}} + TARGET_PRODUCT=${TARGET_PRODUCT} + MAKE_TARGETS=${MAKE_TARGETS} + JOB_NAME=${JOB_NAME} + BUILD_NUMBER=${BUILD_NUMBER} + BUILD_URL=${BUILD_URL} + LAVA_SERVER=validation.linaro.org/RPC2/ + IMAGE_EXTENSION=img.tar.xz + FRONTEND_JOB_NAME=${JOB_NAME} + DOWNLOAD_URL=${PUBLISH_SERVER}/${PUB_DEST} + CUSTOM_JSON_URL=https://git.linaro.org/qa/test-plans.git/blob_plain/HEAD:/android/hikey/template-boot.json + EOF + + echo "Build finished" + - trigger-builds: + - project: 'post-build-lava' + property-file: post_build_lava_parameters + block: true + publishers: + - archive: + artifacts: '*.xml,*.json' + latest-only: true + - logparser: + parse-rules: 'Android Build' + unstable-on-warning: false + fail-on-error: false + - fingerprint: + files: 'build/fingerprints/*' + - email: + recipients: 'vishal.bhoj@linaro.org fathi.boudra@linaro.org ricardo.salveti@linaro.org' |