Skip to content
Merged
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
2 changes: 1 addition & 1 deletion defaults/redhat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# Default variables for Redhat-based Linux distributions.
#

oracle_java_home: "/usr/java/jdk1.{{ oracle_java_version }}.0_{{ oracle_java_version_update }}"
oracle_java_home: "/usr/java/jdk-{{ oracle_java_version }}"

oracle_java_os_supported: yes
oracle_java_rpm_validate_certs: yes
Expand Down
23 changes: 16 additions & 7 deletions tasks/redhat/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,18 @@
register: result

- name: determine latest java download page and version
set_fact: latest_java_page_and_version="{{ (result.content.replace('\n','')|regex_replace('.*(/technetwork/java/javase/downloads/jdk(\d+)-downloads.*?.html).*', 'http://www.oracle.com/\1\n\2')).split('\n') }}"
set_fact: latest_java_page_and_version="{{ (result.content.replace('\n','')|regex_replace('.*(/technetwork/java/javase/downloads/jdk(9)-downloads.*?.html).*', 'http://www.oracle.com/\1\n\2')).split('\n') }}"

- name: show latest java page and version page URL
debug: msg="{{ latest_java_page_and_version }}"

- name: define download page URL based on latest version
set_fact: download_page_url="{{ latest_java_page_and_version[0] }}"
when: latest_java_page_and_version[1] | version_compare(oracle_java_version,'=')

- block:

- name: get lastest JDK rpm url
- name: get latest JDK rpm url
uri: url="{{ result.content.replace('\n','')|regex_replace('.*(/technetwork/java/javase/archive-.*?.html).*','http://www.oracle.com/\1') }}"
return_content=yes
register: result
Expand All @@ -32,17 +35,20 @@
- name: show download page URL
debug: msg="{{ download_page_url }}"

- name: get lastest JDK rpm url
- name: get latest JDK rpm url
uri: url="{{ download_page_url }}"
return_content=yes
register: result

- name: set oracle_java_rpm_url
set_fact: oracle_java_rpm_url="{{ result.content|regex_search('https?://download.oracle.com/.*?/jdk-\w+-linux-' + oracle_java_ansible_arch_mappings[ansible_architecture] + '.rpm') }}"
set_fact: oracle_java_rpm_url="{{ result.content|regex_search('https?://download.oracle.com/.*?/jdk-.*(-|_)linux-' + oracle_java_ansible_arch_mappings[ansible_architecture] + '(_bin)?.rpm') }}"

- name: show rpm URL
debug: msg="{{ oracle_java_rpm_url }}"

- name: set some variables
set_fact: oracle_java_rpm_filename="{{ oracle_java_rpm_url | basename }}"
oracle_java_version="{{ oracle_java_rpm_url | basename|regex_replace('jdk-(\d+)u(\d+)-linux.*','\1') }}"
oracle_java_version="{{ oracle_java_rpm_url | basename|regex_replace('jdk-(.*)(-|_)linux.*','\1') }}"
oracle_java_version_update="{{ oracle_java_rpm_url | basename|regex_replace('jdk-(\d+)u(\d+)-linux.*','\2') }}"

- debug: msg="Downloading java {{ oracle_java_version }}u{{ oracle_java_version_update }} to {{ oracle_java_rpm_filename }} from {{ oracle_java_rpm_url }}"
Expand All @@ -64,14 +70,17 @@
become: yes
tags: [ installation ]

- name: show oracle version
debug: msg="{{ oracle_java_version }}"

- name: set Java version as default
alternatives:
name="{{ item.exe }}"
link="/usr/bin/{{ item.exe }}"
path="{{ item.path }}/{{ item.exe }}"
with_items:
- { path: "{{ oracle_java_home }}/jre/bin", exe: 'java' }
- { path: "{{ oracle_java_home }}/jre/bin", exe: 'keytool' }
- { path: "{{ oracle_java_home }}/bin", exe: 'java' }
- { path: "{{ oracle_java_home }}/bin", exe: 'keytool' }
- { path: "{{ oracle_java_home }}/bin", exe: 'javac' }
- { path: "{{ oracle_java_home }}/bin", exe: 'javadoc' }
become: yes
Expand Down