]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/roles/manifests/pubsub/entities.pp
er, this should be a variable
[dsa-puppet.git] / modules / roles / manifests / pubsub / entities.pp
index 2767d9e94a95465008e97cf2e4de53e600092bf1..2a8901026e34ca85aed5488eb086c1b90677fffe 100644 (file)
@@ -16,6 +16,7 @@ class roles::pubsub::entities {
        $mailadm_password = $roles::pubsub::params::mailadm_password
        $mailly_password  = $roles::pubsub::params::mailly_password
        $muffat_password  = $roles::pubsub::params::muffat_password
+       $pet_password     = $roles::pubsub::params::pet_password
 
        rabbitmq_user { 'admin':
                admin    => true,
@@ -24,41 +25,51 @@ class roles::pubsub::entities {
        }
 
        rabbitmq_user { 'ftpteam':
-               admin    => true,
+               admin    => false,
                password => $ftp_password,
                provider => 'rabbitmqctl',
        }
 
        rabbitmq_user { 'buildd':
-               admin    => true,
+               admin    => false,
                password => $buildd_password,
                provider => 'rabbitmqctl',
        }
 
        rabbitmq_user { 'wbadm':
-               admin    => true,
+               admin    => false,
                password => $wbadm_password,
                provider => 'rabbitmqctl',
        }
 
        rabbitmq_user { 'mailadm':
-               admin    => true,
+               admin    => false,
                password => $mailadm_password,
                provider => 'rabbitmqctl',
        }
 
        rabbitmq_user { 'mailly':
-               admin    => true,
+               admin    => false,
                password => $mailly_password,
                provider => 'rabbitmqctl',
        }
 
        rabbitmq_user { 'muffat':
-               admin    => true,
+               admin    => false,
                password => $muffat_password,
                provider => 'rabbitmqctl',
        }
 
+       rabbitmq_user { 'pet-devel':
+               admin    => false,
+               password => $pet_password,
+               provider => 'rabbitmqctl',
+       }
+
+       $do_hosts = keys($site::localinfo)
+
+       rabbitmq::autouser { $do_hosts: }
+
        rabbitmq_vhost { 'packages':
                ensure   => present,
                provider => 'rabbitmqctl',
@@ -74,6 +85,11 @@ class roles::pubsub::entities {
                provider => 'rabbitmqctl',
        }
 
+       rabbitmq_vhost { 'pet':
+               ensure   => present,
+               provider => 'rabbitmqctl',
+       }
+
        rabbitmq_user_permissions { 'admin@/':
                configure_permission => '.*',
                read_permission      => '.*',
@@ -115,6 +131,17 @@ class roles::pubsub::entities {
                ]
        }
 
+       rabbitmq_user_permissions { 'admin@pet':
+               configure_permission => '.*',
+               read_permission      => '.*',
+               write_permission     => '.*',
+               provider             => 'rabbitmqctl',
+               require              => [
+                       Rabbitmq_user['admin'],
+                       Rabbitmq_vhost['pet']
+               ]
+       }
+
        rabbitmq_user_permissions { 'ftpteam@packages':
                configure_permission => '.*',
                read_permission      => '.*',
@@ -191,6 +218,17 @@ class roles::pubsub::entities {
                ]
        }
 
+       rabbitmq_user_permissions { 'pet-devel@pet':
+               configure_permission => '.*',
+               read_permission      => '.*',
+               write_permission     => '.*',
+               provider             => 'rabbitmqctl',
+               require              => [
+                       Rabbitmq_user['pet-devel'],
+                       Rabbitmq_vhost['pet']
+               ]
+       }
+
        rabbitmq_policy { 'mirror-dsa':
                vhost   => 'dsa',
                match   => '.*',
@@ -212,6 +250,13 @@ class roles::pubsub::entities {
                require => Rabbitmq_vhost['packages']
        }
 
+       rabbitmq_policy { 'mirror_pet':
+               vhost   => 'pet',
+               match   => '.*',
+               policy  => '{"ha-mode":"all"}',
+               require => Rabbitmq_vhost['pet']
+       }
+
        rabbitmq_plugin { 'rabbitmq_management':
                ensure   => present,
                provider => 'rabbitmqplugins',