Puppet Class: oraclejava::jdk7

Defined in:
manifests/jdk7.pp

Overview

Parameters:

  • java (Any) (defaults to: 'jdk-7u79')
  • java_loc (Any) (defaults to: '/usr/java')
  • java_dir (Any) (defaults to: 'jdk1.7.0_79')
  • download_url (Any) (defaults to: 'http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz')
  • download_dir (Any) (defaults to: '/tmp')
  • wget_opts (Any) (defaults to: '')
  • cookie (Any) (defaults to: 'oraclelicense=accept-securebackup-cookie')


7
8
9
10
11
12
13
14
15
16
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# File 'manifests/jdk7.pp', line 7

class oraclejava::jdk7 (
  $java          = 'jdk-7u79',
  $java_loc      = '/usr/java',
  $java_dir      = 'jdk1.7.0_79',
  $download_url  = 'http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz',
  $download_dir  = '/tmp',
  $wget_opts     = '',
  $cookie        = 'oraclelicense=accept-securebackup-cookie'
)
{

  file { $java_loc:
    ensure => directory,
    owner  => root,
    group  => root,
    mode   => '0755',
  }

  exec {'remove_download_oracle_jdk7':
    command => "rm -f ${download_dir}/${java}-linux-x64.tar.gz?*",
    cwd     => $download_dir,
    require => File[$java_loc]
  }

  exec { 'download_oracle_jdk7':
    command => "wget ${wget_opts} --no-cookies --no-check-certificate --header \"Cookie: ${cookie}\" \"${download_url}\"",
    creates => "${download_dir}/${java}-linux-x64.tar.gz",
    cwd     => $download_dir,
    timeout => 0,
    require => Exec['remove_download_oracle_jdk7']
  }

  exec { 'rename_oracle_jdk7':
    command => "mv ${java}-linux-x64.tar.gz?* ${java}-linux-x64.tar.gz",
    creates => "${download_dir}/${java}-linux-x64.tar.gz",
    cwd     => $download_dir,
    require => Exec['download_oracle_jdk7']
  }

  file { "${download_dir}/${java}-linux-x64.tar.gz":
    ensure  => present,
    owner   => root,
    group   => root,
    mode    => '0750',
    require => Exec['rename_oracle_jdk7']
  }

  exec { 'explode_oracle_jdk7':
    command => "tar xvf ${java}-linux-x64.tar.gz",
    creates => "${download_dir}/${java_dir}",
    cwd     => $download_dir,
    require => [File["${download_dir}/${java}-linux-x64.tar.gz"],File[$java_loc]]
  }

  file { "${java_loc}/${java_dir}":
    ensure  => present,
    owner   => root,
    group   => root,
    mode    => '0755',
    source  => "${download_dir}/${java_dir}",
    recurse => true,
    require => Exec['explode_oracle_jdk7']
  }

  exec { 'link_jar7':
    command => "ln -s ${java_loc}/${java_dir}/bin/jar /usr/bin/jar",
    creates => '/usr/bin/jar',
    cwd     => '/usr/bin',
    require => File["${java_loc}/${java_dir}"]
  }

  exec { 'link_java7':
    command => "ln -s ${java_loc}/${java_dir}/bin/java /usr/bin/java",
    creates => '/usr/bin/java',
    cwd     => '/usr/bin',
    require => File["${java_loc}/${java_dir}"]
  }

  exec { 'link_javac7':
    command => "ln -s ${java_loc}/${java_dir}/bin/javac /usr/bin/javac",
    creates => '/usr/bin/javac',
    cwd     => '/usr/bin',
    require => File["${java_loc}/${java_dir}"]
  }

  exec { 'link_javadoc7':
    command => "ln -s ${java_loc}/${java_dir}/bin/javadoc /usr/bin/javadoc",
    creates => '/usr/bin/javadoc',
    cwd     => '/usr/bin',
    require => File["${java_loc}/${java_dir}"]
  }

  exec { 'link_javaws7':
    command => "ln -s ${java_loc}/${java_dir}/bin/javaws /usr/bin/javaws",
    creates => '/usr/bin/javaws',
    cwd     => '/usr/bin',
    require => File["${java_loc}/${java_dir}"]
  }

  exec { 'link_jcontrol7':
    command => "ln -s ${java_loc}/${java_dir}/bin/jcontrol /usr/bin/jcontrol",
    creates => '/usr/bin/jcontrol',
    cwd     => '/usr/bin',
    require => File["${java_loc}/${java_dir}"]
  }

}