diff options
author | Stuart Monteith <stuart.monteith@linaro.org> | 2020-01-13 14:39:09 +0000 |
---|---|---|
committer | Stuart Monteith <stuart.monteith@linaro.org> | 2020-01-13 14:40:17 +0000 |
commit | 53ae798a662dece9022fe74d1fa300df0951ff9e (patch) | |
tree | 6cfb2bc56dbea62340a9466ae6e3bc79c07577be /jdk14-build-release.yaml | |
parent | 53fc061fe066fcd3d022f49d7947164d3d034033 (diff) |
jdk: Add jdk14 jobs
Creates all the new jobs required for jdk14. Disables jdk12, which was
obsoleted by jdk13.
Change-Id: Idd622d78764932837a493f7e65f93e0969866a5b
Diffstat (limited to 'jdk14-build-release.yaml')
-rw-r--r-- | jdk14-build-release.yaml | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/jdk14-build-release.yaml b/jdk14-build-release.yaml new file mode 100644 index 00000000..1c5cbb4a --- /dev/null +++ b/jdk14-build-release.yaml @@ -0,0 +1,123 @@ +- job: + name: jdk14-build-release + project-type: matrix + defaults: global + description: | + * Configures and builds jdk14 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 jdk14-update-src-tree job.<br> + properties: + - authorization: + anonymous: + - job-read + - job-extended-read + openjdk-members: + - job-build + - job-cancel + - job-workspace + - build-discarder: + days-to-keep: 30 + num-to-keep: 10 + artifact-num-to-keep: 5 + disabled: false + node: j12-qrep-01 + display-name: 'OpenJDK 14 - Configure and build OpenJDK 14 Release' + axes: + - axis: + type: user-defined + name: BUILD_TYPE + values: + - release + - axis: + type: slave + name: label + values: + - j12-qrep-01 + execution-strategy: + sequential: true + wrappers: + - workspace-cleanup: + dirmatch: false + - timestamps + - matrix-tie-parent: + node: j12-qrep-01 + builders: + - copyartifact: + project: jdk14-update-src-tree + filter: 'out/jdk14.tar.gz' + target: incoming + flatten: true + - shell: | + #!/bin/bash + + set -exu + + # Generate files names dependent on year/month. + RELEASE=$(date +%y%m) + JDKDIR=jdk14-${BUILD_TYPE}-${RELEASE} + JDK_SRCDIR=jdk14-src-${RELEASE} + + ccache_build_opts=--disable-ccache + + rm -rf jdk* primordial-jdk* build* out + mkdir -p build-stage1 build-stage2 out + + cd $HOME/srv/jdk-cache/jdk13 + export JAVA_HOME=${PWD} + + export PATH=${JAVA_HOME}/bin:${PATH} + + cd ${WORKSPACE} + + # Extract sources from upstream job + tar xaf incoming/jdk14.tar.gz + + mv jdk14 $JDK_SRCDIR + # Tar up the source before sullying it with a build. + tar --exclude=.hg\* -acf out/jdk14-src-${RELEASE}.tar.xz $JDK_SRCDIR + + mv $JDK_SRCDIR $JDKDIR + shopt -s nullglob + + # Configure and build. + two_stage_build=0 + + which java + java -version + + if [ $two_stage_build = 1 ]; then + pushd build-stage1 + sh ../$JDKDIR/configure --with-debug-level=${BUILD_TYPE} --with-boot-jdk=${WORKSPACE}/primordial-jdk14 ${ccache_build_opts} + make images + popd + + pushd build-stage2 + sh ../$JDKDIR/configure --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" \ + --disable-warnings-as-errors + make images + popd + else + pushd build-stage2 + sh ../$JDKDIR/configure --with-debug-level=${BUILD_TYPE} \ + ${ccache_build_opts} \ + --with-version-opt="Linaro-$RELEASE" \ + --with-version-pre="release" \ + --disable-warnings-as-errors + make images + popd + fi + + # Archive the result + artifact_name=jdk14-${BUILD_TYPE}-${RELEASE} + + # This is different from ordinary builds. + tar -C build-stage2/images --exclude=\*.debuginfo --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' |