diff options
author | Stuart Monteith <stuart.monteith@linaro.org> | 2017-05-08 10:28:10 +0100 |
---|---|---|
committer | Stuart Monteith <stuart.monteith@linaro.org> | 2017-09-06 10:24:17 +0000 |
commit | d0501ec27f31f2e820ad95ac877fd8e64fe2a586 (patch) | |
tree | 0ab454fa85e509fe36d4d09c1757874eb7e04e98 /jdk10-build-release.yaml | |
parent | a287a054b9ce0cb0805c3ce08a7ab33010a013c5 (diff) |
jdk: Add jdk10 jobs
There is a JDK10 tree that needs built and tested - add the jobs.
The jdk10-update-src-tree job is triggered manually until we have
enough machine capacity.
Change-Id: I5c72d9a80c3be1560bb1a891b47a4f3a03d8a83b
Diffstat (limited to 'jdk10-build-release.yaml')
-rw-r--r-- | jdk10-build-release.yaml | 153 |
1 files changed, 153 insertions, 0 deletions
diff --git a/jdk10-build-release.yaml b/jdk10-build-release.yaml new file mode 100644 index 00000000..30b54843 --- /dev/null +++ b/jdk10-build-release.yaml @@ -0,0 +1,153 @@ +- job: + name: jdk10-build-release + project-type: matrix + defaults: global + description: | + * Configures and builds jdk10 for release. Run after the source has passed tests. + * Tags build with Linaro-YYMM as per normal release procedure. + * The source tarball is copied from the jdk10-update-src-tree job.<br> + properties: + - authorization: + anonymous: + - job-read + - job-extended-read + openjdk-members: + - job-build + - job-cancel + - build-discarder: + days-to-keep: 30 + num-to-keep: 10 + artifact-num-to-keep: 5 + parameters: + - string: + name: JDK_URL + default: 'http://openjdk.linaro.org/releases/jdk9-server-release-1708.tar.xz' + disabled: false + node: aarch64-06 + display-name: 'OpenJDK 10 - Configure and build OpenJDK 10 Release' + axes: + - axis: + type: user-defined + name: JVM_VARIANT + values: + - server + - axis: + type: user-defined + name: BUILD_TYPE + values: + - release + - axis: + type: slave + name: label + values: + - aarch64-06 + execution-strategy: + sequential: true + wrappers: + - workspace-cleanup: + dirmatch: false + - timestamps + - matrix-tie-parent: + node: aarch64-06 + builders: + - copyartifact: + project: jdk10-update-src-tree + filter: 'out/jdk10.tar.gz' + target: incoming + flatten: true + - copyartifact: + project: archive-primordial-jdk10 + filter: 'out/primordial-jdk10.tar.gz' + target: incoming + flatten: true + - shell: | + #!/bin/bash + + set -exu + + #export CCACHE_DIR=~/.ccache-${JVM_VARIANT}-${BUILD_TYPE} + #ccache -M 1G + #ccache -s + export JVM_VARIANT=server + + # Generate files names dependent on year/month. + RELEASE=$(date +%y%m) + JDKDIR=jdk10-${JVM_VARIANT}-${BUILD_TYPE}-${RELEASE} + JDK_SRCDIR=jdk10-src-${RELEASE} + + ccache_build_opts=--disable-ccache + + rm -rf jdk* primordial-jdk* build* + + # Download, setup JDK9 for building. + wget --progress=dot -e dotbytes=2M ${JDK_URL} + tar -Jxf jdk*.tar.xz + + cd jdk*/jre/lib/security/ + rm -f cacerts + ln -s /etc/ssl/certs/java/cacerts + + cd ${WORKSPACE}/jdk* + export JAVA_HOME=${PWD} + + export PATH=${JAVA_HOME}/bin:${PATH} + + cd ${WORKSPACE} + + # Setup archive directory + mkdir out + + # Extract sources from upstream job + tar xaf incoming/jdk10.tar.gz + + mv jdk10 $JDK_SRCDIR + # Tar up the source before sullying it with a build. + tar --exclude=.hg\* -acf out/jdk10-src-${RELEASE}.tar.xz $JDK_SRCDIR + + mv $JDK_SRCDIR $JDKDIR + shopt -s nullglob + + # Configure and build + mkdir -p build-stage1 build-stage2 + + two_stage_build=0 + + which java + java -version + + if [ $two_stage_build = 1 ]; then + pushd build-stage1 + sh ../$JDKDIR/configure --with-jvm-variants=${JVM_VARIANT} --with-debug-level=${BUILD_TYPE} --with-boot-jdk=${WORKSPACE}/primordial-jdk10 ${ccache_build_opts} + make images + popd + + pushd build-stage2 + sh ../$JDKDIR/configure --with-jvm-variants=${JVM_VARIANT} \ + --with-debug-level=${BUILD_TYPE} \ + --with-boot-jdk=${WORKSPACE}/build-stage1/images/jdk \ + ${ccache_build_opts} \ + --with-version-opt="Linaro-$RELEASE" \ + --with-version-pre="release" + make images + popd + else + pushd build-stage2 + sh ../$JDKDIR/configure --with-jvm-variants=${JVM_VARIANT} \ + --with-debug-level=${BUILD_TYPE} \ + ${ccache_build_opts} \ + --with-version-opt="Linaro-$RELEASE" \ + --with-version-pre="release" + make images + popd + fi + + # Archive the result + artifact_name=jdk10-${JVM_VARIANT}-${BUILD_TYPE}-${RELEASE} + + # This is different from ordinary builds. + tar -C build-stage2/images --exclude=\*.diz --transform="s!^jdk!$artifact_name!" -acf out/${artifact_name}.tar.xz jdk + publishers: + - archive: + artifacts: 'out/*.tar.xz' + - email: + recipients: 'stuart.monteith@linaro.org fathi.boudra@linaro.org' |