Puppet Class: webmin::usermin_pkg

Inherits:
webmin
Defined in:
manifests/usermin_pkg.pp

Overview

Parameters:

  • usermin_port (Any) (defaults to: $webmin::usermin_port)
  • ensure (Any) (defaults to: $webmin::ensure)
  • usermin (Any) (defaults to: $webmin::usermin)
  • ssl (Any) (defaults to: $webmin::ssl)
  • bind_ip (Any) (defaults to: $webmin::bind_ip)


1
2
3
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
59
60
61
62
63
64
65
66
67
# File 'manifests/usermin_pkg.pp', line 1

class webmin::usermin_pkg (
  $usermin_port = $webmin::usermin_port,
  $ensure       = $webmin::ensure,
  $usermin      = $webmin::usermin,
  $ssl          = $webmin::ssl,
  $bind_ip      = $webmin::bind_ip,
  ) inherits webmin {
  if ( $usermin == 'enable' ) {
    package { 'usermin':
      ensure  => $ensure,
    }
    file { '/usr/share/augeas/lenses/dist/tests/test_usermin.aug':
      ensure => present,
      owner  => '0',
      group  => '0',
      mode   => '0644',
      source => 'puppet:///modules/webmin/test_usermin.aug',
      before => Augeas['usermin_miniserv'],
    }
    file { '/usr/share/augeas/lenses/dist/usermin.aug':
      ensure => present,
      owner  => '0',
      group  => '0',
      mode   => '0644',
      source => 'puppet:///modules/webmin/usermin.aug',
      before => Augeas['usermin_miniserv'],
    }
    if ( $bind_ip != 'UNSET' ) { 
      $changes = [
        "set ssl $ssl",
        "set port $usermin_port",
        "rm listen",
        "set bind $bind_ip",
      ]
    } else {
      $changes = [
        "set ssl $ssl",
        "set port $usermin_port",
        "set listen $usermin_port",
        "rm bind",
      ]
    }
    augeas { 'usermin_miniserv':
      context => "/files/etc/usermin/miniserv.conf",
      changes => $changes,
      notify  => Service['usermin'],
      require => Package['usermin'],
    }
    service { 'usermin':
      ensure    => running,
      enable    => true,
      subscribe => Package['usermin'],
    }
  } else {
    package { 'usermin':
      ensure  => absent,
    }
    file { '/usr/share/augeas/lenses/dist/tests/test_usermin.aug':
      ensure => absent,
      force  => true,
    }
    file { '/usr/share/augeas/lenses/dist/usermin.aug':
      ensure => absent,
      force  => true,
    }
  }
}