Skip to content

Commit 52c6226

Browse files
authored
Merge pull request #33 from ansiblebit/pr32
continuation of PR #32
2 parents 87a7377 + c7d99ca commit 52c6226

File tree

11 files changed

+69
-50
lines changed

11 files changed

+69
-50
lines changed

.travis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ sudo: yes
33

44
matrix:
55
include:
6+
- python: 2.7
7+
env: TOXENV=py27-ansible22
68
- python: 2.7
79
env: TOXENV=py27-ansible21
810
- python: 2.7
911
env: TOXENV=py27-ansible20
10-
- python: 2.7
11-
env: TOXENV=py27-ansible19
1212

1313
install:
1414
- pip install tox

README.md

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ DISCLAIMER: usage of any version of this role implies you have accepted the
3131

3232
## Requirements
3333

34-
- ansible >= 1.9.x
34+
- ansible >= 2.x
3535

3636

3737
# Facts
@@ -46,11 +46,11 @@ DISCLAIMER: usage of any version of this role implies you have accepted the
4646
| variable | default | description |
4747
|--:|:-:|:--|
4848
| debug | undefined | flag to make role more verbose. |
49-
| oracle_java_set_as_default | no | make the newly installed Java the default runtime environment. |
49+
| oracle_java_set_as_default | yes | make the newly installed Java the default runtime environment. |
5050
| oracle_java_state | latest | the package state (see Ansible apt module for more information). |
5151
| oracle_java_version | 8 | the Oracle JDK version to be installed. |
52-
| oracle_java_version_update | 74 | the Oracle JDK version update. |
53-
| oracle_java_version_build | 02 | the Oracle JDK version update build number. |
52+
| oracle_java_version_update | 121 | the Oracle JDK version update. |
53+
| oracle_java_version_build | 13 | the Oracle JDK version update build number. |
5454
| oracle_java_version_string | 1.{{ oracle_java_version }}.0_u{{ oracle_java_version_update }} | the Java version string to verify installation against. |
5555
| oracle_java_os_supported | - | role internal variable to check if a OS family is supported or not. |
5656

@@ -59,7 +59,6 @@ DISCLAIMER: usage of any version of this role implies you have accepted the
5959

6060
| variable | default | description |
6161
|--:|:-:|:--|
62-
| launchpad_ppa_webupd8_cache_valid_time | 3600 | the amount of time in seconds the apt cache is valid. |
6362
| oracle_java_cache_valid_time | 3600 | the amount of time in seconds the apt cache is valid. |
6463
| oracle_java_state | latest | the package state (see Ansible apt module for more information). |
6564
| oracle_java_home | /usr/lib/jvm/java-{{ oracle_java_version }}-oracle | the location of the Java home directory. |
@@ -75,18 +74,11 @@ DISCLAIMER: usage of any version of this role implies you have accepted the
7574
| 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. |
7675

7776

78-
## Dependencies
79-
80-
For Debian and Ubuntu this role depends on:
81-
82-
- ansiblebit.launchpad-ppa-webupd8
83-
84-
8577
## Playbooks
8678

8779
- hosts: servers
8880
roles:
89-
- { role: ansiblebit.oracle-java,
90-
oracle_java_set_as_default: yes }
81+
- role: ansiblebit.oracle-java,
82+
oracle_java_set_as_default: yes
9183

9284
Use `--skip-tags=debug` if you want to suppress debug information.

defaults/main.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66

77
oracle_java_dir_source: '/usr/local/src'
88

9-
oracle_java_set_as_default: no
9+
oracle_java_set_as_default: yes
1010

1111
oracle_java_version: 8
12-
oracle_java_version_update: 74
13-
oracle_java_version_build: '02'
12+
oracle_java_version_update: 121
13+
oracle_java_version_build: 13
1414
oracle_java_version_string: "1.{{ oracle_java_version }}.0_{{ oracle_java_version_update }}"

meta/main.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ galaxy_info:
99
description: Role to install Oracle Java.
1010
company: ansiblebit.org
1111
license: BSD
12-
min_ansible_version: 1.9.4
12+
min_ansible_version: 2.0
1313
platforms:
1414
- name: CentOS
1515
versions:
@@ -37,7 +37,3 @@ galaxy_info:
3737
- development
3838
- java
3939
- system
40-
41-
dependencies:
42-
- role: ansiblebit.launchpad-ppa-webupd8
43-
when: ansible_distribution | lower == 'debian' or ansible_distribution | lower == 'ubuntu'

requirements.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +0,0 @@
1-
- src: ansiblebit.launchpad-ppa-webupd8
2-
version: 4.14.0

tasks/check_environment.yml

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,24 @@
99
- name: determine if Java is already installed
1010
shell: which java
1111
register: oracle_java_task_installed
12-
ignore_errors: yes
13-
changed_when: False
12+
changed_when: "{{ oracle_java_task_installed.rc != 0 }}"
13+
failed_when: no
1414
# oracle_java_installed.rc == 0 : installed
1515
# oracle_java_installed.rc == 1 : not installed
1616

17-
1817
- name: set fact oracle_java_installed
1918
set_fact:
20-
oracle_java_installed={{ oracle_java_task_installed.rc == 0 }}
21-
when: oracle_java_task_installed is defined and oracle_java_task_installed.rc is defined
22-
changed_when: False
19+
oracle_java_installed={{ not oracle_java_task_installed.changed }}
2320

2421
- name: determine which Java version is installed
25-
shell: java -version 2>&1 | head -n 1 | awk '{ print $3 }' | awk -F '"' '{ print $2 }'
26-
when: oracle_java_installed is defined
22+
shell: java -version
23+
when: oracle_java_installed
2724
register: oracle_java_task_version
2825
changed_when: False
2926

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

tasks/debian/main.yml

Lines changed: 42 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,48 @@
44
# Task file to install Oracle Java Development Kit in a system with a Debian based Linux distribution.
55
#
66

7-
- name: accept Oracle license
8-
shell: "echo oracle-java{{ oracle_java_version }}-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections"
9-
changed_when: no
7+
- block:
8+
- name: debian | ubuntu | add java ppa repo
9+
apt_repository:
10+
repo=ppa:webupd8team/java
11+
state=present
12+
become: yes
13+
14+
- name: debian | ubuntu | check if oracle license is already accepted
15+
shell: debconf-get-selections |grep "oracle-java{{ oracle_java_version }}-installer\sshared/accepted-oracle-license-v1-1\sboolean\strue"
16+
register: licence_not_accepted
17+
failed_when: false
18+
changed_when: licence_not_accepted.rc != 0
19+
become: yes
20+
21+
when: "{{ ansible_distribution == 'Ubuntu' }}"
22+
23+
- block:
24+
- name: debian | ensure the webupd8 launchpad apt repository key is present
25+
apt_key:
26+
id=0xC2518248EEA14886
27+
keyserver=keyserver.ubuntu.com
28+
state=present
29+
become: yes
30+
31+
- name: debian | ensure the webupd8 launchpad apt repository is present
32+
apt_repository:
33+
repo="{{ item }} http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main"
34+
update_cache=yes
35+
state=present
36+
with_items:
37+
- deb
38+
- deb-src
39+
become: yes
40+
41+
when: "{{ ansible_distribution == 'Debian' }}"
42+
43+
- name: debian | set license as accepted
44+
debconf: name='oracle-java{{ oracle_java_version }}-installer' question='shared/accepted-oracle-license-v1-1' value='true' vtype='select'
45+
when: "{{ licence_not_accepted|changed or licence_not_accepted|skipped }}"
1046
become: yes
1147

12-
- name: ensure Java is installed
48+
- name: debian | ensure Java is installed
1349
apt:
1450
name="oracle-java{{ oracle_java_version }}-installer"
1551
state={{ oracle_java_state }}
@@ -18,14 +54,14 @@
1854
register: oracle_java_task_apt_install
1955
become: yes
2056

21-
- name: set Java version as default
57+
- name: debian | set Java version as default
2258
apt:
2359
name="oracle-java{{ oracle_java_version }}-set-default"
2460
state=latest
2561
register: oracle_java_task_set_default
2662
when: oracle_java_set_as_default
2763
become: yes
2864

29-
- name: in case there were changes, check host environment again
65+
- name: debian | in case there were changes, check host environment again
3066
include: ../check_environment.yml
3167
when: oracle_java_task_apt_install|changed or oracle_java_task_set_default|changed

tasks/main.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
- "../defaults/{{ ansible_distribution | lower }}-{{ ansible_distribution_version | lower }}.yml"
1616
- "../defaults/{{ ansible_distribution | lower }}.yml"
1717
- "../defaults/{{ ansible_os_family | lower }}.yml"
18+
tags: installation
1819

1920
- include: debug.yml
2021
when: debug | default(false)

tasks/redhat/main.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
#
66

77
- name: download Java RPM
8-
shell:
9-
"curl -L -H 'Cookie:oraclelicense=accept-securebackup-cookie' -o {{ oracle_java_dir_source }}/{{ oracle_java_rpm_filename }} {{ oracle_java_rpm_url }}"
10-
args:
11-
creates: "{{ oracle_java_dir_source }}/{{ oracle_java_rpm_filename }}"
8+
get_url:
9+
headers: 'Cookie:oraclelicense=accept-securebackup-cookie'
10+
dest: "{{ oracle_java_dir_source }}/{{ oracle_java_rpm_filename }}"
11+
url: "{{ oracle_java_rpm_url }}"
1212
register: oracle_java_task_rpm_download
1313
become: yes
1414
tags:

tests/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
vars:
1919
debug: yes
2020
test_java_version: 8
21-
test_java_version_update: 111
22-
test_java_version_build: 14
21+
test_java_version_update: 121
22+
test_java_version_build: 13
2323

2424
roles:
2525
- role: oracle-java

0 commit comments

Comments
 (0)