From 3e727b5f1cdff3e0e80f40b3b9b70ce06caba7a9 Mon Sep 17 00:00:00 2001 From: Javier Pena Date: Wed, 16 Dec 2015 17:49:21 +0100 Subject: [PATCH] Fix Sahara templates to work with latest puppet-sahara The latest puppet-sahara module introduces a few incompatibilities: - It enables $::os_service_default (https://review.openstack.org/245178), which requires changes in the way kombu_ssl_* parameters are handled. - It removes sahara::notify::rabbitmq and sahara::notify::qpid (https://review.openstack.org/253099), so we need to configure the rpc backend in a different way. - It also removes all qpid functionality (https://review.openstack.org/253105). It is kept for now, so it can be properly removed with a single review. Change-Id: I5608691776566700386cc379ce296fb510358d50 --- packstack/puppet/templates/sahara.pp | 21 ---------- packstack/puppet/templates/sahara_qpid.pp | 28 ++++++++++--- packstack/puppet/templates/sahara_rabbitmq.pp | 42 +++++++++++++------ 3 files changed, 51 insertions(+), 40 deletions(-) diff --git a/packstack/puppet/templates/sahara.pp b/packstack/puppet/templates/sahara.pp index 91b37d1df..26037da0e 100644 --- a/packstack/puppet/templates/sahara.pp +++ b/packstack/puppet/templates/sahara.pp @@ -1,24 +1,3 @@ -$sahara_cfg_sahara_db_pw = hiera('CONFIG_SAHARA_DB_PW') -$sahara_cfg_sahara_mariadb_host = hiera('CONFIG_MARIADB_HOST_URL') - -$sahara_cfg_config_neutron_install = hiera('CONFIG_NEUTRON_INSTALL') - -class { '::sahara': - database_connection => - "mysql+pymysql://sahara:${sahara_cfg_sahara_db_pw}@${sahara_cfg_sahara_mariadb_host}/sahara", - verbose => true, - debug => hiera('CONFIG_DEBUG_MODE'), - admin_user => 'sahara', - admin_password => hiera('CONFIG_SAHARA_KS_PW'), - admin_tenant_name => 'services', - auth_uri => hiera('CONFIG_KEYSTONE_PUBLIC_URL'), - identity_uri => hiera('CONFIG_KEYSTONE_ADMIN_URL'), - use_neutron => ($sahara_cfg_config_neutron_install == 'y'), - host => hiera('CONFIG_SAHARA_HOST'), -} - class { '::sahara::service::api': } class { '::sahara::service::engine': } - - diff --git a/packstack/puppet/templates/sahara_qpid.pp b/packstack/puppet/templates/sahara_qpid.pp index 7d784aafa..565df9c7d 100644 --- a/packstack/puppet/templates/sahara_qpid.pp +++ b/packstack/puppet/templates/sahara_qpid.pp @@ -1,7 +1,23 @@ -class { '::sahara::notify::qpid': - qpid_hostname => hiera('CONFIG_AMQP_HOST_URL'), - qpid_port => hiera('CONFIG_AMQP_CLIENTS_PORT'), - qpid_protocol => hiera('CONFIG_AMQP_PROTOCOL'), - qpid_username => hiera('CONFIG_AMQP_AUTH_USER'), - qpid_password => hiera('CONFIG_AMQP_AUTH_PASSWORD'), +$sahara_cfg_sahara_db_pw = hiera('CONFIG_SAHARA_DB_PW') +$sahara_cfg_sahara_mariadb_host = hiera('CONFIG_MARIADB_HOST_URL') +$sahara_cfg_config_neutron_install = hiera('CONFIG_NEUTRON_INSTALL') + +class { '::sahara': + database_connection => + "mysql+pymysql://sahara:${sahara_cfg_sahara_db_pw}@${sahara_cfg_sahara_mariadb_host}/sahara", + verbose => true, + debug => hiera('CONFIG_DEBUG_MODE'), + admin_user => 'sahara', + admin_password => hiera('CONFIG_SAHARA_KS_PW'), + admin_tenant_name => 'services', + auth_uri => hiera('CONFIG_KEYSTONE_PUBLIC_URL'), + identity_uri => hiera('CONFIG_KEYSTONE_ADMIN_URL'), + use_neutron => ($sahara_cfg_config_neutron_install == 'y'), + host => hiera('CONFIG_SAHARA_HOST'), + rpc_backend => 'qpid', + qpid_hostname => hiera('CONFIG_AMQP_HOST_URL'), + qpid_port => hiera('CONFIG_AMQP_CLIENTS_PORT'), + qpid_protocol => hiera('CONFIG_AMQP_PROTOCOL'), + qpid_username => hiera('CONFIG_AMQP_AUTH_USER'), + qpid_password => hiera('CONFIG_AMQP_AUTH_PASSWORD'), } diff --git a/packstack/puppet/templates/sahara_rabbitmq.pp b/packstack/puppet/templates/sahara_rabbitmq.pp index a3fc54f75..508552dee 100644 --- a/packstack/puppet/templates/sahara_rabbitmq.pp +++ b/packstack/puppet/templates/sahara_rabbitmq.pp @@ -1,8 +1,12 @@ -$kombu_ssl_ca_certs = hiera('CONFIG_AMQP_SSL_CACERT_FILE', undef) -$kombu_ssl_keyfile = hiera('CONFIG_SAHARA_SSL_KEY', undef) -$kombu_ssl_certfile = hiera('CONFIG_SAHARA_SSL_CERT', undef) +$sahara_cfg_sahara_db_pw = hiera('CONFIG_SAHARA_DB_PW') +$sahara_cfg_sahara_mariadb_host = hiera('CONFIG_MARIADB_HOST_URL') +$sahara_cfg_config_neutron_install = hiera('CONFIG_NEUTRON_INSTALL') -if $kombu_ssl_keyfile { +$kombu_ssl_ca_certs = hiera('CONFIG_AMQP_SSL_CACERT_FILE', $::os_service_default) +$kombu_ssl_keyfile = hiera('CONFIG_SAHARA_SSL_KEY', $::os_service_default) +$kombu_ssl_certfile = hiera('CONFIG_SAHARA_SSL_CERT', $::os_service_default) + +if ! is_service_default($kombu_ssl_keyfile) { $files_to_set_owner = [ $kombu_ssl_keyfile, $kombu_ssl_certfile ] file { $files_to_set_owner: owner => 'sahara', @@ -12,13 +16,25 @@ if $kombu_ssl_keyfile { File[$files_to_set_owner] ~> Service<||> } -class { '::sahara::notify::rabbitmq': - rabbit_host => hiera('CONFIG_AMQP_HOST_URL'), - rabbit_port => hiera('CONFIG_AMQP_CLIENTS_PORT'), - rabbit_use_ssl => hiera('CONFIG_AMQP_SSL_ENABLED'), - rabbit_userid => hiera('CONFIG_AMQP_AUTH_USER'), - rabbit_password => hiera('CONFIG_AMQP_AUTH_PASSWORD'), - kombu_ssl_ca_certs => $kombu_ssl_ca_certs, - kombu_ssl_keyfile => $kombu_ssl_keyfile, - kombu_ssl_certfile => $kombu_ssl_certfile, +class { '::sahara': + database_connection => + "mysql+pymysql://sahara:${sahara_cfg_sahara_db_pw}@${sahara_cfg_sahara_mariadb_host}/sahara", + verbose => true, + debug => hiera('CONFIG_DEBUG_MODE'), + admin_user => 'sahara', + admin_password => hiera('CONFIG_SAHARA_KS_PW'), + admin_tenant_name => 'services', + auth_uri => hiera('CONFIG_KEYSTONE_PUBLIC_URL'), + identity_uri => hiera('CONFIG_KEYSTONE_ADMIN_URL'), + use_neutron => ($sahara_cfg_config_neutron_install == 'y'), + host => hiera('CONFIG_SAHARA_HOST'), + rpc_backend => 'rabbit', + rabbit_host => hiera('CONFIG_AMQP_HOST_URL'), + rabbit_port => hiera('CONFIG_AMQP_CLIENTS_PORT'), + rabbit_use_ssl => hiera('CONFIG_AMQP_SSL_ENABLED'), + rabbit_userid => hiera('CONFIG_AMQP_AUTH_USER'), + rabbit_password => hiera('CONFIG_AMQP_AUTH_PASSWORD'), + kombu_ssl_ca_certs => $kombu_ssl_ca_certs, + kombu_ssl_keyfile => $kombu_ssl_keyfile, + kombu_ssl_certfile => $kombu_ssl_certfile, }