1 class roles::pubsub::entities {
2 include roles::pubsub::params
4 $admin_password = $roles::pubsub::params::admin_password
5 $ftp_password = $roles::pubsub::params::ftp_password
6 $buildd_password = $roles::pubsub::params::buildd_password
7 $wbadm_password = $roles::pubsub::params::wbadm_password
9 rabbitmq_user { 'admin':
11 password => $admin_password,
12 provider => 'rabbitmqctl',
15 rabbitmq_user { 'ftpteam':
17 password => $ftp_password,
18 provider => 'rabbitmqctl',
21 rabbitmq_user { 'buildd':
23 password => $buildd_password,
24 provider => 'rabbitmqctl',
27 rabbitmq_user { 'wbadm':
29 password => $wbadm_password,
30 provider => 'rabbitmqctl',
33 rabbitmq_vhost { 'packages':
35 provider => 'rabbitmqctl',
38 rabbitmq_vhost { 'buildd':
40 provider => 'rabbitmqctl',
43 rabbitmq_user_permissions { 'admin@/':
44 configure_permission => '.*',
45 read_permission => '.*',
46 write_permission => '.*',
47 provider => 'rabbitmqctl',
48 require => Rabbitmq_user['admin']
51 rabbitmq_user_permissions { 'admin@buildd':
52 configure_permission => '.*',
53 read_permission => '.*',
54 write_permission => '.*',
55 provider => 'rabbitmqctl',
57 Rabbitmq_user['admin'],
58 Rabbitmq_vhost['buildd']
61 rabbitmq_user_permissions { 'admin@packages':
62 configure_permission => '.*',
63 read_permission => '.*',
64 write_permission => '.*',
65 provider => 'rabbitmqctl',
67 Rabbitmq_user['admin'],
68 Rabbitmq_vhost['packages']
72 rabbitmq_user_permissions { 'ftpteam@packages':
73 configure_permission => '.*',
74 read_permission => '.*',
75 write_permission => '.*',
76 provider => 'rabbitmqctl',
78 Rabbitmq_user['ftpteam'],
79 Rabbitmq_vhost['packages']
83 rabbitmq_user_permissions { 'wbadm@packages':
84 read_permission => 'unchecked',
85 write_permission => 'wbadm',
86 provider => 'rabbitmqctl',
88 Rabbitmq_user['wbadm'],
89 Rabbitmq_vhost['packages']
93 rabbitmq_user_permissions { 'buildd@buildd':
94 configure_permission => '.*',
95 read_permission => '.*',
96 write_permission => '.*',
97 provider => 'rabbitmqctl',
99 Rabbitmq_user['buildd'],
100 Rabbitmq_vhost['buildd']
104 rabbitmq_user_permissions { 'wbadm@buildd':
105 configure_permission => '.*',
106 read_permission => '.*',
107 write_permission => '.*',
108 provider => 'rabbitmqctl',
110 Rabbitmq_user['wbadm'],
111 Rabbitmq_vhost['buildd']
115 rabbitmq_policy { 'mirror-buildd':
118 policy => '{"ha-mode":"all"}',
119 require => Rabbitmq_vhost['buildd']
122 rabbitmq_policy { 'mirror-packages':
125 policy => '{"ha-mode":"all"}',
126 require => Rabbitmq_vhost['packages']
129 rabbitmq_plugin { 'rabbitmq_management':
131 provider => 'rabbitmqplugins',
132 require => Package['rabbitmq-server'],
133 notify => Service['rabbitmq-server']
135 rabbitmq_plugin { 'rabbitmq_management_agent':
137 provider => 'rabbitmqplugins',
138 require => Package['rabbitmq-server'],
139 notify => Service['rabbitmq-server']
141 rabbitmq_plugin { 'rabbitmq_tracing':
143 provider => 'rabbitmqplugins',
144 require => Package['rabbitmq-server'],
145 notify => Service['rabbitmq-server']
147 rabbitmq_plugin { 'rabbitmq_management_visualiser':
149 provider => 'rabbitmqplugins',
150 require => Package['rabbitmq-server'],
151 notify => Service['rabbitmq-server']