Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 2 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@ DISCLAIMER: usage of any version of this role implies you have accepted the

| variable | default | description |
|--:|:-:|:--|
| launchpad_ppa_webupd8_cache_valid_time | 3600 | the amount of time in seconds the apt cache is valid. |
| oracle_java_cache_valid_time | 3600 | the amount of time in seconds the apt cache is valid. |
| oracle_java_state | latest | the package state (see Ansible apt module for more information). |
| oracle_java_home | /usr/lib/jvm/java-{{ oracle_java_version }}-oracle | the location of the Java home directory. |
Expand All @@ -75,18 +74,11 @@ DISCLAIMER: usage of any version of this role implies you have accepted the
| oracle_java_rpm_url | http://download.oracle.com/otn-pub/java/jdk/{{ oracle_java_version }}u{{ oracle_java_version_update }}-b{{ oracle_java_version_build }}/{{ oracle_java_rpm_filename }} | the URL where the RPM can be downloaded from. |


## Dependencies

For Debian and Ubuntu this role depends on:

- ansiblebit.launchpad-ppa-webupd8


## Playbooks

- hosts: servers
roles:
- { role: ansiblebit.oracle-java,
oracle_java_set_as_default: yes }
- role: ansiblebit.oracle-java,
oracle_java_set_as_default: yes

Use `--skip-tags=debug` if you want to suppress debug information.
2 changes: 1 addition & 1 deletion defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

oracle_java_dir_source: '/usr/local/src'

oracle_java_set_as_default: no
oracle_java_set_as_default: yes

oracle_java_version: 8
oracle_java_version_update: 74
Expand Down
15 changes: 6 additions & 9 deletions tasks/check_environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,27 +9,24 @@
- name: determine if Java is already installed
shell: which java
register: oracle_java_task_installed
ignore_errors: yes
changed_when: False
changed_when: "{{ oracle_java_task_installed.rc != 0 }}"
failed_when: no
# oracle_java_installed.rc == 0 : installed
# oracle_java_installed.rc == 1 : not installed


- name: set fact oracle_java_installed
set_fact:
oracle_java_installed={{ oracle_java_task_installed.rc == 0 }}
when: oracle_java_task_installed is defined and oracle_java_task_installed.rc is defined
changed_when: False
oracle_java_installed={{ not oracle_java_task_installed.changed }}

- name: determine which Java version is installed
shell: java -version 2>&1 | head -n 1 | awk '{ print $3 }' | awk -F '"' '{ print $2 }'
when: oracle_java_installed is defined
shell: java -version
when: oracle_java_installed
register: oracle_java_task_version
changed_when: False

- name: set fact oracle_java_installed_version
set_fact:
oracle_java_version_installed={{ oracle_java_task_version.stdout }}
oracle_java_version_installed="{{ oracle_java_task_version.stderr.split('\n')[0]|regex_replace('.*\"(.*)\"','\\1') }}"
when: oracle_java_task_version is defined and oracle_java_task_version.stdout is defined
changed_when: False

Expand Down
35 changes: 31 additions & 4 deletions tasks/debian/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,37 @@
# Task file to install Oracle Java Development Kit in a system with a Debian based Linux distribution.
#

- name: accept Oracle license
shell: "echo oracle-java{{ oracle_java_version }}-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections"
changed_when: no
become: yes
- name: add java ppa repo
apt_repository: repo=ppa:webupd8team/java state=present update_cache=yes
when: "{{ ansible_distribution == 'Ubuntu' }}"

- block:
- name: ensure the webupd8 launchpad apt repository key is present
apt_key:
id=0xC2518248EEA14886
keyserver=keyserver.ubuntu.com
state=present

- name: ensure the webupd8 launchpad apt repository is present
apt_repository:
repo='{{ item }} http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main'
update_cache=yes
state=present
with_items:
- deb
- deb-src
when: "{{ ansible_distribution == 'Debian' }}"

- name: Check if oracle license is already accepted
shell: debconf-get-selections |grep "oracle-java{{ oracle_java_version }}-installer\sshared/accepted-oracle-license-v1-1\sboolean\strue"
register: licence_not_accepted
failed_when: false
changed_when: licence_not_accepted.rc != 0
when: "{{ ansible_distribution == 'Ubuntu' }}"

- name: Set license as accepted
debconf: name='oracle-java{{ oracle_java_version }}-installer' question='shared/accepted-oracle-license-v1-1' value='true' vtype='select'
when: "{{ licence_not_accepted|changed or licence_not_accepted|skipped }}"

- name: ensure Java is installed
apt:
Expand Down
1 change: 1 addition & 0 deletions tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
- "../defaults/{{ ansible_distribution | lower }}-{{ ansible_distribution_version | lower }}.yml"
- "../defaults/{{ ansible_distribution | lower }}.yml"
- "../defaults/{{ ansible_os_family | lower }}.yml"
tags: installation

- include: debug.yml
when: debug | default(false)
Expand Down
8 changes: 4 additions & 4 deletions tasks/redhat/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
#

- name: download Java RPM
shell:
"curl -L -H 'Cookie:oraclelicense=accept-securebackup-cookie' -o {{ oracle_java_dir_source }}/{{ oracle_java_rpm_filename }} {{ oracle_java_rpm_url }}"
args:
creates: "{{ oracle_java_dir_source }}/{{ oracle_java_rpm_filename }}"
get_url:
headers: 'Cookie:oraclelicense=accept-securebackup-cookie'
dest: "{{ oracle_java_dir_source }}/{{ oracle_java_rpm_filename }}"
url: "{{ oracle_java_rpm_url }}"
register: oracle_java_task_rpm_download
become: yes
tags:
Expand Down