6ab86a3ebe
Use get_attr on the server resource to resolve attribute value from the subnet(s) and pass it to the parameter 'ControlPlaneSubnetCidr' used in the THT/network/config/* templates. As the value is now resolved from resource attributes, this changes the default for 'ControlPlaneSubnetCidr' to '' as well as the comment that these value should be overriden in parameters_defaults. It also removes the parameter from network-environment templates. A conditinal is used in puppet/role.role.j2.yaml so that the parameter value is used whenever it is not '' (the default) to provide backwards compatibility in case the user set a different value (different from the one used in undercloud.conf) for this parameter in network-environment.yaml. When deploying a routed control plane the network config templates would previously need to be updated to carry 'ControlPlaneXSubnetCidr' parameter (in case the subnet mask is not the same for all the routed network leafs). With 8 Leafs in addition to the network local to the undercloud that is 8 parameters less to place in the configuration. By getting the value to pass from the server resource this change reduces the required nic-config template customisation (reduces the risk of user error). Partial: blueprint tripleo-routed-networks-templates Change-Id: I92ee0f9a2107cdf1ca5903d3756a235a79c36c73
47 lines
1.3 KiB
YAML
47 lines
1.3 KiB
YAML
heat_template_version: rocky
|
|
description: >
|
|
Software Config to drive os-net-config for a simple interface on a bridge.
|
|
parameters:
|
|
ControlPlaneIp:
|
|
default: ''
|
|
description: IP address/subnet on the ctlplane network
|
|
type: string
|
|
ControlPlaneSubnetCidr:
|
|
default: ''
|
|
description: >
|
|
The subnet CIDR of the control plane network. (The parameter is
|
|
automatically resolved from the ctlplane subnet's cidr attribute.)
|
|
type: string
|
|
{%- for network in networks %}
|
|
{{network.name}}IpSubnet:
|
|
default: ''
|
|
description: IP address/subnet on the {{network.name_lower}} network
|
|
type: string
|
|
{%- endfor %}
|
|
resources:
|
|
OsNetConfigImpl:
|
|
type: OS::Heat::SoftwareConfig
|
|
properties:
|
|
group: script
|
|
config:
|
|
str_replace:
|
|
template:
|
|
get_file: network/scripts/run-os-net-config.sh
|
|
params:
|
|
$network_config:
|
|
network_config:
|
|
- type: ovs_bridge
|
|
name: bridge_name
|
|
use_dhcp: true
|
|
members:
|
|
- type: interface
|
|
name: interface_name
|
|
# force the MAC address of the bridge to this interface
|
|
primary: true
|
|
outputs:
|
|
OS::stack_id:
|
|
description: The OsNetConfigImpl resource.
|
|
value:
|
|
get_resource: OsNetConfigImpl
|
|
|