aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Konovalov <andrey.konovalov@linaro.org>2015-03-27 16:21:22 +0300
committerFathi Boudra <fathi.boudra@linaro.org>2015-04-02 19:01:09 +0300
commitcd2cb504be5918bd4789268d4678cb5730f7cb08 (patch)
treed7937d11fec4335e00c0ffaf4f3839ca56c56638
parent5ad5e51190888516200ac718943ce84e6aa22208 (diff)
linux-linaro-tracking-ll-ilp32: add kernel build for ILP32 testing
Change-Id: I765f1220986216965606908b5634d78a75153620 Signed-off-by: Andrey Konovalov <andrey.konovalov@linaro.org> Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
-rw-r--r--linux-linaro-tracking-ll-ilp32.yaml172
-rw-r--r--linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.json51
-rw-r--r--linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.yaml34
3 files changed, 257 insertions, 0 deletions
diff --git a/linux-linaro-tracking-ll-ilp32.yaml b/linux-linaro-tracking-ll-ilp32.yaml
new file mode 100644
index 0000000..8e126eb
--- /dev/null
+++ b/linux-linaro-tracking-ll-ilp32.yaml
@@ -0,0 +1,172 @@
+- job:
+ name: linux-linaro-tracking-ll-ilp32
+ project-type: matrix
+ defaults: global
+ logrotate:
+ daysToKeep: 30
+ numToKeep: 30
+ properties:
+ - authorization:
+ anonymous:
+ - job-read
+ - job-extended-read
+ - job-workspace
+ parameters:
+ - password:
+ name: PUBLISH_KEY
+ default: ${PUBLISH_KEY}
+ - string:
+ name: BUNDLE_STREAM_NAME
+ default: '/public/team/linaro/ilp32/'
+ - string:
+ name: DEVICE_TYPE
+ default: 'juno'
+ - string:
+ name: LAVA_SERVER
+ default: 'validation.linaro.org/RPC2/'
+ disabled: false
+ node: build
+ child-workspace: .
+ display-name: 'Linux Linaro Kernel (tracking) with ILP32'
+ scm:
+ - git:
+ url: git://git.linaro.org/kernel/linux-linaro-tracking.git
+ refspec: +refs/heads/linux-linaro:refs/remotes/origin/linux-linaro
+ name: origin
+ branches:
+ - refs/heads/linux-linaro
+ skip-tag: true
+ shallow-clone: true
+ wipe-workspace: false
+ axes:
+ - axis:
+ type: user-defined
+ name: abi
+ values:
+ - ilp32
+ - lp64
+ - axis:
+ type: slave
+ name: label
+ values:
+ - docker-utopic
+ execution-strategy:
+ sequential: true
+ wrappers:
+ - timestamps
+ - copy-to-slave:
+ includes:
+ - gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu.tar.xz
+ - build-name:
+ name: '#${BUILD_NUMBER}-${GIT_REVISION,length=8}'
+ - matrix-tie-parent:
+ node: build
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ set -ex
+
+ trap cleanup_exit INT TERM EXIT
+
+ cleanup_exit()
+ {
+ cd ${WORKSPACE}
+ rm -rf lci-build-tools
+ rm -rf builddir*
+ rm -rf out
+ rm -f linux-*.deb
+ }
+
+ sudo apt-get install -y python-pycurl
+
+ export LANG=C
+ export make_bootwrapper=false
+ export make_install=true
+ export hwpack_type="vexpress64"
+ export kernel_flavour="vexpress64"
+ export use_config_fragment=1
+ export conf_filenames="linaro/configs/linaro-base.conf linaro/configs/linaro-base64.conf linaro/configs/distribution.conf linaro/configs/kvm-guest.conf linaro/configs/kvm-host.conf linaro/configs/vexpress64.conf linaro/configs/workaround.conf"
+ export MAKE_DTBS=true
+ export ARCH=arm64
+ export toolchain_url="http://releases.linaro.org/14.11/components/toolchain/binaries/aarch64-linux-gnu/gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu.tar.xz"
+
+ echo "# CONFIG_FTRACE is not set" > linaro/configs/workaround.conf
+ [ "${abi}" = "ilp32" ] && echo "CONFIG_AARCH32_EL0=y" >> linaro/configs/workaround.conf
+ [ "${abi}" = "ilp32" ] && echo "CONFIG_ARM64_ILP32=y" >> linaro/configs/workaround.conf
+
+ # Install custom toolchain
+ mkdir arm64-tc
+ export tcbindir="${WORKSPACE}/arm64-tc/bin"
+ tar --strip-components=1 -C ${WORKSPACE}/arm64-tc -xf gcc-linaro-4.9-*_aarch64-linux-gnu.tar.xz
+ export PATH="${tcbindir}:$PATH"
+
+ test -d lci-build-tools || git clone --depth 1 https://git.linaro.org/ci/lci-build-tools.git
+ bash -x lci-build-tools/jenkins_kernel_build_inst
+
+ mv hwpack_linaro-${hwpack_type}* out/
+
+ cat << EOF > out/startup.nsh
+ fs3:\Image dtb=juno\juno.dtb console=ttyAMA0,115200 earlyprintk=pl011,0x7ff80000 root=/dev/sda5 rootwait rootfstype=ext4 rw verbose debug uefi_debug ignore_loglevel
+ EOF
+
+ # These tests seem to hang in ILP32
+ cat << EOF >> out/skipfile-ilp32
+ msgctl07
+ msgrcv01
+ msgrcv02
+ msgrcv03
+ msgrcv04
+ msgrcv05
+ msgrcv06
+ msgrcv07
+ msgsnd01
+ EOF
+
+ # Publish to snapshots
+ test -d ${HOME}/bin || mkdir ${HOME}/bin
+ wget https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
+ python ${HOME}/bin/linaro-cp out kernel-hwpack/linux-linaro-tracking-ll-ilp32/${abi}/${BUILD_NUMBER}
+
+ KERNEL_URL="http://snapshots.linaro.org/kernel-hwpack/linux-linaro-tracking-ll-ilp32/${abi}/${BUILD_NUMBER}"
+ HWPACK_BUILD_URL="${KERNEL_URL}/`ls out/hwpack_linaro-${hwpack_type}*.tar.gz |xargs basename`"
+ STARTUP_NSH="${KERNEL_URL}/startup.nsh"
+
+ # Create post-build-lava parameters
+ cat << EOF > post_build_lava_parameters
+ DEVICE_TYPE=${DEVICE_TYPE}
+ BUNDLE_STREAM_NAME=${BUNDLE_STREAM_NAME}
+ CUSTOM_JSON_URL=${JOB_URL}/ws/custom_lava_job_definition.json
+ LAVA_SERVER=${LAVA_SERVER}
+ KERNEL_URL=${KERNEL_URL}
+ HWPACK_BUILD_URL=${HWPACK_BUILD_URL}
+ STARTUP_NSH=${STARTUP_NSH}
+ hwpack_type=${hwpack_type}
+ EOF
+ - inject:
+ properties-file: post_build_lava_parameters
+ - shell: |
+ rootfs="lamp"
+ export rootfs_type="lamp-armv8-gcc-4.9"
+ [ "${abi}" = "ilp32" ] && {
+ rootfs="minimal"
+ rootfs_ext="-ltp"
+ export rootfs_type="minimal-armv8-ilp32-gcc-4.9"
+ img_abi="-ilp32"
+ }
+
+ export ROOTFS_BUILD_NUMBER=`wget -q --no-check-certificate -O - https://ci.linaro.org/jenkins/job/openembedded-armv8${img_abi}-rootfs/gcc_version=4.9,label=build,rootfs=${rootfs}${rootfs_ext}/lastSuccessfulBuild/buildNumber`
+ export ROOTFS_BUILD_TIMESTAMP=`wget -q --no-check-certificate -O - https://ci.linaro.org/jenkins/job/openembedded-armv8${img_abi}-rootfs/gcc_version=4.9,label=build,rootfs=${rootfs}${rootfs_ext}/lastSuccessfulBuild/buildTimestamp?format=yyyyMMdd`
+ export ROOTFS_BUILD_URL="http://snapshots.linaro.org/openembedded/images/${rootfs_type}/${ROOTFS_BUILD_NUMBER}/linaro-image-${rootfs}-genericarmv8${img_abi}-${ROOTFS_BUILD_TIMESTAMP}-${ROOTFS_BUILD_NUMBER}.rootfs.tar.gz"
+
+ rm -rf configs lci-build-tools
+ git clone --depth 1 http://git.linaro.org/ci/lci-build-tools.git
+ git clone --depth 1 http://git.linaro.org/ci/job/configs.git
+ ./lci-build-tools/yaml-to-json.py configs/linux-linaro-tracking-ll-ilp32/lava-job-definitions/${DEVICE_TYPE}/template-efi.yaml > custom_lava_job_definition.json
+ - trigger-builds:
+ - project: 'post-build-lava'
+ property-file: post_build_lava_parameters
+ block: true
+ publishers:
+ - email:
+ recipients: 'andrey.konovalov@linaro.org fathi.boudra@linaro.org'
diff --git a/linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.json b/linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.json
new file mode 100644
index 0000000..1da2828
--- /dev/null
+++ b/linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.json
@@ -0,0 +1,51 @@
+{
+ "actions": [
+ {
+ "command": "deploy_linaro_image",
+ "parameters": {
+ "bootloadertype": "uefi",
+ "customize": {
+ "${STARTUP_NSH}": ["boot:/EFI/BOOT/startup.nsh"]
+ },
+ "hwpack": "${HWPACK_BUILD_URL}",
+ "rootfs": "${ROOTFS_BUILD_URL}"
+ },
+ "metadata": {
+ "distribution": "openembedded",
+ "hwpack.build": "${BUILD_NUMBER}",
+ "hwpack.type": "${hwpack_type}",
+ "rootfs.build": "${ROOTFS_BUILD_NUMBER}",
+ "rootfs.type": "${rootfs_type}",
+ "git URL": "${GIT_URL}",
+ "git branch": "${GIT_BRANCH}",
+ "git commit": "${GIT_COMMIT}"
+ }
+ },
+ {
+ "command": "lava_test_shell",
+ "parameters": {
+ "timeout": 7200,
+ "testdef_repos": [
+ {
+ "git-repo": "git://git.linaro.org/qa/test-definitions.git",
+ "parameters": {
+ "TST_CMDFILES": "syscalls",
+ "SKIPFILE": "${KERNEL_URL}/skipfile-ilp32"
+ },
+ "testdef": "openembedded/ltp.yaml"
+ }
+ ]
+ }
+ },
+ {
+ "command": "submit_results",
+ "parameters": {
+ "stream": "${BUNDLE_STREAM_NAME}",
+ "server": "http://${LAVA_SERVER}"
+ }
+ }
+ ],
+ "device_type": "${DEVICE_TYPE}",
+ "job_name": "${BUILD_URL}",
+ "timeout": 18000
+}
diff --git a/linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.yaml b/linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.yaml
new file mode 100644
index 0000000..a9dbf97
--- /dev/null
+++ b/linux-linaro-tracking-ll-ilp32/lava-job-definitions/juno/template-efi.yaml
@@ -0,0 +1,34 @@
+actions:
+- command: deploy_linaro_image
+ parameters:
+ bootloadertype: 'uefi'
+ customize:
+ '${STARTUP_NSH}':
+ - 'boot:/EFI/BOOT/startup.nsh'
+ hwpack: '${HWPACK_BUILD_URL}'
+ rootfs: '${ROOTFS_BUILD_URL}'
+ metadata:
+ distribution: 'openembedded'
+ hwpack.build: '${BUILD_NUMBER}'
+ hwpack.type: '${hwpack_type}'
+ rootfs.build: '${ROOTFS_BUILD_NUMBER}'
+ rootfs.type: '${rootfs_type}'
+ git URL: '${GIT_URL}'
+ git branch: '${GIT_BRANCH}'
+ git commit: '${GIT_COMMIT}'
+- command: lava_test_shell
+ parameters:
+ timeout: 7200
+ testdef_repos:
+ - git-repo: git://git.linaro.org/qa/test-definitions.git
+ parameters:
+ TST_CMDFILES: syscalls
+ SKIPFILE: '${KERNEL_URL}/skipfile-ilp32'
+ testdef: openembedded/ltp.yaml
+- command: submit_results
+ parameters:
+ server: 'http://${LAVA_SERVER}'
+ stream: '${BUNDLE_STREAM_NAME}'
+device_type: '${DEVICE_TYPE}'
+job_name: '${BUILD_URL}'
+timeout: 18000