X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fpubsub.pp;h=2f02be0d329403e57da2d2c08f3f41bc9ce8f533;hb=2501702f1ad580fa9909d2576fb403189e3eea5c;hp=9d0ea176fe8b03d0a00cda06059e60b1228a3558;hpb=211f337f632d4369b62326c8e64b735a218badc1;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/pubsub.pp b/modules/roles/manifests/pubsub.pp index 9d0ea176f..2f02be0d3 100644 --- a/modules/roles/manifests/pubsub.pp +++ b/modules/roles/manifests/pubsub.pp @@ -1,12 +1,11 @@ class roles::pubsub { include roles::pubsub::params + include roles::pubsub::entities $cluster_cookie = $roles::pubsub::params::cluster_cookie - $admin_password = $roles::pubsub::params::admin_password - $ftp_password = $roles::pubsub::params::ftp_password - $buildd_password = $roles::pubsub::params::ftp_password - $cc_master = rainier - $cc_secondary = rapoport + + $cc_master = rainier + $cc_secondary = rapoport class { 'rabbitmq': cluster => true, @@ -29,122 +28,10 @@ class roles::pubsub { source => 'puppet:///modules/roles/pubsub/rabbitmq.config' } - rabbitmq_user { 'admin': - admin => true, - password => $admin_password, - provider => 'rabbitmqctl', - } - - rabbitmq_user { 'ftpteam': - admin => true, - password => $ftp_password, - provider => 'rabbitmqctl', - } - - rabbitmq_user { 'buildd': - admin => true, - password => $buildd_password, - provider => 'rabbitmqctl', - } - - rabbitmq_vhost { 'packages': - ensure => present, - provider => 'rabbitmqctl', - } - - rabbitmq_vhost { 'buildd': - ensure => present, - provider => 'rabbitmqctl', - } - - rabbitmq_user_permissions { 'admin@buildd': - configure_permission => '.*', - read_permission => '.*', - write_permission => '.*', - provider => 'rabbitmqctl', - require => [ - Rabbitmq_user['admin'], - Rabbitmq_vhost['buildd'] - ] - } - rabbitmq_user_permissions { 'admin@packages': - configure_permission => '.*', - read_permission => '.*', - write_permission => '.*', - provider => 'rabbitmqctl', - require => [ - Rabbitmq_user['admin'], - Rabbitmq_vhost['packages'] - ] - } - - rabbitmq_user_permissions { 'admin@/': - configure_permission => '.*', - read_permission => '.*', - write_permission => '.*', - provider => 'rabbitmqctl', - require => Rabbitmq_user['admin'] - } - - rabbitmq_user_permissions { 'ftpteam@packages': - configure_permission => '.*', - read_permission => '.*', - write_permission => '.*', - provider => 'rabbitmqctl', - require => [ - Rabbitmq_user['ftpteam'], - Rabbitmq_vhost['packages'] - ] - } - - rabbitmq_user_permissions { 'buildd@buildd': - configure_permission => '.*', - read_permission => '.*', - write_permission => '.*', - provider => 'rabbitmqctl', - require => [ - Rabbitmq_user['buildd'], - Rabbitmq_vhost['buildd'] - ] - } - - rabbitmq_policy { 'mirror-buildd': - vhost => 'buildd', - match => '.*', - policy => '{"ha-mode":"all"}', - require => Rabbitmq_vhost['buildd'] - } - - rabbitmq_policy { 'mirror-packages': - vhost => 'packages', - match => '.*', - policy => '{"ha-mode":"all"}', - require => Rabbitmq_vhost['packages'] - } - - rabbitmq_plugin { 'rabbitmq_management': - ensure => present, - provider => 'rabbitmqplugins', - require => Package['rabbitmq-server'], - notify => Service['rabbitmq-server'] - } - rabbitmq_plugin { 'rabbitmq_management_agent': - ensure => present, - provider => 'rabbitmqplugins', - require => Package['rabbitmq-server'], - notify => Service['rabbitmq-server'] - } - rabbitmq_plugin { 'rabbitmq_tracing': - ensure => present, - provider => 'rabbitmqplugins', - require => Package['rabbitmq-server'], - notify => Service['rabbitmq-server'] - } - rabbitmq_plugin { 'rabbitmq_management_visualiser': - ensure => present, - provider => 'rabbitmqplugins', - require => Package['rabbitmq-server'], - notify => Service['rabbitmq-server'] + concat::fragment { 'rabbit_mgmt_ssl': + target => '/etc/rabbitmq/rabbitmq.config', + order => 55, + source => 'puppet:///modules/roles/pubsub/rabbitmq-mgmt.config' } @ferm::rule { 'rabbitmq': @@ -158,6 +45,17 @@ class roles::pubsub { rule => '&SERVICE_RANGE(tcp, 5671, $HOST_DEBIAN_V6)' } + @ferm::rule { 'rabbitmq-adm': + description => 'rabbitmq connections', + rule => '&SERVICE_RANGE(tcp, 5671, $DSA_IPS)' + } + + @ferm::rule { 'rabbitmq-v6-adm': + domain => 'ip6', + description => 'rabbitmq connections', + rule => '&SERVICE_RANGE(tcp, 5671, $DSA_V6_IPS)' + } + if $::hostname == $cc_master { $you = $cc_secondary } else {