Puppet Class: websphere

Defined in:
manifests/init.pp

Overview

Base class for websphere.

Parameters:

  • base_dir (Any) (defaults to: '/opt/IBM')
  • user (Any) (defaults to: 'websphere')
  • group (Any) (defaults to: 'websphere')
  • user_home (Any) (defaults to: '/opt/IBM')
  • manage_user (Any) (defaults to: true)
  • manage_group (Any) (defaults to: true)


4
5
6
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
# File 'manifests/init.pp', line 4

class websphere (
  $base_dir     = '/opt/IBM',
  $user         = 'websphere',
  $group        = 'websphere',
  $user_home    = '/opt/IBM',
  $manage_user  = true,
  $manage_group = true,
) {

  if $manage_user {
    user { $user:
      ensure => 'present',
      home   => $user_home,
      gid    => $group,
    }
  }

  if $manage_group {
    group { $group:
      ensure => 'present',
    }
  }

  # Seems some of these tools expect /opt/IBM and some data directories there,
  # even when the installation directory is different.  Manage these for good
  # measure.
  $java_prefs = [
    '/opt/IBM',
    "${base_dir}/.java",
    "${base_dir}/.java/systemPrefs",
    "${base_dir}/.java/userPrefs",
    "${base_dir}/workspace",
    '/opt/IBM/.java',
    '/opt/IBM/.java/systemPrefs',
    '/opt/IBM/.java/userPrefs',
    '/opt/IBM/workspace',
  ]

  file { $java_prefs:
    ensure => 'directory',
    owner  => $user,
    group  => $group,
  }

  ## concat is used to populate a file for facter
  concat { '/etc/puppetlabs/facter/facts.d/websphere.yaml':
    ensure => 'present',
  }
  concat::fragment { 'websphere_facts_header':
    target  => '/etc/puppetlabs/facter/facts.d/websphere.yaml',
    order   => '01',
    content => "---\nwebsphere_base_dir: ${base_dir}\n",
  }

}