Migrate lf-ansible java-install role 82/8982/2
authorThanh Ha <thanh.ha@linuxfoundation.org>
Wed, 21 Feb 2018 21:52:05 +0000 (16:52 -0500)
committerThanh Ha <thanh.ha@linuxfoundation.org>
Wed, 21 Feb 2018 22:42:44 +0000 (17:42 -0500)
Change-Id: Ia4ea8d8187b5bed6edb054d0ff11a71171115668
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
tasks/Debian.yml [new file with mode: 0644]
tasks/RedHat.yml [new file with mode: 0644]
tasks/main.yml

diff --git a/tasks/Debian.yml b/tasks/Debian.yml
new file mode 100644 (file)
index 0000000..6784e09
--- /dev/null
@@ -0,0 +1,24 @@
+---
+- apt_repository:
+    repo: 'ppa:openjdk-r/ppa'
+  become: true
+
+- name: Install Java 7 SDK
+  apt: name=openjdk-7-jdk state=present update_cache=yes
+  become: true
+
+- name: Install Java 8 SDK
+  apt: name=openjdk-8-jdk state=present update_cache=yes
+  become: true
+
+- name: Install Java 9 SDK
+  apt:
+    name: openjdk-9-jdk
+    state: present
+    update_cache: true
+    dpkg_options: 'force-overwrite'
+  become: true
+
+- name: Set Java path
+  set_fact:
+    java_path: /usr/lib/jvm/java-1.8.0-openjdk-amd64
diff --git a/tasks/RedHat.yml b/tasks/RedHat.yml
new file mode 100644 (file)
index 0000000..96d38a7
--- /dev/null
@@ -0,0 +1,27 @@
+---
+- name: Install all available Java versions
+  yum: name=java-*-openjdk-devel state=latest
+  become: true
+
+# We really want a released version of Java 9 but RedHat does not provide
+# official packages yet and this copr repo appears to be all that's available
+# at the moment.
+- name: Install Java 9 SDK
+  block:
+    - name: Add Java 9 SDK Copr repo
+      yum_repository:
+        name: omajid-openjdk9
+        description: Copr repo for openjdk9 owned by omajid
+        baseurl: https://copr-be.cloud.fedoraproject.org/results/omajid/openjdk9/epel-7-$basearch/
+        enabled: true
+        gpgcheck: true
+        gpgkey: https://copr-be.cloud.fedoraproject.org/results/omajid/openjdk9/pubkey.gpg
+        repo_gpgcheck: false
+        skip_if_unavailable: true
+    - name: Install Java 9 SDK
+      yum: name=java-9-openjdk-devel state=present
+  become: true
+
+- name: Set Java path
+  set_fact:
+    java_path: /usr/lib/jvm/java-1.8.0-openjdk
index 23b07ff..00ec25a 100644 (file)
@@ -1,2 +1,24 @@
 ---
-# tasks file for java-install
+- include_tasks: '{{item}}'
+  with_first_found:
+    - '{{ansible_distribution}}.yml'
+    - '{{ansible_os_family}}.yml'
+
+- name: Set Java 8 as default
+  block:
+    - name: Set java alternatives
+      alternatives:
+        name: java
+        link: /usr/bin/java
+        path: '{{java_path}}/bin/java'
+    - name: Set javac alternatives
+      alternatives:
+        name: javac
+        link: /usr/bin/javac
+        path: '{{java_path}}/bin/javac'
+    - name: Set java_sdk_openjdk alternatives
+      alternatives:
+        name: java_sdk_openjdk
+        link: /usr/lib/jvm/java-openjdk
+        path: '{{java_path}}/bin/java'
+  become: true