Puppet Class: brocadevtm::user_groups_monitoring

Defined in:
manifests/user_groups_monitoring.pp

Overview

class: brocadevtm::user_groups_monitoring

This class is a direct implementation of brocadvtm::user_groups

Please refer to the documentation in that module for more information

Parameters:

  • ensure (Any) (defaults to: present)
  • basic__description (Any) (defaults to: 'Access only to config summary / monitoring pages')
  • basic__password_expire_time (Any) (defaults to: 0)
  • basic__permissions (Any) (defaults to: '[{"name":"Web_Cache","access_level":"full"},{"name":"Java","access_level":"none"},{"name":"Event_Log","access_level":"full"},{"name":"Monitors","access_level":"none"},{"name":"Analytics_Export","access_level":"none"},{"name":"Configure","access_level":"none"},{"name":"Wizard","access_level":"none"},{"name":"Security","access_level":"none"},{"name":"Shutdown","access_level":"none"},{"name":"Web_Cache!Clear","access_level":"none"},{"name":"Traffic_Managers","access_level":"none"},{"name":"DateTime","access_level":"none"},{"name":"Log_Viewer","access_level":"full"},{"name":"Bandwidth","access_level":"none"},{"name":"Request_Logs","access_level":"none"},{"name":"SNMP","access_level":"none"},{"name":"Access_Management!LocalUsers!Edit","access_level":"full"},{"name":"Reboot","access_level":"none"},{"name":"Connections","access_level":"full"},{"name":"Virtual_Servers","access_level":"none"},{"name":"SOAP_API","access_level":"none"},{"name":"Networking","access_level":"none"},{"name":"Pools","access_level":"none"},{"name":"Support","access_level":"none"},{"name":"Access_Management!LocalUsers!EditOtherUsers","access_level":"none"},{"name":"Global_Settings","access_level":"none"},{"name":"Catalog","access_level":"none"},{"name":"Java!Edit","access_level":"none"},{"name":"Appliance_Console","access_level":"none"},{"name":"SLM","access_level":"none"},{"name":"SSL","access_level":"none"},{"name":"Monitoring","access_level":"full"},{"name":"Service_Protection","access_level":"none"},{"name":"Persistence","access_level":"none"},{"name":"Alerting","access_level":"none"},{"name":"Audit_Log","access_level":"none"},{"name":"Backup","access_level":"none"},{"name":"Extra_Files","access_level":"none"},{"name":"Statd","access_level":"full"},{"name":"Help","access_level":"full"},{"name":"Rate","access_level":"none"},{"name":"Restart","access_level":"none"},{"name":"Custom","access_level":"none"},{"name":"Aptimizer","access_level":"none"},{"name":"Event_Log!Clear","access_level":"none"},{"name":"Rules","access_level":"none"},{"name":"Traffic_IP_Groups","access_level":"none"},{"name":"Draining","access_level":"full"},{"name":"License_Keys","access_level":"none"},{"name":"Diagnose","access_level":"ro"},{"name":"Access_Management","access_level":"none"},{"name":"NAT","access_level":"none"},{"name":"Config_Summary","access_level":"full"},{"name":"MainIndex","access_level":"ro"}]')
  • basic__timeout (Any) (defaults to: 30)


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

class brocadevtm::user_groups_monitoring (
  $ensure                      = present,
  $basic__description          = 'Access only to config summary / monitoring pages',
  $basic__password_expire_time = 0,
  $basic__permissions          = '[{"name":"Web_Cache","access_level":"full"},{"name":"Java","access_level":"none"},{"name":"Event_Log","access_level":"full"},{"name":"Monitors","access_level":"none"},{"name":"Analytics_Export","access_level":"none"},{"name":"Configure","access_level":"none"},{"name":"Wizard","access_level":"none"},{"name":"Security","access_level":"none"},{"name":"Shutdown","access_level":"none"},{"name":"Web_Cache!Clear","access_level":"none"},{"name":"Traffic_Managers","access_level":"none"},{"name":"DateTime","access_level":"none"},{"name":"Log_Viewer","access_level":"full"},{"name":"Bandwidth","access_level":"none"},{"name":"Request_Logs","access_level":"none"},{"name":"SNMP","access_level":"none"},{"name":"Access_Management!LocalUsers!Edit","access_level":"full"},{"name":"Reboot","access_level":"none"},{"name":"Connections","access_level":"full"},{"name":"Virtual_Servers","access_level":"none"},{"name":"SOAP_API","access_level":"none"},{"name":"Networking","access_level":"none"},{"name":"Pools","access_level":"none"},{"name":"Support","access_level":"none"},{"name":"Access_Management!LocalUsers!EditOtherUsers","access_level":"none"},{"name":"Global_Settings","access_level":"none"},{"name":"Catalog","access_level":"none"},{"name":"Java!Edit","access_level":"none"},{"name":"Appliance_Console","access_level":"none"},{"name":"SLM","access_level":"none"},{"name":"SSL","access_level":"none"},{"name":"Monitoring","access_level":"full"},{"name":"Service_Protection","access_level":"none"},{"name":"Persistence","access_level":"none"},{"name":"Alerting","access_level":"none"},{"name":"Audit_Log","access_level":"none"},{"name":"Backup","access_level":"none"},{"name":"Extra_Files","access_level":"none"},{"name":"Statd","access_level":"full"},{"name":"Help","access_level":"full"},{"name":"Rate","access_level":"none"},{"name":"Restart","access_level":"none"},{"name":"Custom","access_level":"none"},{"name":"Aptimizer","access_level":"none"},{"name":"Event_Log!Clear","access_level":"none"},{"name":"Rules","access_level":"none"},{"name":"Traffic_IP_Groups","access_level":"none"},{"name":"Draining","access_level":"full"},{"name":"License_Keys","access_level":"none"},{"name":"Diagnose","access_level":"ro"},{"name":"Access_Management","access_level":"none"},{"name":"NAT","access_level":"none"},{"name":"Config_Summary","access_level":"full"},{"name":"MainIndex","access_level":"ro"}]',
  $basic__timeout              = 30,
){
  include brocadevtm
  $ip              = $brocadevtm::rest_ip
  $port            = $brocadevtm::rest_port
  $user            = $brocadevtm::rest_user
  $pass            = $brocadevtm::rest_pass
  $purge           = $brocadevtm::purge
  $purge_state_dir = $brocadevtm::purge_state_dir

  info ("Configuring user_groups_monitoring ${name}")
  vtmrest { 'user_groups/Monitoring':
    ensure   => $ensure,
    before   => Class[brocadevtm::purge],
    endpoint => "https://${ip}:${port}/api/tm/4.0/config/active",
    username => $user,
    password => $pass,
    content  => template('brocadevtm/user_groups.erb'),
    type     => 'application/json',
    internal => 'user_groups_monitoring',
    failfast => $brocadevtm::failfast,
    debug    => 0,
  }

  if ( $purge ) {
    ensure_resource('file', "${purge_state_dir}/user_groups", {ensure => present})
    file_line { 'user_groups/Monitoring':
      line => 'user_groups/Monitoring',
      path => "${purge_state_dir}/user_groups",
    }
  }
}