Heat templates for deploying OpenStack
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

134 lines
4.7 KiB

heat_template_version: rocky
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
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
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: ''
description: Whether or not we want to activate --debug in tripleo container image prepare.
type: string
constraints:
- allowed_values: [ '', 'true', 'True', 'TRUE', 'false', 'False', 'FALSE']
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 %}
conditions:
service_debug_unset: {equals : [{get_param: ContainerImagePrepareDebug}, '']}
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:
- service_debug_unset
- {get_param: Debug }
- {get_param: ContainerImagePrepareDebug }
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