Defined Type: java::install_config

Defined in:
manifests/install_config.pp

Overview

Configures Java. It is intended to be called by java::java.

== Actions:

Sets up the default java according to the parameter java_default_version if it is not null.

Parameters:

  • java_version (Integer) (defaults to: $title)

    the java version. Possible values at this time are 6 and 7.

  • java_default_version (Optional[Integer])

    the java default version. Possible values at this time are 6 and 7. If different than undef it will be used to configure the alternative system.



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
# File 'manifests/install_config.pp', line 20

define java::install_config (
  Integer $java_version = $title,
  Optional[Integer] $java_default_version,
) {
  case $facts['os']['family'] {
    'Debian' : {
          $javapkg = "openjdk-${java_version}-jdk"
          $javadir = "/usr/lib/jvm/java-${java_version}-openjdk-${facts['os']['architecture']}/jre/bin/java"
          if $facts['os']['release'] in ['12.04', '14.04'] and $java_version == '8' {
            apt::ppa { 'ppa:openjdk-r/ppa': }
          }
    }
    'RedHat' : {
      $javapkg = "java-1.${java_version}.0-openjdk"
      $javadir = "/usr/lib/jvm/jre-1.${java_version}.0-openjdk.${facts['os']['architecture']}/bin/java"
    }
    default  : {
      fail("The ${module_name} module is not supported on an ${facts['os']['family']} distribution.")
    }
  }

  package { $javapkg:
    ensure => installed,
  }

  if $java_default_version != undef and $java_version == $java_default_version {
    exec { 'set_java':
      command => "/usr/sbin/update-alternatives --set java ${javadir}",
      unless  => "ls -l /etc/alternatives/java | grep ${javadir}",
    }
  }
}