9104980524
This is required for a containerized undercloud to perform workflow driven container image prepare during overcloud deployment. This moves the MistralDockerGroup parameter out of mistral-base since this is only required for the executor. Further changes will be needed to puppet-tripleo to use 'group' and 'user' instead of ensure_resource, and also to ensure that the created docker group inside the executor container has the same gid as the docker group on the host, but these can depend on this change for testing. Change-Id: I429c72c0334a177d1ec37c3d9c13b7ba983de734 Blueprint: container-prepare-workflow
82 lines
2.7 KiB
YAML
82 lines
2.7 KiB
YAML
heat_template_version: rocky
|
|
|
|
description: >
|
|
Openstack Mistral API service configured with Puppet
|
|
|
|
parameters:
|
|
ServiceData:
|
|
default: {}
|
|
description: Dictionary packing service data
|
|
type: json
|
|
ServiceNetMap:
|
|
default: {}
|
|
description: Mapping of service_name -> network name. Typically set
|
|
via parameter_defaults in the resource registry. This
|
|
mapping overrides those in ServiceNetMapDefaults.
|
|
type: json
|
|
DefaultPasswords:
|
|
default: {}
|
|
type: json
|
|
RoleName:
|
|
default: ''
|
|
description: Role name on which the service is applied
|
|
type: string
|
|
RoleParameters:
|
|
default: {}
|
|
description: Parameters specific to the role
|
|
type: json
|
|
EndpointMap:
|
|
default: {}
|
|
description: Mapping of service endpoint -> protocol. Typically set
|
|
via parameter_defaults in the resource registry.
|
|
type: json
|
|
MistralDockerGroup:
|
|
default: false
|
|
description: Add the mistral user to the docker group to allow actions to perform docker operations.
|
|
type: boolean
|
|
|
|
resources:
|
|
MistralBase:
|
|
type: ./mistral-base.yaml
|
|
properties:
|
|
ServiceData: {get_param: ServiceData}
|
|
ServiceNetMap: {get_param: ServiceNetMap}
|
|
DefaultPasswords: {get_param: DefaultPasswords}
|
|
EndpointMap: {get_param: EndpointMap}
|
|
RoleName: {get_param: RoleName}
|
|
RoleParameters: {get_param: RoleParameters}
|
|
|
|
outputs:
|
|
role_data:
|
|
description: Role data for the Mistral Executor role.
|
|
value:
|
|
service_name: mistral_executor
|
|
config_settings:
|
|
map_merge:
|
|
- get_attr: [MistralBase, role_data, config_settings]
|
|
- tripleo::profile::base::mistral::executor::docker_group: {get_param: MistralDockerGroup}
|
|
step_config: |
|
|
include ::tripleo::profile::base::mistral::executor
|
|
upgrade_tasks:
|
|
- name: Check if mistral executor is deployed
|
|
command: systemctl is-enabled openstack-mistral-executor
|
|
tags: common
|
|
ignore_errors: True
|
|
register: mistral_executor_enabled
|
|
- name: "PreUpgrade step0,validation: Check if openstack-mistral-executor is running"
|
|
shell: >
|
|
/usr/bin/systemctl show 'openstack-mistral-executor' --property ActiveState |
|
|
grep '\bactive\b'
|
|
when:
|
|
- step|int == 0
|
|
- mistral_executor_enabled.rc == 0
|
|
tags: validation
|
|
- name: Stop mistral_executor service
|
|
when: step|int == 1
|
|
service: name=openstack-mistral-executor state=stopped
|
|
- name: Install openstack-mistral-executor package if it was disabled
|
|
yum: name=openstack-mistral-executor state=latest
|
|
when:
|
|
- step|int == 3
|
|
- mistral_executor_enabled.rc != 0
|