tripleo-heat-templates/deployment/container-image-prepare/container-image-prepare-baremetal-ansible.j2.yaml
ramishra c9991c2e31 Use 'wallaby' heat_template_version
With I57047682cfa82ba6ca4affff54fab5216e9ba51c Heat has added
a new template version for wallaby. This would allow us to use
2-argument variant of the ``if`` function that would allow for
 e.g. conditional definition of resource properties and help
cleanup templates. If only two arguments are passed to ``if``
function, the entire enclosing item is removed when the condition
is false.

Change-Id: I25f981b60c6a66b39919adc38c02a051b6c51269
2021-03-31 17:35:12 +05:30

126 lines
4.4 KiB
YAML

heat_template_version: wallaby
description: >
Prepare container images
parameters:
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
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
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
ContainerImagePrepare:
default: {}
description: Used to run "openstack tripleo container image prepare".
This is run after the registry is installed to populate
the registry with images.
type: json
ContainerImagePrepareLogFile:
default: '/var/log/tripleo-container-image-prepare.log'
type: string
description: Used to store outputs of "openstack tripleo container image prepare".
DockerInsecureRegistryAddress:
description: Optional. The IP Address and Port of an insecure docker
namespace that will be configured in /etc/sysconfig/docker.
The value can be multiple addresses separated by commas.
type: comma_delimited_list
default: []
NeutronMechanismDrivers:
default: 'ovn'
description: |
The mechanism drivers for the Neutron tenant network.
type: comma_delimited_list
DockerRegistryMirror:
description: Optional. Mirror to use for registry docker.io
default: ''
type: string
Debug:
default: false
description: Set to True to enable debugging on all services.
type: boolean
ContainerImagePrepareDebug:
default: false
description: Whether or not we want to activate --debug in tripleo container image prepare.
type: boolean
ContainerImageRegistryCredentials:
type: json
hidden: true
default: {}
description: |
Mapping of image registry hosts to login credentials. Must be in the following example format
docker.io:
username: pa55word
'192.0.2.1:8787':
registry_username: password
AdditionalArchitectures:
default: []
description: List of additional architectures to enable.
type: comma_delimited_list
{% for role in roles %}
# Parameters generated for {{role.name}} Role
{{ role.name }}Services:
description: A list of service resources (configured in the Heat
resource_registry) which represent nested stacks
for each service that should get installed on the {{role.name}} role.
type: comma_delimited_list
{{ role.name }}Count:
description: Number of {{role.name}} nodes to deploy
type: number
default: {{role.CountDefault|default(0)}}
{% endfor %}
outputs:
role_data:
description: Role data for container image prepare
value:
service_name: container_image_prepare
external_deploy_tasks:
- name: Run tripleo-container-image-prepare role
import_role:
name: tripleo_container_image_prepare
vars:
tripleo_container_image_prepare_log_file: {get_param: ContainerImagePrepareLogFile}
tripleo_container_image_prepare_debug:
if:
- {get_param: ContainerImagePrepareDebug}
- true
- {get_param: Debug}
tripleo_container_image_prepare_roles: {{ roles }}
tripleo_container_image_prepare_content:
parameter_defaults:
ContainerImagePrepare: {get_param: ContainerImagePrepare}
DockerInsecureRegistryAddress: {get_param: DockerInsecureRegistryAddress}
NeutronMechanismDrivers: {get_param: NeutronMechanismDrivers}
DockerRegistryMirror: {get_param: DockerRegistryMirror}
ContainerImageRegistryCredentials: {get_param: ContainerImageRegistryCredentials}
AdditionalArchitectures: {get_param: AdditionalArchitectures}
{% for role in roles %}
{{ role.name }}Services: {get_param: {{role.name}}Services}
{{ role.name }}Count: {get_param: {{role.name}}Count}
{% endfor %}
when:
- (step | int) == 1