Nova base cleanups for hiera json hook

This patch resolves an issue with nova-base.yaml that prevents
it from working with the new heat hiera agent hook (which
uses Json instead of Yaml).

It updates the service so that we only set the upgrade level if it
is not an empty string.

Partial-bug: #1596373

Change-Id: I595f2e16c33a6f935c7ca8935fec445d19c7b8f3
This commit is contained in:
Dan Prince 2016-11-15 17:12:37 -05:00
parent 133edad130
commit 8ab22a95da
1 changed files with 51 additions and 43 deletions

View File

@ -1,4 +1,4 @@
heat_template_version: 2016-04-08 heat_template_version: 2016-10-14
description: > description: >
OpenStack Nova base service. Shared for all Nova services. OpenStack Nova base service. Shared for all Nova services.
@ -66,6 +66,9 @@ parameters:
type: string type: string
description: Nova Compute upgrade level description: Nova Compute upgrade level
default: '' default: ''
conditions:
compute_upgrade_level_empty: {equals : [{get_param: UpgradeLevelNovaCompute}, '']}
outputs: outputs:
role_data: role_data:
@ -73,45 +76,50 @@ outputs:
value: value:
service_name: nova_base service_name: nova_base
config_settings: config_settings:
nova::rabbit_password: {get_param: RabbitPassword} map_merge:
nova::rabbit_userid: {get_param: RabbitUserName} - nova::rabbit_password: {get_param: RabbitPassword}
nova::rabbit_use_ssl: {get_param: RabbitClientUseSSL} nova::rabbit_userid: {get_param: RabbitUserName}
nova::rabbit_port: {get_param: RabbitClientPort} nova::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
nova::database_connection: nova::rabbit_port: {get_param: RabbitClientPort}
list_join: nova::database_connection:
- '' list_join:
- - {get_param: [EndpointMap, MysqlInternal, protocol]} - ''
- '://nova:' - - {get_param: [EndpointMap, MysqlInternal, protocol]}
- {get_param: NovaPassword} - '://nova:'
- '@' - {get_param: NovaPassword}
- {get_param: [EndpointMap, MysqlInternal, host]} - '@'
- '/nova' - {get_param: [EndpointMap, MysqlInternal, host]}
nova::api_database_connection: - '/nova'
list_join: nova::api_database_connection:
- '' list_join:
- - {get_param: [EndpointMap, MysqlInternal, protocol]} - ''
- '://nova_api:' - - {get_param: [EndpointMap, MysqlInternal, protocol]}
- {get_param: NovaPassword} - '://nova_api:'
- '@' - {get_param: NovaPassword}
- {get_param: [EndpointMap, MysqlInternal, host]} - '@'
- '/nova_api' - {get_param: [EndpointMap, MysqlInternal, host]}
nova::debug: {get_param: Debug} - '/nova_api'
nova::purge_config: {get_param: EnableConfigPurge} nova::debug: {get_param: Debug}
nova::network::neutron::neutron_project_name: 'service' nova::purge_config: {get_param: EnableConfigPurge}
nova::network::neutron::neutron_username: 'neutron' nova::network::neutron::neutron_project_name: 'service'
nova::network::neutron::dhcp_domain: '' nova::network::neutron::neutron_username: 'neutron'
nova::network::neutron::neutron_password: {get_param: NeutronPassword} nova::network::neutron::dhcp_domain: ''
nova::network::neutron::neutron_url: {get_param: [EndpointMap, NeutronInternal, uri]} nova::network::neutron::neutron_password: {get_param: NeutronPassword}
nova::network::neutron::neutron_auth_url: {get_param: [EndpointMap, KeystoneV3Admin, uri]} nova::network::neutron::neutron_url: {get_param: [EndpointMap, NeutronInternal, uri]}
nova::rabbit_heartbeat_timeout_threshold: 60 nova::network::neutron::neutron_auth_url: {get_param: [EndpointMap, KeystoneV3Admin, uri]}
nova::cinder_catalog_info: 'volumev2:cinderv2:internalURL' nova::rabbit_heartbeat_timeout_threshold: 60
nova::host: '"%{::fqdn}"' # NOTE: extra quoting is needed. nova::cinder_catalog_info: 'volumev2:cinderv2:internalURL'
nova::notify_on_state_change: 'vm_and_task_state' nova::host: '"%{::fqdn}"' # NOTE: extra quoting is needed.
nova::notification_driver: messagingv2 nova::notify_on_state_change: 'vm_and_task_state'
nova::network::neutron::neutron_auth_type: 'v3password' nova::notification_driver: messagingv2
nova::db::database_db_max_retries: -1 nova::network::neutron::neutron_auth_type: 'v3password'
nova::db::database_max_retries: -1 nova::db::database_db_max_retries: -1
nova::glance_api_servers: {get_param: [EndpointMap, GlanceInternal, uri]} nova::db::database_max_retries: -1
nova::use_ipv6: {get_param: NovaIPv6} nova::glance_api_servers: {get_param: [EndpointMap, GlanceInternal, uri]}
nova::upgrade_level_compute: {get_param: UpgradeLevelNovaCompute} nova::use_ipv6: {get_param: NovaIPv6}
nova::network::neutron::neutron_ovs_bridge: {get_param: NovaOVSBridge} nova::network::neutron::neutron_ovs_bridge: {get_param: NovaOVSBridge}
-
if:
- compute_upgrade_level_empty
- {}
- nova::upgrade_level_compute: {get_param: UpgradeLevelNovaCompute}