44ef2a3ec1
The new master branch should point now to rocky. So, HOT templates should specify that they might contain features for rocky release [1] Also, this submission updates the yaml validation to use only latest heat_version alias. There are cases in which we will need to set the version for specific templates i.e. mixed versions, so there is added a variable to assign specific templates to specific heat_version aliases, avoiding the introductions of error by bulk replacing the the old version in new releases. [1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#rocky Change-Id: Ib17526d9cc453516d99d4659ee5fa51a5aa7fb4b
143 lines
4.8 KiB
YAML
143 lines
4.8 KiB
YAML
heat_template_version: rocky
|
|
|
|
description: >
|
|
OpenStack Octavia Worker service.
|
|
|
|
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
|
|
MonitoringSubscriptionOctaviaWorker:
|
|
default: 'overcloud-octavia-worker'
|
|
type: string
|
|
OctaviaWorkerLoggingSource:
|
|
type: json
|
|
default:
|
|
tag: openstack.octavia.worker
|
|
path: /var/log/octavia/worker.log
|
|
OctaviaAmphoraImageTag:
|
|
default: 'amphora-image'
|
|
description: Glance image tag for identifying the amphora image.
|
|
type: string
|
|
OctaviaAmphoraNetworkList:
|
|
default: []
|
|
description: List of networks to attach to amphorae.
|
|
type: comma_delimited_list
|
|
OctaviaAmphoraSshKeyName:
|
|
type: string
|
|
default: 'octavia-ssh-key'
|
|
description: SSH key name.
|
|
OctaviaLoadBalancerTopology:
|
|
default: ''
|
|
description: Load balancer topology configuration.
|
|
type: string
|
|
OctaviaFlavorId:
|
|
default: 65
|
|
description: Nova flavor ID to be used when creating the nova flavor for
|
|
amphora.
|
|
type: number
|
|
OctaviaFlavorProperties:
|
|
default:
|
|
ram : '1024'
|
|
disk : '3'
|
|
vcpus : '1'
|
|
description: Dictionary describing the nova flavor for amphora.
|
|
type: json
|
|
OctaviaManageNovaFlavor:
|
|
default: true
|
|
description: Configure the nova flavor for the amphora.
|
|
type: boolean
|
|
OctaviaClientCertFile:
|
|
default: '/etc/octavia/certs/client.pem'
|
|
description: client certificate for amphoras
|
|
type: string
|
|
OctaviaClientCert:
|
|
default: ''
|
|
description: Client certificate data. If provided, this will create or update
|
|
a file on the host with the path provided in OctaviaClientCertFile
|
|
with the certificate data.
|
|
type: string
|
|
OctaviaProjectName:
|
|
description: The project name for the keystone Octavia account.
|
|
type: string
|
|
default: 'service'
|
|
|
|
conditions:
|
|
octavia_topology_unset: {equals : [{get_param: OctaviaLoadBalancerTopology}, ""]}
|
|
octavia_client_cert_unset: {equals: [{get_param: OctaviaClientCert}, ""]}
|
|
|
|
resources:
|
|
|
|
OctaviaBase:
|
|
type: ./octavia-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 Octavia WoWorker service.
|
|
value:
|
|
service_name: octavia_worker
|
|
monitoring_subscription: {get_param: MonitoringSubscriptionOctaviaWorker}
|
|
config_settings:
|
|
map_merge:
|
|
- get_attr: [OctaviaBase, role_data, config_settings]
|
|
- octavia::worker::amp_boot_network_list: {get_param: OctaviaAmphoraNetworkList}
|
|
octavia::worker::amp_flavor_id: {get_param: OctaviaFlavorId}
|
|
octavia::worker::amp_image_tag: {get_param: OctaviaAmphoraImageTag}
|
|
octavia::worker::amp_project_name: {get_param: OctaviaProjectName}
|
|
octavia::worker::amp_ssh_key_name: {get_param: OctaviaAmphoraSshKeyName}
|
|
octavia::worker::nova_flavor_config: {get_param: OctaviaFlavorProperties}
|
|
octavia::worker::manage_nova_flavor: {get_param: OctaviaManageNovaFlavor}
|
|
octavia::worker::nova_flavor_config: {get_param: OctaviaFlavorProperties}
|
|
octavia::worker::enable_ssh_access: true
|
|
octavia::certificates::client_cert: {get_param: OctaviaClientCertFile}
|
|
-
|
|
if:
|
|
- octavia_topology_unset
|
|
- {}
|
|
- octavia::worker::loadbalancer_topology: {get_param: OctaviaLoadBalancerTopology}
|
|
-
|
|
if:
|
|
- octavia_client_cert_unset
|
|
- {}
|
|
- octavia::certificates::client_cert_data: {get_param: OctaviaClientCert}
|
|
|
|
service_config_settings:
|
|
fluentd:
|
|
tripleo_fluentd_groups_octavia_worker:
|
|
- octavia
|
|
tripleo_fluentd_sources_octavia_worker:
|
|
- {get_param: OctaviaWorkerLoggingSource}
|
|
step_config: |
|
|
include tripleo::profile::base::octavia::worker
|
|
|