1 # = Class: roles::pubsub::entities
3 # MQ users, vhosts, policies, and permissions for pubsub hosts
7 # include roles::pubsub::entities
9 class roles::pubsub::entities {
10 include roles::pubsub::params
12 $admin_password = $roles::pubsub::params::admin_password
13 $ftp_password = $roles::pubsub::params::ftp_password
14 $buildd_password = $roles::pubsub::params::buildd_password
15 $wbadm_password = $roles::pubsub::params::wbadm_password
16 $mailadm_password = $roles::pubsub::params::mailadm_password
17 $mailly_password = $roles::pubsub::params::mailly_password
18 $muffat_password = $roles::pubsub::params::muffat_password
19 $pet_password = $roles::pubsub::params::pet_password
21 rabbitmq_user { 'admin':
23 password => $admin_password,
26 rabbitmq_user { 'ftpteam':
28 password => $ftp_password,
31 rabbitmq_user { 'buildd':
33 password => $buildd_password,
36 rabbitmq_user { 'wbadm':
38 password => $wbadm_password,
41 rabbitmq_user { 'mailadm':
43 password => $mailadm_password,
46 rabbitmq_user { 'mailly':
48 password => $mailly_password,
51 rabbitmq_user { 'muffat':
53 password => $muffat_password,
56 rabbitmq_user { 'pet-devel':
58 password => $pet_password,
61 $do_hosts = keys($deprecated::localinfo)
63 pubsub::autouser { $do_hosts: }
65 rabbitmq_vhost { 'packages':
69 rabbitmq_vhost { 'buildd':
73 rabbitmq_vhost { 'dsa':
77 rabbitmq_vhost { 'pet':
81 rabbitmq_user_permissions { 'admin@/':
82 configure_permission => '.*',
83 read_permission => '.*',
84 write_permission => '.*',
87 rabbitmq_user_permissions { 'admin@buildd':
88 configure_permission => '.*',
89 read_permission => '.*',
90 write_permission => '.*',
93 rabbitmq_user_permissions { 'admin@dsa':
94 configure_permission => '.*',
95 read_permission => '.*',
96 write_permission => '.*',
99 rabbitmq_user_permissions { 'admin@packages':
100 configure_permission => '.*',
101 read_permission => '.*',
102 write_permission => '.*',
105 rabbitmq_user_permissions { 'admin@pet':
106 configure_permission => '.*',
107 read_permission => '.*',
108 write_permission => '.*',
111 rabbitmq_user_permissions { 'ftpteam@packages':
112 configure_permission => '.*',
113 read_permission => '.*',
114 write_permission => '.*',
117 rabbitmq_user_permissions { 'wbadm@packages':
118 read_permission => 'unchecked',
119 write_permission => 'wbadm',
122 rabbitmq_user_permissions { 'buildd@buildd':
123 configure_permission => '.*',
124 read_permission => '.*',
125 write_permission => '.*',
128 rabbitmq_user_permissions { 'wbadm@buildd':
129 configure_permission => '.*',
130 read_permission => '.*',
131 write_permission => '.*',
134 rabbitmq_user_permissions { 'mailadm@dsa':
135 configure_permission => '.*',
136 read_permission => '.*',
137 write_permission => '.*',
140 rabbitmq_user_permissions { 'pet-devel@pet':
141 configure_permission => '.*',
142 read_permission => '.*',
143 write_permission => '.*',
146 rabbitmq_policy { 'mirror-dsa@dsa':
152 'ha-sync-mode' => 'automatic',
156 rabbitmq_policy { 'mirror-buildd@buildd':
162 'ha-sync-mode' => 'automatic',
166 rabbitmq_policy { 'mirror-packages@packages':
172 'ha-sync-mode' => 'automatic',
176 rabbitmq_policy { 'mirror_pet@pet':
182 'ha-sync-mode' => 'automatic',
186 rabbitmq_plugin { 'rabbitmq_management_agent':
189 rabbitmq_plugin { 'rabbitmq_tracing':
192 rabbitmq_plugin { 'rabbitmq_management_visualiser':