From 55e84b6100c77d2d17667abf9309f8afac226735 Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Wed, 29 Jun 2016 17:30:08 +0200 Subject: Move nova::db data within service template Change-Id: I86752248e59a2e98f8ff9b2c5998839f9ade4779 --- puppet/services/nova-api.yaml | 2 ++ puppet/services/nova-base.yaml | 41 +++++++++++++++++++++++++++++++++++ puppet/services/nova-compute.yaml | 2 ++ puppet/services/nova-conductor.yaml | 2 ++ puppet/services/nova-consoleauth.yaml | 2 ++ puppet/services/nova-libvirt.yaml | 2 ++ puppet/services/nova-scheduler.yaml | 2 ++ puppet/services/nova-vncproxy.yaml | 2 ++ 8 files changed, 55 insertions(+) (limited to 'puppet/services') diff --git a/puppet/services/nova-api.yaml b/puppet/services/nova-api.yaml index 0ff159d2..71ddd023 100644 --- a/puppet/services/nova-api.yaml +++ b/puppet/services/nova-api.yaml @@ -17,6 +17,8 @@ parameters: resources: NovaBase: type: ./nova-base.yaml + properties: + EndpointMap: {get_param: EndpointMap} outputs: role_data: diff --git a/puppet/services/nova-base.yaml b/puppet/services/nova-base.yaml index 7de14f68..aa64c1fe 100644 --- a/puppet/services/nova-base.yaml +++ b/puppet/services/nova-base.yaml @@ -4,6 +4,15 @@ description: > OpenStack Nova base service. Shared for all Nova services. parameters: + EndpointMap: + default: {} + description: Mapping of service endpoint -> protocol. Typically set + via parameter_defaults in the resource registry. + type: json + NovaPassword: + description: The password for the nova service and db account, used by nova-api. + type: string + hidden: true RabbitPassword: description: The password for RabbitMQ type: string @@ -36,4 +45,36 @@ outputs: nova::rabbit_user: {get_param: RabbitUserName} nova::rabbit_use_ssl: {get_param: RabbitClientUseSSL} nova::rabbit_port: {get_param: RabbitClientPort} + nova::database_connection: + list_join: + - '' + - - {get_param: [EndpointMap, MysqlInternal, protocol]} + - '://nova:' + - {get_param: NovaPassword} + - '@' + - {get_param: [EndpointMap, MysqlInternal, host]} + - '/nova' + nova::api_database_connection: + list_join: + - '' + - - {get_param: [EndpointMap, MysqlInternal, protocol]} + - '://nova_api:' + - {get_param: NovaPassword} + - '@' + - {get_param: [EndpointMap, MysqlInternal, host]} + - '/nova_api' + nova::db::mysql::password: {get_input: nova_password} + nova::db::mysql::user: nova + nova::db::mysql::host: {get_param: [EndpointMap, MysqlNoBracketsInternal, host]} + nova::db::mysql::dbname: nova + nova::db::mysql::allowed_hosts: + - '%' + - "%{hiera('mysql_bind_host')}" + nova::db::mysql_api::password: {get_input: nova_password} + nova::db::mysql_api::user: nova_api + nova::db::mysql_api::host: {get_param: [EndpointMap, MysqlNoBracketsInternal, host]} + nova::db::mysql_api::dbname: nova_api + nova::db::mysql_api::allowed_hosts: + - '%' + - "%{hiera('mysql_bind_host')}" nova::debug: {get_param: Debug} diff --git a/puppet/services/nova-compute.yaml b/puppet/services/nova-compute.yaml index 679586f7..0db75fb9 100644 --- a/puppet/services/nova-compute.yaml +++ b/puppet/services/nova-compute.yaml @@ -13,6 +13,8 @@ parameters: resources: NovaBase: type: ./nova-base.yaml + properties: + EndpointMap: {get_param: EndpointMap} outputs: role_data: diff --git a/puppet/services/nova-conductor.yaml b/puppet/services/nova-conductor.yaml index 412dd275..8b7dc321 100644 --- a/puppet/services/nova-conductor.yaml +++ b/puppet/services/nova-conductor.yaml @@ -17,6 +17,8 @@ parameters: resources: NovaBase: type: ./nova-base.yaml + properties: + EndpointMap: {get_param: EndpointMap} outputs: role_data: diff --git a/puppet/services/nova-consoleauth.yaml b/puppet/services/nova-consoleauth.yaml index 791c5449..8297c05a 100644 --- a/puppet/services/nova-consoleauth.yaml +++ b/puppet/services/nova-consoleauth.yaml @@ -13,6 +13,8 @@ parameters: resources: NovaBase: type: ./nova-base.yaml + properties: + EndpointMap: {get_param: EndpointMap} outputs: role_data: diff --git a/puppet/services/nova-libvirt.yaml b/puppet/services/nova-libvirt.yaml index e3309c32..b7fbaf74 100644 --- a/puppet/services/nova-libvirt.yaml +++ b/puppet/services/nova-libvirt.yaml @@ -13,6 +13,8 @@ parameters: resources: NovaBase: type: ./nova-base.yaml + properties: + EndpointMap: {get_param: EndpointMap} outputs: role_data: diff --git a/puppet/services/nova-scheduler.yaml b/puppet/services/nova-scheduler.yaml index 65ed6643..f07d6099 100644 --- a/puppet/services/nova-scheduler.yaml +++ b/puppet/services/nova-scheduler.yaml @@ -13,6 +13,8 @@ parameters: resources: NovaBase: type: ./nova-base.yaml + properties: + EndpointMap: {get_param: EndpointMap} outputs: role_data: diff --git a/puppet/services/nova-vncproxy.yaml b/puppet/services/nova-vncproxy.yaml index 93a25ab2..1f97f8b2 100644 --- a/puppet/services/nova-vncproxy.yaml +++ b/puppet/services/nova-vncproxy.yaml @@ -13,6 +13,8 @@ parameters: resources: NovaBase: type: ./nova-base.yaml + properties: + EndpointMap: {get_param: EndpointMap} outputs: role_data: -- cgit 1.2.3-korg