Support OpenJDK 10 for builder images
[releng/builder.git] / packer / provision / local-builder.yaml
1 ---
2 - import_playbook: ../common-packer/provision/baseline.yaml
3
4 - hosts: all
5   become_user: root
6   become_method: sudo
7   vars:
8     cassandra_checksum: sha256:a95ba4e2c9345b31310d14507e8889797cc626bc793fd341fff8ff8cba3131cd
9     cassandra_version: 2.1.16
10     elastic_search_checksum: sha256:0aa58947d66b487488e86059352deb7c6cab5da4accdff043cce9fed7c3d2fa7
11     elastic_search_version: 1.7.5
12     hbase_checksum: sha256:9cd990939403fd43dfb665b14603e3772ca3ed813a6e21a81de1778583b35eb8
13     hbase_version: 0.94.27
14     openjdk10_version: 10.0.2
15     openjdk10_checksum: 'sha256:f3b26abc9990a0b8929781310e14a339a7542adfd6596afb842fa0dd7e3848b2'
16     openjdk10_url: https://download.java.net/java/GA/jdk10/{{openjdk10_version}}/19aef61b38124481863b1413dce1855f/13/openjdk-{{openjdk10_version}}_linux-x64_bin.tar.gz
17
18   pre_tasks:
19     - include_role: name=lfit.system-update
20
21   roles:
22     - lfit.mono-install
23
24   tasks:
25     - name: 'Install OpenJDK {{openjdk10_version}}'
26       block:
27         - name: 'Fetch OpenJDK {{openjdk10_version}} to /tmp/jdk-{{openjdk10_version}}_linux-x64_bin.tar.gz'
28           get_url:
29             url: "{{openjdk10_url}}"
30             dest: '/tmp/jdk-{{openjdk10_version}}_linux-x64_bin.tar.gz'
31             checksum: '{{openjdk10_checksum}}'
32         - name: 'Untar OpenJDK {{openjdk10_version}} in /opt/'
33           unarchive:
34             src: '/tmp/jdk-{{openjdk10_version}}_linux-x64_bin.tar.gz'
35             dest: /opt/
36             mode: 0755
37             remote_src: true
38           become: true
39         - name: 'Setup Java master and slave links for OpenJDK {{openjdk10_version}}'
40           command: 'alternatives --install "/usr/bin/java" "java" "/opt/jdk-{{openjdk10_version}}/bin/java" 10 \
41                     --slave "/usr/bin/jar" "jar" "/opt/jdk-{{openjdk10_version}}/bin/jar" \
42                     --slave "/usr/bin/jarsigner" "jarsigner" "/opt/jdk-{{openjdk10_version}}/bin/jarsigner" \
43                     --slave "/usr/bin/javac" "javac" "/opt/jdk-{{openjdk10_version}}/bin/javac" \
44                     --slave "/usr/bin/javadoc" "javadoc" "/opt/jdk-{{openjdk10_version}}/bin/javadoc" \
45                     --slave "/usr/bin/javah" "javah" "/opt/jdk-{{openjdk10_version}}/bin/javah" \
46                     --slave "/usr/bin/javap" "javap" "/opt/jdk-{{openjdk10_version}}/bin/javap" \
47                     --slave "/usr/bin/javaws" "javaws" "/opt/jdk-{{openjdk10_version}}/bin/javaws"'
48           become: true
49     - name: Install Cassandra Server
50       block:
51         - name: 'Fetch Cassandra Server to /tmp/apache-cassandra-{{cassandra_version}}-bin.tar.gz'
52           get_url:
53             url: 'https://archive.apache.org/dist/cassandra/{{cassandra_version}}/apache-cassandra-{{cassandra_version}}-bin.tar.gz'
54             dest: '/tmp/apache-cassandra-{{cassandra_version}}-bin.tar.gz'
55             checksum: '{{cassandra_checksum}}'
56         - name: Make /tmp/cassandra directory
57           file:
58             path: /tmp/cassandra
59             state: directory
60             mode: 0755
61         - name: Untar Cassandra server to /tmp/cassandra
62           unarchive:
63             src: '/tmp/apache-cassandra-{{cassandra_version}}-bin.tar.gz'
64             dest: /tmp/cassandra
65             remote_src: true
66     - name: Install Elastic Search
67       block:
68         - name: 'Fetch Elastic Search to /tmp/elasticsearch-{{elastic_search_version}}.tar.gz'
69           get_url:
70             url: 'https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-{{elastic_search_version}}.tar.gz'
71             dest: '/tmp/elasticsearch-{{elastic_search_version}}.tar.gz'
72             checksum: '{{elastic_search_checksum}}'
73         - name: Make /tmp/elasticsearch directory
74           file:
75             path: /tmp/elasticsearch
76             state: directory
77             mode: 0755
78         - name: Untar Elastic Search to /tmp/elasticsearch
79           unarchive:
80             src: '/tmp/elasticsearch-{{elastic_search_version}}.tar.gz'
81             dest: /tmp/elasticsearch
82             remote_src: true
83     - name: Install HBase Server
84       block:
85         - name: 'Fetch HBase to /tmp/hbase-{{hbase_version}}.tar.gz'
86           get_url:
87             url: 'https://archive.apache.org/dist/hbase/hbase-{{hbase_version}}/hbase-{{hbase_version}}.tar.gz'
88             dest: '/tmp/hbase-{{hbase_version}}.tar.gz'
89             checksum: '{{hbase_checksum}}'
90         - name: Make /tmp/Hbase directory
91           file:
92             path: /tmp/Hbase
93             state: directory
94             mode: 0755
95         - name: Untar Hbase to /tmp/Hbase
96           unarchive:
97             src: '/tmp/hbase-{{hbase_version}}.tar.gz'
98             dest: /tmp/Hbase
99             remote_src: true
100
101   post_tasks:
102     - name: System Reseal
103       script: ../common-packer/provision/system-reseal.sh
104       become: true