diff --git a/manifests/params.pp b/manifests/params.pp index fa352809..deb1d6b4 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -11,13 +11,22 @@ 'AlmaLinux', 'Rocky', 'RedHat', 'CentOS', 'OracleLinux', 'Scientific', 'OEL', 'SLC', 'CloudLinux': { # See PR#160 / c8e46b5 for why >= 6.3 < 7.1 if (versioncmp($facts['os']['release']['full'], '7.1') < 0) { - $openjdk = '1.7.0' + $openjdk = '1.7.0' + $jdk_package = "java-${openjdk}-openjdk-devel" + $jre_package = "java-${openjdk}-openjdk" + $java_home = "/usr/lib/jvm/java-${openjdk}/" + } elsif (versioncmp($facts['os']['release']['full'], '10') >= 0) { + # RHEL 10 dropped java-1.8.0-openjdk; default to the current LTS. + $openjdk = '21' + $jdk_package = "java-${openjdk}-openjdk-devel" + $jre_package = "java-${openjdk}-openjdk" + $java_home = "/usr/lib/jvm/java-${openjdk}-openjdk/" } else { - $openjdk = '1.8.0' + $openjdk = '1.8.0' + $jdk_package = "java-${openjdk}-openjdk-devel" + $jre_package = "java-${openjdk}-openjdk" + $java_home = "/usr/lib/jvm/java-${openjdk}/" } - $jdk_package = "java-${openjdk}-openjdk-devel" - $jre_package = "java-${openjdk}-openjdk" - $java_home = "/usr/lib/jvm/java-${openjdk}/" } 'Fedora': { if (versioncmp($facts['os']['release']['full'], '21') < 0) { diff --git a/spec/classes/java_spec.rb b/spec/classes/java_spec.rb index dd51a098..83537753 100644 --- a/spec/classes/java_spec.rb +++ b/spec/classes/java_spec.rb @@ -10,6 +10,13 @@ it { is_expected.to contain_file_line('java-home-environment').with_line('JAVA_HOME=/usr/lib/jvm/java-1.8.0/') } end + context 'when selecting openjdk for RedHat 10' do + let(:facts) { { os: { family: 'RedHat', name: 'RedHat', release: { full: '10.0', major: '10' }, architecture: 'x86_64' } } } + + it { is_expected.to contain_package('java').with_name('java-21-openjdk-devel') } + it { is_expected.to contain_file_line('java-home-environment').with_line('JAVA_HOME=/usr/lib/jvm/java-21-openjdk/') } + end + context 'on Debian Buster (10.0)' do let(:facts) { { os: { family: 'Debian', name: 'Debian', lsb: { distcodename: 'buster' }, release: { major: '10' }, architecture: 'amd64' } } }