Ensures that managing Java in Ubuntu 14.04 is effective

Change-Id: I7e540069850138cd1c6c9bda1f8c0f174058ef5b
This commit is contained in:
Alejandro Andreu
2016-07-12 18:24:43 +02:00
parent 9e9bb77301
commit 689d27d060
2 changed files with 39 additions and 5 deletions

View File

@@ -39,12 +39,47 @@ class midonet::agent::install (
$manage_java = false,
) {
if $manage_java {
class { 'java': distribution => 'jre' }
case $::osfamily {
'Debian': {
include apt
if $::lsbdistrelease == '16.04' {
# Placeholder so the default case does not fail
}
elsif $::lsbdistrelease == '14.04' {
package { 'software-properties-common': ensure => installed }
apt::ppa { 'ppa:openjdk-r/ppa':
ensure => present,
require => Package['software-properties-common'],
before => Package[$package_name],
}
}
else {
fail("Can't manage Java on ${::lsbdistid} ${::lsbdistrelease}")
}
}
'RedHat': {
# Placeholder so the default case does not fail
}
default: {
fail("Java cannot be managed on ${::osfamily}-based systems")
}
}
}
package { $package_name:
ensure => $package_ensure,
require => Class['java']
case $::osfamily {
'Debian': {
package { $package_name:
ensure => $package_ensure,
require => Exec['apt_update']
}
}
'RedHat': {
package { $package_name: ensure => $package_ensure }
}
default: {
fail("Midonet agent cannot be installed on ${::osfamily}-based systems")
}
}
}

View File

@@ -28,7 +28,6 @@ describe 'midonet::agent::install' do
:lsbdistcodename => 'xenial',
}
end
it { is_expected.to contain_class('java').with_distribution('jre')}
it { is_expected.to contain_package('midolman').with_ensure('present') }
end
end