Puppet Class: cassandra::java
- Inherits:
- cassandra::params
- Defined in:
- manifests/java.pp
Overview
A class to install Java and JNA packages.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'manifests/java.pp', line 17
class cassandra::java (
$aptkey = undef,
$aptsource = undef,
$jna_ensure = present,
$jna_package_name = $cassandra::params::jna_package_name,
$package_ensure = present,
$package_name = $cassandra::params::java_package,
$yumrepo = undef,
) inherits cassandra::params {
if $facts['os']['family'] == 'RedHat' and $yumrepo != undef {
$yumrepo_defaults = {
'before' => Package[$package_name],
}
create_resources(yumrepo, $yumrepo, $yumrepo_defaults)
}
if $facts['os']['family'] == 'Debian' {
if $aptkey != undef {
$aptkey_defaults = {
'before' => Package[$package_name],
}
include apt
create_resources(apt::key, $aptkey, $aptkey_defaults)
}
if $aptsource != undef {
exec { 'cassandra::java::apt_update':
refreshonly => true,
command => '/bin/true',
require => Exec['apt_update'],
before => Package[$package_name],
}
$aptsource_defaults = {
'notify' => Exec['cassandra::java::apt_update'],
}
create_resources(apt::source, $aptsource, $aptsource_defaults)
}
}
package { $package_name:
ensure => $package_ensure,
}
package { $jna_package_name:
ensure => $jna_ensure,
}
}
|