tripleo-heat-templates/deployment/nova/nova-libvirt-guests-container-puppet.yaml
Alex Schultz ebab335f38 Role specific container support
We may want to be able to specific different containers at a role level.
This requires switching the container image parameters to be role
specific too allow for role based overrides.

Change-Id: I4090e889a32abd51e7c11139737a7a18e27d18e7
2022-01-21 14:18:02 -07:00

80 lines
2.8 KiB
YAML

heat_template_version: wallaby
description: >
Configure libvirt-guests
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. Use
parameter_merge_strategies to merge it with the defaults.
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
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
ContainerNovaLibvirtConfigImage:
description: The container image to use for the nova_libvirt config_volume
type: string
tags:
- role_specific
NovaResumeGuestsStateOnHostBoot:
default: false
description: Whether to start running instance on compute host reboot
type: boolean
tags:
- role_specific
NovaResumeGuestsShutdownTimeout:
default: 300
description: Number of seconds we're willing to wait for a guest to
shut down. If this is 0, then there is no time out (use
with caution, as guests might not respond to a shutdown
request). The default value is 300 seconds (5 minutes).
type: string
tags:
- role_specific
resources:
RoleParametersValue:
type: OS::Heat::Value
properties:
type: json
value:
map_replace:
- map_replace:
- tripleo::profile::base::nova::compute::libvirt_guests::enabled: NovaResumeGuestsStateOnHostBoot
nova::compute::libvirt_guests::shutdown_timeout: NovaResumeGuestsShutdownTimeout
ContainerNovaLibvirtConfigImage: ContainerNovaLibvirtConfigImage
- values: {get_param: [RoleParameters]}
- values:
NovaResumeGuestsStateOnHostBoot: {get_param: NovaResumeGuestsStateOnHostBoot}
NovaResumeGuestsShutdownTimeout: {get_param: NovaResumeGuestsShutdownTimeout}
ContainerNovaLibvirtConfigImage: {get_param: ContainerNovaLibvirtConfigImage}
outputs:
role_data:
description: Role data for libvirt-guests
value:
service_name: nova_libvirt_guests
config_settings: {get_attr: [RoleParametersValue, value]}
puppet_config:
config_volume: nova_libvirt
puppet_tags: libvirtd_config,nova_config,file,libvirt_tls_password
step_config: |
include tripleo::profile::base::nova::compute::libvirt_guests
config_image: {get_attr: [RoleParametersValue, value, ContainerNovaLibvirtConfigImage]}