From 8e052715c87dde7fba62824d25b847d52c97dc5e Mon Sep 17 00:00:00 2001 From: Alex Schultz Date: Wed, 12 May 2021 11:29:00 -0600 Subject: [PATCH] Use kolla_config for other actions Today for some services we mount in /var/lib/config-data//etc which is actually an output from the container-puppet process. We should be using kolla to ensure that we properly create the configurations based on the puppet generated configurations and things in the container. Some services correctly leverage the kolla_config that the associated api/service uses when running their db sync. This patch aligns the rest to follow the similar pattern. Change-Id: I0e3d5748a50937880a55413b75fe6eca479c9160 --- .../aodh/aodh-api-container-puppet.yaml | 19 +++- ...ometer-agent-central-container-puppet.yaml | 14 +-- .../cinder/cinder-api-container-puppet.yaml | 30 +++--- .../mistral/mistral-api-container-puppet.yaml | 30 ++++-- .../zaqar/zaqar-container-puppet.yaml | 11 +- deployment/etcd/etcd-container-puppet.yaml | 3 +- .../designate-central-container-puppet.yaml | 26 +++-- .../heat/heat-engine-container-puppet.yaml | 19 ++-- .../ironic/ironic-api-container-puppet.yaml | 15 +-- .../ironic-inspector-container-puppet.yaml | 14 ++- .../manila/manila-api-container-puppet.yaml | 16 +-- .../neutron/neutron-api-container-puppet.yaml | 22 ++-- .../nova/nova-api-container-puppet.yaml | 102 +++++++++++------- .../nova/nova-compute-container-puppet.yaml | 16 ++- .../nova/nova-conductor-container-puppet.yaml | 30 +++--- .../nova/nova-ironic-container-puppet.yaml | 19 +++- .../octavia/octavia-api-container-puppet.yaml | 17 +-- .../placement-api-container-puppet.yaml | 24 +++-- .../rabbitmq/rabbitmq-container-puppet.yaml | 2 +- ...tmq-messaging-notify-container-puppet.yaml | 2 +- ...bbitmq-messaging-rpc-container-puppet.yaml | 2 +- .../swift-ringbuilder-container-puppet.yaml | 2 +- 22 files changed, 282 insertions(+), 153 deletions(-) diff --git a/deployment/aodh/aodh-api-container-puppet.yaml b/deployment/aodh/aodh-api-container-puppet.yaml index 2e1d93c345..83c2a41573 100644 --- a/deployment/aodh/aodh-api-container-puppet.yaml +++ b/deployment/aodh/aodh-api-container-puppet.yaml @@ -209,7 +209,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/aodh_api.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &aodh_api_config_files - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" dest: "/etc/httpd/conf.d" merge: false @@ -222,10 +222,14 @@ outputs: dest: "/" merge: true preserve_properties: true - permissions: + permissions: &aodh_api_permissions - path: /var/log/aodh owner: aodh:aodh recurse: true + /var/lib/kolla/config_files/aodh_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec aodh_api su aodh -s /bin/bash -c /usr/bin/aodh-dbsync" + config_files: *aodh_api_config_files + permissions: *aodh_api_permissions /var/lib/kolla/config_files/aodh_api_cron.json: command: /usr/sbin/crond -n config_files: @@ -258,12 +262,16 @@ outputs: volumes: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/aodh/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/aodh/etc/aodh/:/etc/aodh/:ro + - - /var/lib/kolla/config_files/aodh_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/aodh:/var/lib/kolla/config_files/src:ro - /var/log/containers/aodh:/var/log/aodh - /var/log/containers/httpd/aodh-api:/var/log/httpd - command: "/usr/bin/bootstrap_host_exec aodh_api su aodh -s /bin/bash -c /usr/bin/aodh-dbsync" + - if: + - {get_param: EnableInternalTLS} + - - /etc/pki/tls/certs/httpd:/etc/pki/tls/certs/httpd:ro + - /etc/pki/tls/private/httpd:/etc/pki/tls/private/httpd:ro environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: aodh_api: @@ -284,6 +292,7 @@ outputs: - {get_param: EnableInternalTLS} - - /etc/pki/tls/certs/httpd:/etc/pki/tls/certs/httpd:ro - /etc/pki/tls/private/httpd:/etc/pki/tls/private/httpd:ro + environment: KOLLA_CONFIG_STRATEGY: COPY_ALWAYS aodh_api_cron: diff --git a/deployment/ceilometer/ceilometer-agent-central-container-puppet.yaml b/deployment/ceilometer/ceilometer-agent-central-container-puppet.yaml index 60776e0275..1fb79da23a 100644 --- a/deployment/ceilometer/ceilometer-agent-central-container-puppet.yaml +++ b/deployment/ceilometer/ceilometer-agent-central-container-puppet.yaml @@ -101,11 +101,14 @@ outputs: kolla_config: /var/lib/kolla/config_files/ceilometer_agent_central.json: command: /usr/bin/ceilometer-polling --polling-namespaces central --logfile /var/log/ceilometer/central.log - config_files: + config_files: &ceilometer_agent_config_files - source: "/var/lib/kolla/config_files/src/*" dest: "/" merge: true preserve_properties: true + /var/lib/kolla/config_files/ceilometer_agent_gnocchi_upgrade.json: + command: "/usr/bin/bootstrap_host_exec ceilometer_agent_central su ceilometer -s /bin/bash -c 'for n in {1..10}; do /usr/bin/ceilometer-upgrade && exit 0 || sleep 30; done; exit 1'" + config_files: *ceilometer_agent_config_files docker_config: step_3: ceilometer_init_log: @@ -145,12 +148,11 @@ outputs: volumes: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/ceilometer/etc/ceilometer/:/etc/ceilometer/:ro + - - /var/lib/kolla/config_files/ceilometer_agent_gnocchi_upgrade.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/ceilometer:/var/lib/kolla/config_files/src:ro - /var/log/containers/ceilometer:/var/log/ceilometer:z - command: - - '/usr/bin/bootstrap_host_exec' - - 'ceilometer_agent_central' - - "su ceilometer -s /bin/bash -c 'for n in {1..10}; do /usr/bin/ceilometer-upgrade && exit 0 || sleep 30; done; exit 1'" + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS host_prep_tasks: - name: create persistent directories file: diff --git a/deployment/cinder/cinder-api-container-puppet.yaml b/deployment/cinder/cinder-api-container-puppet.yaml index 1e4c3271d7..eb9d77f3fa 100644 --- a/deployment/cinder/cinder-api-container-puppet.yaml +++ b/deployment/cinder/cinder-api-container-puppet.yaml @@ -226,7 +226,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/cinder_api.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &cinder_api_config_files - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" dest: "/etc/httpd/conf.d" merge: false @@ -244,7 +244,7 @@ outputs: merge: true preserve_properties: true optional: true - permissions: + permissions: &cinder_api_permissions - path: /var/log/cinder owner: cinder:cinder recurse: true @@ -252,6 +252,10 @@ outputs: owner: cinder:cinder - path: /etc/pki/tls/private/etcd.key owner: cinder:cinder + /var/lib/kolla/config_files/cinder_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec cinder_api su cinder -s /bin/bash -c 'cinder-manage db sync --bump-versions'" + config_files: *cinder_api_config_files + permissions: *cinder_api_permissions /var/lib/kolla/config_files/cinder_api_cron.json: command: /usr/sbin/crond -n config_files: @@ -284,16 +288,15 @@ outputs: volumes: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - - /var/lib/config-data/cinder/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/cinder/etc/cinder/:/etc/cinder/:ro + - - /var/lib/kolla/config_files/cinder_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/cinder:/var/lib/kolla/config_files/src:ro - /var/log/containers/cinder:/var/log/cinder:z - - /var/log/containers/httpd/cinder-api:/var/log/httpd:z - command: - - '/usr/bin/bootstrap_host_exec' - - 'cinder_api' - - "su cinder -s /bin/bash -c 'cinder-manage db sync --bump-versions'" + - if: + - {get_param: EnableInternalTLS} + - - /etc/pki/tls/certs/httpd:/etc/pki/tls/certs/httpd:ro + - /etc/pki/tls/private/httpd:/etc/pki/tls/private/httpd:ro environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: cinder_api: @@ -308,9 +311,10 @@ outputs: test: /openstack/healthcheck volumes: list_concat: - - {get_attr: [CinderCommon, cinder_common_volumes]} + - {get_attr: [ContainersCommon, volumes]} - - /var/lib/kolla/config_files/cinder_api.json:/var/lib/kolla/config_files/config.json:ro - - /var/log/containers/httpd/cinder-api:/var/log/httpd:z + - /var/lib/config-data/puppet-generated/cinder:/var/lib/kolla/config_files/src:ro + - /var/log/containers/cinder:/var/log/cinder:z - if: - {get_param: EnableInternalTLS} - - /etc/pki/tls/certs/httpd:/etc/pki/tls/certs/httpd:ro @@ -345,7 +349,7 @@ outputs: step_config: 'include tripleo::profile::base::cinder::api' config_image: *cinder_api_image volumes: - - /var/lib/config-data/cinder/etc/cinder/:/etc/cinder/:ro + - /var/lib/config-data/puppet-generated/cinder/etc/cinder/:/etc/cinder/:ro metadata_settings: get_attr: [ApacheServiceBase, role_data, metadata_settings] diff --git a/deployment/deprecated/mistral/mistral-api-container-puppet.yaml b/deployment/deprecated/mistral/mistral-api-container-puppet.yaml index 60c08d38b9..f94579965c 100644 --- a/deployment/deprecated/mistral/mistral-api-container-puppet.yaml +++ b/deployment/deprecated/mistral/mistral-api-container-puppet.yaml @@ -166,15 +166,26 @@ outputs: kolla_config: /var/lib/kolla/config_files/mistral_api.json: command: /usr/bin/mistral-server --config-file=/etc/mistral/mistral.conf --log-file=/var/log/mistral/api.log --server=api - config_files: + config_files: &mistral_api_config_files - source: "/var/lib/kolla/config_files/src/*" dest: "/" merge: true preserve_properties: true - permissions: + permissions: &mistral_api_permissions - path: /var/log/mistral owner: mistral:mistral recurse: true + /var/lib/kolla/config_files/mistral_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec mistral_api su mistral -s /bin/bash -c 'mistral-db-manage --config-file /etc/mistral/mistral.conf --openstack_actions_mapping_path=/etc/mistral/mapping.json upgrade head'" + config_files: *mistral_api_config_files + permissions: *mistral_api_permissions + /var/lib/kolla/config_files/mistral_api_db_populate.json: + # NOTE: dprince this requires that we install openstack-tripleo-common into + # the Mistral API image so that we get tripleo* actions + command: "/usr/bin/bootstrap_host_exec mistral_api su mistral -s /bin/bash -c 'mistral-db-manage --config-file /etc/mistral/mistral.conf --openstack_actions_mapping_path=/etc/mistral/mapping.json populate'" + config_files: *mistral_api_config_files + permissions: *mistral_api_permissions + docker_config: # db sync runs before permissions set by kolla_config step_2: @@ -198,10 +209,11 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/mistral/etc/mistral/:/etc/mistral/:ro + - /var/lib/kolla/config_files/mistral_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/mistral:/var/lib/kolla/config_files/src:ro - /var/log/containers/mistral:/var/log/mistral:z - command: "/usr/bin/bootstrap_host_exec mistral_api su mistral -s /bin/bash -c 'mistral-db-manage --config-file /etc/mistral/mistral.conf --openstack_actions_mapping_path=/etc/mistral/mapping.json upgrade head'" environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: mistral_api: @@ -233,11 +245,11 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/mistral/etc/mistral/:/etc/mistral/:ro + - /var/lib/kolla/config_files/mistral_api_db_populate.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/mistral:/var/lib/kolla/config_files/src:ro - /var/log/containers/mistral:/var/log/mistral:z - # NOTE: dprince this requires that we install openstack-tripleo-common into - # the Mistral API image so that we get tripleo* actions - command: "/usr/bin/bootstrap_host_exec mistral_api su mistral -s /bin/bash -c 'mistral-db-manage --config-file /etc/mistral/mistral.conf --openstack_actions_mapping_path=/etc/mistral/mapping.json populate'" + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS host_prep_tasks: - name: create persistent directories file: @@ -252,7 +264,7 @@ outputs: when: step|int == 3 copy: content: {get_file: ./mapping.json} - dest: '/var/lib/config-data/mistral/etc/mistral/mapping.json' + dest: '/var/lib/config-data/puppet-generated/mistral/etc/mistral/mapping.json' setype: container_file_t force: yes mode: '0755' diff --git a/deployment/deprecated/zaqar/zaqar-container-puppet.yaml b/deployment/deprecated/zaqar/zaqar-container-puppet.yaml index 9641019b86..99d02208da 100644 --- a/deployment/deprecated/zaqar/zaqar-container-puppet.yaml +++ b/deployment/deprecated/zaqar/zaqar-container-puppet.yaml @@ -269,7 +269,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/zaqar.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &zaqar_config_files - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" dest: "/etc/httpd/conf.d" merge: false @@ -282,6 +282,9 @@ outputs: dest: "/" merge: true preserve_properties: true + /var/lib/kolla/config_files/zaqar_db_sync.json: + command: "/usr/bin/bootstrap_host_exec zaqar_api su zaqar -s /bin/bash -c 'zaqar-sql-db-manage upgrade head'" + config_files: *zaqar_config_files /var/lib/kolla/config_files/zaqar_websocket.json: command: /usr/bin/zaqar-server --config-file /etc/zaqar/zaqar.conf --config-file /etc/zaqar/1.conf config_files: @@ -319,11 +322,11 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/zaqar/etc/zaqar/:/etc/zaqar/:ro + - /var/lib/kolla/config_files/zaqar_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/zaqar:/var/lib/kolla/config_files/src:ro - /var/log/containers/zaqar:/var/log/zaqar - - /var/log/containers/httpd/zaqar:/var/log/httpd - command: "/usr/bin/bootstrap_host_exec zaqar_api su zaqar -s /bin/bash -c 'zaqar-sql-db-manage upgrade head'" environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} - {} - step_4: diff --git a/deployment/etcd/etcd-container-puppet.yaml b/deployment/etcd/etcd-container-puppet.yaml index 5b9afdda41..729fea7d4c 100644 --- a/deployment/etcd/etcd-container-puppet.yaml +++ b/deployment/etcd/etcd-container-puppet.yaml @@ -191,8 +191,9 @@ outputs: step_config: | include tripleo::profile::base::etcd config_image: *etcd_config_image + # TODO(mwhahaha): need to check if this works correctly or we need to switch to a bootstrap execution volumes: - - /var/lib/config-data/etcd/etc/etcd/:/etc/etcd:ro + - /var/lib/config-data/puppet-generated/etcd/etc/etcd/:/etc/etcd:ro - /var/lib/etcd:/var/lib/etcd:ro deploy_steps_tasks: if: diff --git a/deployment/experimental/designate/designate-central-container-puppet.yaml b/deployment/experimental/designate/designate-central-container-puppet.yaml index b0b8a97975..d097c4508d 100644 --- a/deployment/experimental/designate/designate-central-container-puppet.yaml +++ b/deployment/experimental/designate/designate-central-container-puppet.yaml @@ -134,15 +134,23 @@ outputs: kolla_config: /var/lib/kolla/config_files/designate_central.json: command: /usr/bin/designate-central --config-file=/etc/designate/designate.conf --log-file=/var/log/designate/central.log - config_files: + config_files: &designate_central_config_files - source: "/var/lib/kolla/config_files/src/*" dest: "/" merge: true preserve_properties: true - permissions: + permissions: &designate_central_permissions - path: /var/log/designate owner: designate:designate recurse: true + /var/lib/kolla/config_files/designate_central_db_sync.json: + command: "/usr/bin/bootstrap_host_exec designate_central su designate -s /bin/bash -c 'designate-manage --config-file /etc/designate/designate.conf database sync'" + config_files: *designate_central_config_files + permissions: *designate_central_permissions + /var/lib/kolla/config_files/designate_central_pool_manage.json: + command: "/usr/bin/bootstrap_host_exec designate_central su designate -s /bin/bash -c '/bin/designate-manage pool update'" + config_files: *designate_central_config_files + permissions: *designate_central_permissions deploy_steps_tasks: - name: generate designate pool when: step|int == 4 @@ -170,11 +178,12 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/designate/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/designate/etc/designate/:/etc/designate/:ro + - /run:/run + - /var/lib/kolla/config_files/designate_central_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/designate:/var/lib/kolla/config_files/src:ro - /var/log/containers/designate:/var/log/designate:z - command: "/usr/bin/bootstrap_host_exec designate_central su designate -s /bin/bash -c 'designate-manage --config-file /etc/designate/designate.conf database sync'" environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: designate_central: @@ -205,9 +214,12 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/puppet-generated/designate/etc/designate/:/etc/designate/:ro + - /run:/run + - /var/lib/kolla/config_files/designate_central_pool_manage.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/designate:/var/lib/kolla/config_files/src:ro - /var/log/containers/designate:/var/log/designate:z - command: "/usr/bin/bootstrap_host_exec designate_central su designate -s /bin/bash -c '/bin/designate-manage pool update'" + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS host_prep_tasks: - name: create persistent directories file: diff --git a/deployment/heat/heat-engine-container-puppet.yaml b/deployment/heat/heat-engine-container-puppet.yaml index fb232ff873..13070a46f7 100644 --- a/deployment/heat/heat-engine-container-puppet.yaml +++ b/deployment/heat/heat-engine-container-puppet.yaml @@ -225,15 +225,19 @@ outputs: - ' ' - - /usr/bin/heat-engine --config-file /usr/share/heat/heat-dist.conf --config-file /etc/heat/heat.conf - get_attr: [HeatEngineLogging, cmd_extra_args] - config_files: + config_files: &heat_engine_config_files - source: "/var/lib/kolla/config_files/src/*" dest: "/" merge: true preserve_properties: true - permissions: + permissions: &heat_engine_permissions - path: /var/log/heat owner: heat:heat recurse: true + /var/lib/kolla/config_files/heat_engine_db_sync.json: + command: "/usr/bin/bootstrap_host_exec heat_engine su heat -s /bin/bash -c 'heat-manage db_sync'" + config_files: *heat_engine_config_files + permissions: *heat_engine_permissions docker_config: # db sync runs before permissions set by kolla_config step_2: @@ -249,12 +253,15 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_attr: [HeatEngineLogging, volumes]} + - {get_param: HeatEngineOptVolumes} - - - /var/lib/config-data/heat/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/heat/etc/heat/:/etc/heat/:ro - command: "/usr/bin/bootstrap_host_exec heat_engine su heat -s /bin/bash -c 'heat-manage db_sync'" + - /var/lib/kolla/config_files/heat_engine_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/heat:/var/lib/kolla/config_files/src:ro environment: - TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} + map_merge: + - {get_param: HeatEngineOptEnvVars} + - KOLLA_CONFIG_STRATEGY: COPY_ALWAYS + TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: heat_engine: image: *heat_engine_image diff --git a/deployment/ironic/ironic-api-container-puppet.yaml b/deployment/ironic/ironic-api-container-puppet.yaml index 8b1019ebe0..625437fa8b 100644 --- a/deployment/ironic/ironic-api-container-puppet.yaml +++ b/deployment/ironic/ironic-api-container-puppet.yaml @@ -195,7 +195,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/ironic_api.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &ironic_api_config_files - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" dest: "/etc/httpd/conf.d" merge: false @@ -208,10 +208,14 @@ outputs: dest: "/" merge: true preserve_properties: true - permissions: + permissions: &ironic_api_permissions - path: /var/log/ironic owner: ironic:ironic recurse: true + /var/lib/kolla/config_files/ironic_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec ironic_api su ironic -s /bin/bash -c 'ironic-dbsync --config-file /etc/ironic/ironic.conf'" + config_files: *ironic_api_config_files + permissions: *ironic_api_permissions docker_config: # db sync runs before permissions set by kolla_config step_2: @@ -236,12 +240,11 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/ironic_api/etc/ironic:/etc/ironic:ro + - - /var/lib/kolla/config_files/ironic_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/ironic_api:/var/lib/kolla/config_files/src:ro - /var/log/containers/ironic:/var/log/ironic:z - - /var/log/containers/httpd/ironic-api:/var/log/httpd:z - - /var/lib/config-data/ironic_api/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - command: "/usr/bin/bootstrap_host_exec ironic_api su ironic -s /bin/bash -c 'ironic-dbsync --config-file /etc/ironic/ironic.conf'" environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: ironic_api: diff --git a/deployment/ironic/ironic-inspector-container-puppet.yaml b/deployment/ironic/ironic-inspector-container-puppet.yaml index 7c580c5ce5..d9b50e963f 100644 --- a/deployment/ironic/ironic-inspector-container-puppet.yaml +++ b/deployment/ironic/ironic-inspector-container-puppet.yaml @@ -380,7 +380,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/ironic_inspector.json: command: /usr/bin/ironic-inspector --config-file /etc/ironic-inspector/inspector-dist.conf --config-file /etc/ironic-inspector/inspector.conf - config_files: + config_files: &ironic_inspector_config_files - source: "/var/lib/kolla/config_files/src/*" dest: "/" merge: true @@ -406,6 +406,13 @@ outputs: owner: ironic-inspector:ironic-inspector recurse: true command: /sbin/dnsmasq --conf-file=/etc/ironic-inspector/dnsmasq.conf -k --log-facility=/var/log/ironic-inspector/dnsmasq.log + /var/lib/kolla/config_files/ironic_inspector_db_sync.json: + command: "/usr/bin/bootstrap_host_exec ironic_inspector su ironic-inspector -s /bin/bash -c 'ironic-inspector-dbsync --config-file /etc/ironic-inspector/inspector.conf upgrade'" + config_files: *ironic_inspector_config_files + permissions: + - path: /var/log/ironic-inspector + owner: ironic-inspector:ironic-inspector + recurse: true docker_config: step_3: ironic_inspector_init_log: @@ -437,13 +444,12 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/kolla/config_files/ironic_inspector.json:/var/lib/kolla/config_files/config.json:ro - - /var/lib/config-data/ironic_inspector/etc/ironic-inspector:/etc/ironic-inspector:ro + - /var/lib/kolla/config_files/ironic_inspector_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/ironic_inspector:/var/lib/kolla/config_files/src:ro - /var/log/containers/ironic-inspector:/var/log/ironic-inspector:z environment: KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} - command: "/usr/bin/bootstrap_host_exec ironic_inspector su ironic-inspector -s /bin/bash -c 'ironic-inspector-dbsync --config-file /etc/ironic-inspector/inspector.conf upgrade'" ironic_inspector_get_ipa: start_order: 2 image: *ironic_inspector_image diff --git a/deployment/manila/manila-api-container-puppet.yaml b/deployment/manila/manila-api-container-puppet.yaml index 75a3b763cd..a2d25df48f 100644 --- a/deployment/manila/manila-api-container-puppet.yaml +++ b/deployment/manila/manila-api-container-puppet.yaml @@ -226,7 +226,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/manila_api.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &manila_api_config_files - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" dest: "/etc/httpd/conf.d" merge: false @@ -239,10 +239,14 @@ outputs: dest: "/" merge: true preserve_properties: true - permissions: + permissions: &manila_api_permissions - path: /var/log/manila owner: manila:manila recurse: true + /var/lib/kolla/config_files/manila_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec manila_api su manila -s /bin/bash -c '/usr/bin/manila-manage db sync'" + config_files: *manila_api_config_files + permissions: *manila_api_permissions /var/lib/kolla/config_files/manila_api_cron.json: command: /usr/sbin/crond -n config_files: @@ -273,11 +277,11 @@ outputs: volumes: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/manila/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/manila/etc/manila/:/etc/manila/:ro + - - /var/lib/kolla/config_files/manila_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/manila:/var/lib/kolla/config_files/src:ro - /var/log/containers/manila:/var/log/manila:z - - /var/log/containers/httpd/manila-api:/var/log/httpd:z - command: "/usr/bin/bootstrap_host_exec manila_api su manila -s /bin/bash -c '/usr/bin/manila-manage db sync'" + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS step_4: manila_api: image: *manila_api_image diff --git a/deployment/neutron/neutron-api-container-puppet.yaml b/deployment/neutron/neutron-api-container-puppet.yaml index 5f412745eb..fe56f82326 100644 --- a/deployment/neutron/neutron-api-container-puppet.yaml +++ b/deployment/neutron/neutron-api-container-puppet.yaml @@ -407,7 +407,7 @@ outputs: - ' ' - - /usr/bin/neutron-server --config-file /usr/share/neutron/neutron-dist.conf --config-dir /usr/share/neutron/server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-server - get_attr: [NeutronLogging, cmd_extra_args] - config_files: + config_files: &neutron_api_config_files - source: "/var/lib/kolla/config_files/src/*" dest: "/" merge: true @@ -417,7 +417,7 @@ outputs: merge: true optional: true preserve_properties: true - permissions: + permissions: &neutron_api_permissions - path: /var/log/neutron owner: neutron:neutron recurse: true @@ -429,6 +429,13 @@ outputs: owner: neutron:neutron optional: true perm: '0644' + /var/lib/kolla/config_files/neutron_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec neutron_api neutron-db-manage upgrade heads" + # FIXME: we should make config file permissions right + # and run as neutron user + #command: "/usr/bin/bootstrap_host_exec neutron_api su neutron -s /bin/bash -c 'neutron-db-manage upgrade heads'" + config_files: *neutron_api_config_files + permissions: *neutron_api_permissions /var/lib/kolla/config_files/neutron_server_tls_proxy.json: command: /usr/sbin/httpd -DFOREGROUND config_files: @@ -458,14 +465,11 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_attr: [NeutronLogging, volumes]} - - - - /var/lib/config-data/neutron/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/neutron/etc/neutron:/etc/neutron:ro - command: ['/usr/bin/bootstrap_host_exec', 'neutron_api', 'neutron-db-manage', 'upgrade', 'heads'] - # FIXME: we should make config file permissions right - # and run as neutron user - #command: "/usr/bin/bootstrap_host_exec neutron_api su neutron -s /bin/bash -c 'neutron-db-manage upgrade heads'" + - {get_param: NeutronApiOptVolumes} + - - /var/lib/kolla/config_files/neutron_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/neutron:/var/lib/kolla/config_files/src:ro environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: map_merge: diff --git a/deployment/nova/nova-api-container-puppet.yaml b/deployment/nova/nova-api-container-puppet.yaml index 51433588a9..98986f19c9 100644 --- a/deployment/nova/nova-api-container-puppet.yaml +++ b/deployment/nova/nova-api-container-puppet.yaml @@ -418,7 +418,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/nova_api.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &nova_api_db_sync - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" dest: "/etc/httpd/conf.d" merge: false @@ -431,10 +431,43 @@ outputs: dest: "/" merge: true preserve_properties: true - permissions: + permissions: &nova_api_permissions - path: /var/log/nova owner: nova:nova recurse: true + /var/lib/kolla/config_files/nova_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec nova_api su nova -s /bin/bash -c '/usr/bin/nova-manage api_db sync'" + config_files: *nova_api_db_sync + permissions: *nova_api_permissions + /var/lib/kolla/config_files/nova_api_map_cell0.json: + command: + str_replace: + template: "/usr/bin/bootstrap_host_exec nova_api su nova -s /bin/bash -c '/usr/bin/nova-manage cell_v2 map_cell0 --database_connection=\"CELL0DB\"'" + params: + CELL0DB: + list_join: + - '' + - - '{scheme}' + - '://' + - '{username}' + - ':' + - '{password}' + - '@' + - + if: + - mysql_ipv6_use_ip_address + - '[{hostname}]' + - '{hostname}' + - '/' + - 'nova_cell0' + - '?' + - '{query}' + config_files: *nova_api_db_sync + permissions: *nova_api_permissions + /var/lib/kolla/config_files/nova_api_ensure_default_cell.json: + command: "/usr/bin/bootstrap_host_exec nova_api /nova_api_ensure_default_cell.sh" + config_files: *nova_api_db_sync + permissions: *nova_api_permissions /var/lib/kolla/config_files/nova_api_cron.json: command: /usr/sbin/crond -n config_files: @@ -442,10 +475,12 @@ outputs: dest: "/" merge: true preserve_properties: true - permissions: - - path: /var/log/nova - owner: nova:nova - recurse: true + permissions: *nova_api_permissions + /var/lib/kolla/config_files/nova_wait_for_api_service.json: + command: "/usr/bin/bootstrap_host_exec nova_api su nova -s /bin/bash -c '/container-config-scripts/pyshim.sh /container-config-scripts/nova_wait_for_api_service.py'" + config_files: *nova_api_db_sync + permissions: *nova_api_permissions + container_config_scripts: map_merge: - {get_attr: [ContainersCommon, container_config_scripts]} @@ -509,14 +544,14 @@ outputs: net: host detach: false user: root - volumes: &nova_api_bootstrap_volumes + volumes: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_attr: [NovaApiLogging, volumes]} - - - /var/lib/config-data/nova/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/nova/etc/nova/:/etc/nova/:ro - command: "/usr/bin/bootstrap_host_exec nova_api su nova -s /bin/bash -c '/usr/bin/nova-manage api_db sync'" + - - /var/lib/kolla/config_files/nova_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova:/var/lib/kolla/config_files/src:ro environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} nova_api_map_cell0: start_order: 1 # Runs before nova-conductor dbsync @@ -524,28 +559,14 @@ outputs: net: host detach: false user: root - volumes: *nova_api_bootstrap_volumes - command: - str_replace: - template: "/usr/bin/bootstrap_host_exec nova_api su nova -s /bin/bash -c '/usr/bin/nova-manage cell_v2 map_cell0 --database_connection=\"CELL0DB\"'" - params: - CELL0DB: - list_join: - - '' - - - '{scheme}' - - '://' - - '{username}' - - ':' - - '{password}' - - '@' - - if: - - mysql_ipv6_use_ip_address - - '[{hostname}]' - - '{hostname}' - - '/' - - 'nova_cell0' - - '?' - - '{query}' + volumes: + list_concat: + - {get_attr: [ContainersCommon, volumes]} + - {get_attr: [NovaApiLogging, volumes]} + - - /var/lib/kolla/config_files/nova_api_map_cell0.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova:/var/lib/kolla/config_files/src:ro + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS nova_api_ensure_default_cell: start_order: 2 # Runs before nova-conductor dbsync image: *nova_api_image @@ -553,11 +574,14 @@ outputs: detach: false volumes: list_concat: - - *nova_api_bootstrap_volumes - - - /var/lib/config-data/puppet-generated/nova:/var/lib/kolla/config_files/src:ro + - {get_attr: [ContainersCommon, volumes]} + - {get_attr: [NovaApiLogging, volumes]} + - - /var/lib/kolla/config_files/nova_api_ensure_default_cell.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova:/var/lib/kolla/config_files/src:ro - /var/lib/container-config-scripts/nova_api_ensure_default_cell.sh:/nova_api_ensure_default_cell.sh:ro user: root - command: "/usr/bin/bootstrap_host_exec nova_api /nova_api_ensure_default_cell.sh" + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS step_4: nova_api: start_order: 2 @@ -590,17 +614,17 @@ outputs: volumes: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/nova/etc/my.cnf.d/:/etc/my.cnf.d/:ro - - /var/lib/config-data/nova/etc/nova/:/etc/nova/:ro - - /var/log/containers/nova:/var/log/nova + - {get_attr: [NovaApiLogging, volumes]} + - - /var/lib/kolla/config_files/nova_wait_for_api_service.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova:/var/lib/kolla/config_files/src:ro - /var/lib/container-config-scripts/:/container-config-scripts/:z - command: "/usr/bin/bootstrap_host_exec nova_api su nova -s /bin/bash -c '/container-config-scripts/pyshim.sh /container-config-scripts/nova_wait_for_api_service.py'" environment: __OS_DEBUG: yaql: expression: str($.data.debug) data: debug: {get_attr: [NovaBase, role_data, config_settings, 'nova::logging::debug']} + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS nova_api_cron: start_order: 4 image: *nova_api_image diff --git a/deployment/nova/nova-compute-container-puppet.yaml b/deployment/nova/nova-compute-container-puppet.yaml index eaa8edd366..0b29f2ac07 100644 --- a/deployment/nova/nova-compute-container-puppet.yaml +++ b/deployment/nova/nova-compute-container-puppet.yaml @@ -1286,6 +1286,17 @@ outputs: data: default_user: {get_param: CephClientUserName} multiconfig: {get_param: CinderRbdMultiConfig} + /var/lib/kolla/config_files/nova_compute_wait_for_compute_service.json: + command: "/container-config-scripts/pyshim.sh /container-config-scripts/nova_wait_for_compute_service.py" + config_files: + - source: "/var/lib/kolla/config_files/src/*" + dest: "/" + merge: true + preserve_properties: true + permissions: + - path: /var/log/nova + owner: nova:nova + recurse: true container_config_scripts: map_merge: - {get_attr: [ContainersCommon, container_config_scripts]} @@ -1377,12 +1388,13 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/nova_libvirt/etc/nova/:/etc/nova/:ro + - /var/lib/kolla/config_files/nova_compute_wait_for_compute_service.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova_libvirt:/var/lib/kolla/config_files/src:ro - /var/log/containers/nova:/var/log/nova - /var/lib/container-config-scripts/:/container-config-scripts/ user: nova - command: "/container-config-scripts/pyshim.sh /container-config-scripts/nova_wait_for_compute_service.py" environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS __OS_DEBUG: yaql: expression: str($.data.debug) diff --git a/deployment/nova/nova-conductor-container-puppet.yaml b/deployment/nova/nova-conductor-container-puppet.yaml index 5dc888a05b..041704bb53 100644 --- a/deployment/nova/nova-conductor-container-puppet.yaml +++ b/deployment/nova/nova-conductor-container-puppet.yaml @@ -150,15 +150,26 @@ outputs: - ' ' - - /usr/bin/nova-conductor - get_attr: [NovaLogging, cmd_extra_args] - config_files: + config_files: &nova_conductor_config_files - source: "/var/lib/kolla/config_files/src/*" dest: "/" merge: true preserve_properties: true - permissions: + permissions: &nova_conductor_permissions - path: /var/log/nova owner: nova:nova recurse: true + /var/lib/kolla/config_files/nova_conductor_db_sync.json: + command: + str_replace: + template: "/usr/bin/bootstrap_host_exec nova_conductor su nova -s /bin/bash -c '/usr/bin/nova-manage db sync DB_SYNC_ARGS'" + params: + if: + - {get_param: NovaAdditionalCell} + - DB_SYNC_ARGS: "--local_cell" + - DB_SYNC_ARGS: "" + config_files: *nova_conductor_config_files + permissions: *nova_conductor_permissions docker_config: step_2: get_attr: [NovaLogging, docker_config, step_2] @@ -168,22 +179,15 @@ outputs: start_order: 3 # Runs after nova-api tasks if installed on this host net: host detach: false - volumes: &nova_conductor_bootstrap_volumes + volumes: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_attr: [NovaLogging, volumes]} - - - /var/lib/config-data/nova/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/nova/etc/nova/:/etc/nova/:ro + - - /var/lib/kolla/config_files/nova_conductor_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova:/var/lib/kolla/config_files/src:ro user: root - command: - str_replace: - template: "/usr/bin/bootstrap_host_exec nova_conductor su nova -s /bin/bash -c '/usr/bin/nova-manage db sync DB_SYNC_ARGS'" - params: - if: - - {get_param: NovaAdditionalCell} - - DB_SYNC_ARGS: "--local_cell" - - DB_SYNC_ARGS: "" environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: nova_conductor: diff --git a/deployment/nova/nova-ironic-container-puppet.yaml b/deployment/nova/nova-ironic-container-puppet.yaml index 0fb523f4ef..24668795b1 100644 --- a/deployment/nova/nova-ironic-container-puppet.yaml +++ b/deployment/nova/nova-ironic-container-puppet.yaml @@ -124,10 +124,18 @@ outputs: dest: "/etc/iscsi/" merge: true preserve_properties: true - permissions: + permissions: &nova_ironic_permissions - path: /var/log/nova owner: nova:nova recurse: true + /var/lib/kolla/config_files/nova_ironic_wait_for_compute.json: + command: "/container-config-scripts/pyshim.sh /container-config-scripts/nova_wait_for_compute_service.py" + config_files: + - source: "/var/lib/kolla/config_files/src/*" + dest: "/" + merge: true + preserve_properties: true + permissions: *nova_ironic_permissions container_config_scripts: map_merge: - {get_attr: [ContainersCommon, container_config_scripts]} @@ -172,7 +180,7 @@ outputs: - - /etc/multipath:/etc/multipath:z - /etc/multipath.conf:/etc/multipath.conf:ro environment: - KOLLA_CONFIG_STRATEGY: COPY_ALWAYS + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS nova_wait_for_compute_service: start_order: 101 image: *nova_ironic_image @@ -182,12 +190,13 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/nova/etc/my.cnf.d/:/etc/my.cnf.d/:ro - - /var/lib/config-data/nova/etc/nova/:/etc/nova/:ro + - /var/lib/kolla/config_files/nova_ironic_wait_for_compute.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/nova:/var/lib/kolla/config_files/src:ro - /var/log/containers/nova:/var/log/nova - /var/lib/container-config-scripts/:/container-config-scripts/ user: root - command: "/container-config-scripts/pyshim.sh /container-config-scripts/nova_wait_for_compute_service.py" + environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS host_prep_tasks: - name: create persistent directories file: diff --git a/deployment/octavia/octavia-api-container-puppet.yaml b/deployment/octavia/octavia-api-container-puppet.yaml index af39d43897..f4cb012470 100644 --- a/deployment/octavia/octavia-api-container-puppet.yaml +++ b/deployment/octavia/octavia-api-container-puppet.yaml @@ -229,7 +229,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/octavia_api.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &octavia_api_config_files list_concat: - - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" @@ -245,7 +245,7 @@ outputs: merge: true preserve_properties: true - {get_attr: [OctaviaProviderConfig, role_data, kolla_config_files]} - permissions: + permissions: &octavia_api_permissions list_concat: - - path: /var/log/octavia @@ -269,6 +269,10 @@ outputs: - path: /run/octavia owner: octavia:octavia recurse: true + /var/lib/kolla/config_files/octavia_driver_agent_db_sync.json: + command: "/usr/bin/bootstrap_host_exec octavia_api su octavia -s /bin/bash -c '/usr/bin/octavia-db-manage upgrade head'" + config_files: *octavia_api_config_files + permissions: *octavia_api_permissions container_puppet_tasks: step_5: config_volume: octavia @@ -311,12 +315,13 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - - - /var/lib/config-data/octavia/etc/octavia/:/etc/octavia/:ro - - /var/lib/config-data/octavia/etc/my.cnf.d/:/etc/my.cnf.d/:ro + - /var/lib/kolla/config_files/octavia_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/octavia:/var/lib/kolla/config_files/src:ro - /var/log/containers/octavia:/var/log/octavia:z - - /var/log/containers/httpd/octavia-api:/var/log/httpd:z - command: "/usr/bin/bootstrap_host_exec octavia_api su octavia -s /bin/bash -c '/usr/bin/octavia-db-manage upgrade head'" + - /run/octavia:/run/octavia:shared,z + - {get_attr: [OctaviaProviderConfig, role_data, volumes]} environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: map_merge: diff --git a/deployment/placement/placement-api-container-puppet.yaml b/deployment/placement/placement-api-container-puppet.yaml index ebd89d33e0..ab1cad208f 100644 --- a/deployment/placement/placement-api-container-puppet.yaml +++ b/deployment/placement/placement-api-container-puppet.yaml @@ -201,7 +201,7 @@ outputs: kolla_config: /var/lib/kolla/config_files/placement_api.json: command: /usr/sbin/httpd -DFOREGROUND - config_files: + config_files: &placement_api_config_files - source: "/var/lib/kolla/config_files/src/etc/httpd/conf.d" dest: "/etc/httpd/conf.d" merge: false @@ -214,10 +214,18 @@ outputs: dest: "/" merge: true preserve_properties: true - permissions: + permissions: &placement_api_permissions - path: /var/log/placement owner: placement:placement recurse: true + /var/lib/kolla/config_files/placement_api_db_sync.json: + command: "/usr/bin/bootstrap_host_exec placement su placement -s /bin/bash -c '/usr/bin/placement-manage db sync'" + config_files: *placement_api_config_files + permissions: *placement_api_permissions + /var/lib/kolla/config_files/placement_api_wait_for_service.json: + command: "/usr/bin/bootstrap_host_exec placement su placement -s /bin/bash -c '/container-config-scripts/pyshim.sh /container-config-scripts/placement_wait_for_service.py'" + config_files: *placement_api_config_files + permissions: *placement_api_permissions container_config_scripts: map_merge: - {get_attr: [ContainersCommon, container_config_scripts]} @@ -238,10 +246,10 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_attr: [PlacementLogging, volumes]} - - - /var/lib/config-data/placement/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/placement/etc/placement/:/etc/placement/:ro - command: "/usr/bin/bootstrap_host_exec placement su placement -s /bin/bash -c '/usr/bin/placement-manage db sync'" + - - /var/lib/kolla/config_files/placement_api_db_sync.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/placement:/var/lib/kolla/config_files/src:ro environment: + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS TRIPLEO_DEPLOY_IDENTIFIER: {get_param: DeployIdentifier} step_4: placement_api: @@ -275,16 +283,16 @@ outputs: list_concat: - {get_attr: [ContainersCommon, volumes]} - {get_attr: [PlacementLogging, volumes]} - - - /var/lib/config-data/placement/etc/my.cnf.d/tripleo.cnf:/etc/my.cnf.d/tripleo.cnf:ro - - /var/lib/config-data/placement/etc/placement/:/etc/placement/:ro + - - /var/lib/kolla/config_files/placement_api_wait_for_service.json:/var/lib/kolla/config_files/config.json:ro + - /var/lib/config-data/puppet-generated/placement:/var/lib/kolla/config_files/src:ro - /var/lib/container-config-scripts/:/container-config-scripts/:z - command: "/usr/bin/bootstrap_host_exec placement su placement -s /bin/bash -c '/container-config-scripts/pyshim.sh /container-config-scripts/placement_wait_for_service.py'" environment: __OS_DEBUG: yaql: expression: str($.data.debug) data: debug: {get_param: Debug} + KOLLA_CONFIG_STRATEGY: COPY_ALWAYS host_prep_tasks: {get_attr: [PlacementLogging, host_prep_tasks]} deploy_steps_tasks: get_attr: [ApacheServiceBase, role_data, deploy_steps_tasks] diff --git a/deployment/rabbitmq/rabbitmq-container-puppet.yaml b/deployment/rabbitmq/rabbitmq-container-puppet.yaml index 6c6298c101..8a06dd32ad 100644 --- a/deployment/rabbitmq/rabbitmq-container-puppet.yaml +++ b/deployment/rabbitmq/rabbitmq-container-puppet.yaml @@ -331,7 +331,7 @@ outputs: step_config: 'include tripleo::profile::base::rabbitmq' config_image: *rabbitmq_config_image volumes: - - /var/lib/config-data/rabbitmq/etc/rabbitmq/:/etc/rabbitmq/:ro + - /var/lib/config-data/puppet-generated/rabbitmq/etc/rabbitmq/:/etc/rabbitmq/:ro - /var/lib/rabbitmq:/var/lib/rabbitmq metadata_settings: if: diff --git a/deployment/rabbitmq/rabbitmq-messaging-notify-container-puppet.yaml b/deployment/rabbitmq/rabbitmq-messaging-notify-container-puppet.yaml index c82d7cead6..3ed7129d24 100644 --- a/deployment/rabbitmq/rabbitmq-messaging-notify-container-puppet.yaml +++ b/deployment/rabbitmq/rabbitmq-messaging-notify-container-puppet.yaml @@ -249,7 +249,7 @@ outputs: step_config: 'include tripleo::profile::base::rabbitmq' config_image: *rabbitmq_config_image volumes: - - /var/lib/config-data/rabbitmq/etc/rabbitmq/:/etc/rabbitmq/:ro + - /var/lib/config-data/puppet-generated/rabbitmq/etc/rabbitmq/:/etc/rabbitmq/:ro - /var/lib/rabbitmq:/var/lib/rabbitmq:z metadata_settings: if: diff --git a/deployment/rabbitmq/rabbitmq-messaging-rpc-container-puppet.yaml b/deployment/rabbitmq/rabbitmq-messaging-rpc-container-puppet.yaml index 7d3716b93b..222059310c 100644 --- a/deployment/rabbitmq/rabbitmq-messaging-rpc-container-puppet.yaml +++ b/deployment/rabbitmq/rabbitmq-messaging-rpc-container-puppet.yaml @@ -249,7 +249,7 @@ outputs: step_config: 'include tripleo::profile::base::rabbitmq' config_image: *rabbitmq_config_image volumes: - - /var/lib/config-data/rabbitmq/etc/rabbitmq/:/etc/rabbitmq/:ro + - /var/lib/config-data/puppet-generated/rabbitmq/etc/rabbitmq/:/etc/rabbitmq/:ro - /var/lib/rabbitmq:/var/lib/rabbitmq:z metadata_settings: if: diff --git a/deployment/swift/swift-ringbuilder-container-puppet.yaml b/deployment/swift/swift-ringbuilder-container-puppet.yaml index c55cecd172..b826dafb54 100644 --- a/deployment/swift/swift-ringbuilder-container-puppet.yaml +++ b/deployment/swift/swift-ringbuilder-container-puppet.yaml @@ -130,7 +130,7 @@ outputs: - 'cp -v -dR --preserve -t /etc/swift /swift_ringbuilder/etc/swift/*.gz /swift_ringbuilder/etc/swift/*.builder /swift_ringbuilder/etc/swift/backups' volumes: - /var/lib/config-data/puppet-generated/swift/etc/swift:/etc/swift:rw,z - - /var/lib/config-data/swift_ringbuilder:/swift_ringbuilder:ro + - /var/lib/config-data/puppet-generated/swift_ringbuilder:/swift_ringbuilder:ro environment: # NOTE: this should force this container to re-run on each # update (scale-out, etc.)