Puppet Class: opscenter

Inherits:
opscenter::params
Defined in:
manifests/init.pp

Overview

Class: opscenter

Install and configure DataStax OpsCenter

Parameters:

  • config_file (Any) (defaults to: '/etc/opscenter/opscenterd.conf')
  • config_purge (Any) (defaults to: false)
  • package_ensure (Any) (defaults to: present)
  • package_name (Any) (defaults to: 'opscenter')
  • service_enable (Any) (defaults to: true)
  • service_ensure (Any) (defaults to: 'running')
  • service_name (Any) (defaults to: 'opscenterd')
  • service_provider (Any) (defaults to: undef)
  • service_systemd (Any) (defaults to: $::opscenter::params::service_systemd)
  • service_systemd_tmpl (Any) (defaults to: 'opscenter/opscenterd.service.erb')
  • settings (Any) (defaults to: {})


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

class opscenter (
    $config_file          = '/etc/opscenter/opscenterd.conf',
    $config_purge         = false,
    $package_ensure       = present,
    $package_name         = 'opscenter',
    $service_enable       = true,
    $service_ensure       = 'running',
    $service_name         = 'opscenterd',
    $service_provider     = undef,
    $service_systemd      = $::opscenter::params::service_systemd,
    $service_systemd_tmpl = 'opscenter/opscenterd.service.erb',
    $settings             = {},
  ) inherits opscenter::params {
  if $service_provider != undef {
    System {
      provider => $service_provider,
    }
  }

  if $service_systemd {
    $systemd_path = $::opscenter::params::systemd_path

    exec { 'opscenter_reload_systemctl':
      command     => "${::opscenter::params::systemctl} daemon-reload",
      refreshonly => true,
      notify      => Service['opscenterd'],
    }

    file { "${systemd_path}/${service_name}.service":
      ensure  => present,
      owner   => 'root',
      group   => 'root',
      content => template($service_systemd_tmpl),
      mode    => '0644',
      before  => Package[$package_name],
      notify  => Exec['opscenter_reload_systemctl'],
    }
  }

  package { 'opscenter':
    ensure => $package_ensure,
    name   => $package_name,
    before => Service['opscenterd'],
  }

  $defaults = {
    ensure  => present,
    path    => $config_file,
    require => Package['opscenter'],
    notify  => Service['opscenterd'],
  }

  create_ini_settings($settings, $defaults)

  service { 'opscenterd':
    ensure => $service_ensure,
    name   => $service_name,
    enable => $service_enable,
  }
}