aboutsummaryrefslogtreecommitdiff
path: root/96boards-hikey-aosp-master.yaml
diff options
context:
space:
mode:
authorVishal Bhoj <vishal.bhoj@linaro.org>2016-04-25 22:18:23 +0530
committerVishal Bhoj <vishal.bhoj@linaro.org>2016-04-26 03:41:14 +0000
commit4398194a717c3cfc505c32a5a8f2ba593649fcf3 (patch)
treee43c26563162c07fb680bfdda440ab87cb7d49d4 /96boards-hikey-aosp-master.yaml
parentaa1b6ca6428d3adfaf791e89208c98a1ce2ef6e1 (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.yaml156
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'