From 0dc12f53b04591cd9b1d6251b60752341abd7810 Mon Sep 17 00:00:00 2001 From: Anil Belur Date: Tue, 9 Oct 2018 19:44:43 +1000 Subject: [PATCH] Support OpenJDK 10 for builder images Install OpenJDK 10 from http://jdk.java.net/ into /opt. While the default version of Java will still be 1.8.0 version, set the slave links using alternatives so that the required version of Java can be switched during job runtime. Example: the command switches to Java 10. $ echo 3 | sudo alternatives --config java JIRA: https://jira.linuxfoundation.org/browse/RELENG-1299 Change-Id: I54ac0c4913ae7afd173a1edf746d6bd31fb6d74d Signed-off-by: Anil Belur --- packer/provision/local-builder.yaml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/packer/provision/local-builder.yaml b/packer/provision/local-builder.yaml index 149060c537..f40db9c629 100644 --- a/packer/provision/local-builder.yaml +++ b/packer/provision/local-builder.yaml @@ -11,6 +11,9 @@ elastic_search_version: 1.7.5 hbase_checksum: sha256:9cd990939403fd43dfb665b14603e3772ca3ed813a6e21a81de1778583b35eb8 hbase_version: 0.94.27 + openjdk10_version: 10.0.2 + openjdk10_checksum: 'sha256:f3b26abc9990a0b8929781310e14a339a7542adfd6596afb842fa0dd7e3848b2' + openjdk10_url: https://download.java.net/java/GA/jdk10/{{openjdk10_version}}/19aef61b38124481863b1413dce1855f/13/openjdk-{{openjdk10_version}}_linux-x64_bin.tar.gz pre_tasks: - include_role: name=lfit.system-update @@ -19,6 +22,30 @@ - lfit.mono-install tasks: + - name: 'Install OpenJDK {{openjdk10_version}}' + block: + - name: 'Fetch OpenJDK {{openjdk10_version}} to /tmp/jdk-{{openjdk10_version}}_linux-x64_bin.tar.gz' + get_url: + url: "{{openjdk10_url}}" + dest: '/tmp/jdk-{{openjdk10_version}}_linux-x64_bin.tar.gz' + checksum: '{{openjdk10_checksum}}' + - name: 'Untar OpenJDK {{openjdk10_version}} in /opt/' + unarchive: + src: '/tmp/jdk-{{openjdk10_version}}_linux-x64_bin.tar.gz' + dest: /opt/ + mode: 0755 + remote_src: true + become: true + - name: 'Setup Java master and slave links for OpenJDK {{openjdk10_version}}' + command: 'alternatives --install "/usr/bin/java" "java" "/opt/jdk-{{openjdk10_version}}/bin/java" 10 \ + --slave "/usr/bin/jar" "jar" "/opt/jdk-{{openjdk10_version}}/bin/jar" \ + --slave "/usr/bin/jarsigner" "jarsigner" "/opt/jdk-{{openjdk10_version}}/bin/jarsigner" \ + --slave "/usr/bin/javac" "javac" "/opt/jdk-{{openjdk10_version}}/bin/javac" \ + --slave "/usr/bin/javadoc" "javadoc" "/opt/jdk-{{openjdk10_version}}/bin/javadoc" \ + --slave "/usr/bin/javah" "javah" "/opt/jdk-{{openjdk10_version}}/bin/javah" \ + --slave "/usr/bin/javap" "javap" "/opt/jdk-{{openjdk10_version}}/bin/javap" \ + --slave "/usr/bin/javaws" "javaws" "/opt/jdk-{{openjdk10_version}}/bin/javaws"' + become: true - name: Install Cassandra Server block: - name: 'Fetch Cassandra Server to /tmp/apache-cassandra-{{cassandra_version}}-bin.tar.gz' -- 2.36.6