Skip to content

Commit cf2bb47

Browse files
authored
ansible: update Java on RHEL machines (#4308)
Update Java on RHEL 8 machines to Java 21. Update Java on RHEL 9 machines to Java 25. Add task to remove old versions of Java. Remove obsolete entries for centos and rhel7. Refs: #4304 Signed-off-by: Richard Lau <[email protected]>
1 parent dd8b81a commit cf2bb47

2 files changed

Lines changed: 25 additions & 4 deletions

File tree

ansible/roles/java-base/tasks/main.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,20 @@
3535
name: "{{ java_package_name }}"
3636
state: present
3737

38+
- name: uninstall previous java
39+
when:
40+
- previous_java_package_name is defined and previous_java_package_name != ""
41+
- not os|startswith("zos")
42+
- not os|startswith("macos")
43+
notify:
44+
- package updated
45+
- restart Jenkins
46+
package:
47+
name: "{{ previous_java_package_name }}"
48+
state: "absent"
49+
# Package manager mapping in ansible/roles/package-upgrade/vars/main.yml.
50+
use: "{{ os|match_key(pm)|default(omit) }}"
51+
3852
# Uses the AdoptOpenJDK API https://github.com/adoptopenjdk/openjdk-api-v3
3953
# to discover the most recent release for the given adoptopenjdk_version and
4054
# platform.

ansible/roles/java-base/vars/main.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,29 @@
44
# different os'es have different names for java
55
#
66

7+
# When updating Java version, put the old version in the `previous_packages`
8+
# map below so it can be removed.
79
packages: {
8-
'centos': 'java-11-openjdk-headless',
910
'debian12': 'openjdk-17-jre-headless',
1011
'debian13': 'openjdk-25-jre-headless',
1112
'fedora42': 'java-21-openjdk-headless',
1213
'fedora43': 'java-25-openjdk-headless',
1314
'freebsd': 'openjdk17-jre',
1415
'macos': 'temurin17',
15-
'rhel7': 'java-11-openjdk',
16-
'rhel8': 'java-17-openjdk',
17-
'rhel9': 'java-17-openjdk',
16+
'rhel8': 'java-21-openjdk-headless',
17+
'rhel9': 'java-25-openjdk-headless',
1818
'smartos': 'openjdk17',
1919
'ubuntu': 'openjdk-25-jre-headless',
2020
}
2121

22+
previous_packages: {
23+
'rhel8': 'java-17-openjdk-headless',
24+
'rhel9': 'java-17-openjdk-headless',
25+
'ubuntu': 'openjdk-17-jre-headless',
26+
}
27+
2228
java_package_name: "{{ packages[os]|default(packages[os|stripversion])|default(omit) }}"
29+
previous_java_package_name: "{{ previous_packages[os]|default(previous_packages[os|stripversion])|default(omit) }}"
2330

2431
# Add os_arch combinations here that should install and use AdoptOpenJDK
2532
# binaries. Override any variables in the dictionary.

0 commit comments

Comments
 (0)