memcached (openstack) is no longer in use
[mirror/dsa-puppet.git] / 3rdparty / modules / qpid / manifests / server.pp
1 # Class: qpid::server
2 #
3 # This module manages the installation and config of the qpid server.
4 class qpid::server(
5   $config_file = '/etc/qpidd.conf',
6   $package_name = 'qpid-cpp-server',
7   $package_ensure = present,
8   $service_name = 'qpidd',
9   $service_ensure = running,
10   $port = '5672',
11   $max_connections = '500',
12   $worker_threads = '17',
13   $connection_backlog = '10',
14   $auth = 'no',
15   $realm = 'QPID',
16   $log_to_file = 'UNSET',
17   $clustered = false,
18   $cluster_mechanism = 'ANONYMOUS'
19 ) {
20
21   validate_re($port, '\d+')
22   validate_re($max_connections, '\d+')
23   validate_re($worker_threads, '\d+')
24   validate_re($connection_backlog, '\d+')
25   validate_re($auth, '^(yes$|no$)')
26
27   package { $package_name:
28     ensure => $package_ensure
29   }
30
31   if $clustered == true {
32     case $::operatingsystem {
33       fedora: {
34         $mechanism_option = 'ha-mechanism'
35         package {"qpid-cpp-server-ha":
36           ensure => installed,
37         }
38       }
39       default: {
40         $mechanism_option = 'cluster-mechanism'
41         package {"qpid-cpp-server-cluster":
42           ensure => installed,
43         }
44       }
45     }
46   }
47
48   file { $config_file:
49     ensure  => present,
50     owner   => 'root',
51     group   => 'root',
52     mode    => 644,
53     content => template('qpid/qpidd.conf.erb'),
54     subscribe => Package[$package_name]
55   }
56
57   if $log_to_file != 'UNSET' {
58     file { $log_to_file:
59       ensure  => present,
60       owner => 'qpidd',
61       group => 'qpidd',
62       mode => 644,
63       notify => Service[$service_name]
64     }
65   }
66
67   service { $service_name:
68     ensure => $service_ensure,
69     subscribe => [Package[$package_name], File[$config_file]]
70   }
71
72 }