Puppet Class: psick::oracle::prerequisites::users

Defined in:
manifests/oracle/prerequisites/users.pp

Overview

This class configures the users prerequisites for Oracle installation

The hash is merged with the eventual set of default groups.

Parameters:

  • has_asm (Boolean) (defaults to: false)

    Define if the oracle server will use ASM or not. Default: false. If true additional default groups are created.

  • users (Hash) (defaults to: {})

    Hash of users to create (passed to the users resource) for oracle installation and usage. Default is empty. The hash is merged with the eventual set of default users.

  • groups (Hash) (defaults to: {})

    Hash of groups to create (passed to the groups resource) for oracle installation and usage. Default is empty.

  • use_defauls

    Define if to create a default set of oracle users and groups. Default is true. If false and no users or groups are defined, this class does nothing

  • use_defaults (Boolean) (defaults to: true)


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
# File 'manifests/oracle/prerequisites/users.pp', line 16

class psick::oracle::prerequisites::users (

  Boolean $has_asm                   = false,
  Hash $groups                    = {},
  Hash $users                     = {},
  Boolean $use_defaults           = true,

) {

  $default_groups = {
    oinstall => {
      gid => '700',
    },
    dba => {
      gid => '701',
    },
    oper => {
      gid => '702',
    },
    backupdba => {
      gid => '703',
    },
    dgdba => {
      gid => '704',
    },
    kmdba => {
      gid => '705',
    },
  }

  $asm_groups = $has_asm ? {
    true => {
      'asmdba' => {
        'gid' => '706',
      },
      'asmadmin' => {
        'gid' => '707',
      },
      'asmoper' => {
        'gid' => '708',
      },
    },
    false => { },
  }

  $all_groups = $use_defaults ? {
    true  => $default_groups + $asm_groups + $groups,
    false => $groups,
  }

  $all_groups.each | $k , $v | {
    group { $k:
      * => $v,
    }
  }


  $default_users = {
    gridora => {
      uid     => '700',
      gid     => '700',
      groups  => $has_asm ? {
        true  => [ 'asmdba','asmadmin','asmoper' ],
        false => [ 'dba' ],
      },
      shell   => '/bin/bash',
      home    => '/home/gridora',
      require => Group['oinstall'],
      managehome => true,
    },
    oracle => {
      uid     => '701',
      gid     => '700',
      groups  => $has_asm ? {
        true  => [ 'dba','oper','backupdba','dgdba','kmdba','asmdba' ],
        false => [ 'dba','oper','backupdba','dgdba','kmdba' ],
      },
      shell   => '/bin/bash',
      home    => '/home/gridora',
      require => Group['oinstall'],
      managehome => true,
    },
  }

  $all_users = $use_defaults ? {
    true  => $default_users + $users,
    false => $users,
  }

  $all_users.each | $k , $v | {
    user { $k:
      * => $v,
    }
  }

}