2018-03-05 19:28:35 +01:00
|
|
|
heat_template_version: rocky
|
Render NIC config templates with jinja2
This change converts the existing NIC templates to jinja2 in
order to dynamically render the ports and networks according
to the network_data.yaml. If networks are added to the
network_data.yaml file, parameters will be added to all
NIC templates. The YAML files (as output from jinja with
the default network_data.yaml) are present as an example.
The roles in roles_data.yaml are used to produce NIC configs
for the standard and custom composable roles. In order to
keep the ordering of NICs the same in the multiple-nics
templates, the order of networks was changed in the
network_data.yaml file. This is reflected in the network
templates, and in some of the files that is the only
change.
The roles and roles_data.yaml were modified to include
a legacy name for the NIC config templates for the
built-in roles Controller, Compute, Object Storage,
Block Storage, Ceph Storage, Compute-DPDK, and
Networker roles. There will now be a file produced
with the legacy name, but also one produced with the
<role>-role.j2.yaml format (along with environment
files to help use the new filenames).
Note this change also fixes some typos as well as
a number of templates that had VLANs with device:
entries which were ignored.
Closes-Bug: 1737041
Depends-On: I49c0245c36de3103671080fd1c8cfb3432856f35
Change-Id: I3bdb7d00dab5a023dd8b9c94c0f89f84357ae7a4
2017-11-28 17:00:59 -08:00
|
|
|
|
|
|
|
description: >
|
|
|
|
Software Config to no-op for os-net-config. Using this will allow you
|
|
|
|
to use the parameter driven (init-neutron-ovs) configuration instead.
|
|
|
|
|
|
|
|
parameters:
|
|
|
|
ControlPlaneIp:
|
|
|
|
default: ''
|
|
|
|
description: IP address/subnet on the ctlplane network
|
|
|
|
type: string
|
2018-05-18 18:11:38 +02:00
|
|
|
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
|
2018-06-30 17:48:25 +02:00
|
|
|
ControlPlaneDefaultRoute:
|
|
|
|
default: ''
|
|
|
|
description: The default route of the control plane network. (The parameter
|
|
|
|
is automatically resolved from the ctlplane subnet's gateway_ip attribute.)
|
|
|
|
type: string
|
2018-09-25 01:06:48 +02:00
|
|
|
ControlPlaneStaticRoutes:
|
|
|
|
default: []
|
|
|
|
description: >
|
|
|
|
Routes for the ctlplane network traffic.
|
|
|
|
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
|
|
|
|
Unless the default is changed, the parameter is automatically resolved
|
|
|
|
from the subnet host_routes attribute.
|
|
|
|
type: json
|
2018-09-04 01:08:28 +02:00
|
|
|
ControlPlaneMtu:
|
|
|
|
default: 1500
|
|
|
|
description: The maximum transmission unit (MTU) size(in bytes) that is
|
|
|
|
guaranteed to pass through the data path of the segments in the network.
|
|
|
|
(The parameter is automatically resolved from the ctlplane network's mtu attribute.)
|
|
|
|
type: number
|
2018-07-01 01:13:49 +02:00
|
|
|
DnsServers: # Override this via parameter_defaults
|
|
|
|
default: []
|
|
|
|
description: >
|
|
|
|
DNS servers to use for the Overcloud (2 max for some implementations).
|
|
|
|
If not set the nameservers configured in the ctlplane subnet's
|
|
|
|
dns_nameservers attribute will be used.
|
|
|
|
type: comma_delimited_list
|
2018-06-30 21:07:55 +02:00
|
|
|
EC2MetadataIp: # Here for compatability, not used.
|
|
|
|
default: ''
|
|
|
|
description: The IP address of the EC2 metadata server. (The parameter
|
|
|
|
is automatically resolved from the ctlplane subnet's host_routes attribute.)
|
|
|
|
type: string
|
Render NIC config templates with jinja2
This change converts the existing NIC templates to jinja2 in
order to dynamically render the ports and networks according
to the network_data.yaml. If networks are added to the
network_data.yaml file, parameters will be added to all
NIC templates. The YAML files (as output from jinja with
the default network_data.yaml) are present as an example.
The roles in roles_data.yaml are used to produce NIC configs
for the standard and custom composable roles. In order to
keep the ordering of NICs the same in the multiple-nics
templates, the order of networks was changed in the
network_data.yaml file. This is reflected in the network
templates, and in some of the files that is the only
change.
The roles and roles_data.yaml were modified to include
a legacy name for the NIC config templates for the
built-in roles Controller, Compute, Object Storage,
Block Storage, Ceph Storage, Compute-DPDK, and
Networker roles. There will now be a file produced
with the legacy name, but also one produced with the
<role>-role.j2.yaml format (along with environment
files to help use the new filenames).
Note this change also fixes some typos as well as
a number of templates that had VLANs with device:
entries which were ignored.
Closes-Bug: 1737041
Depends-On: I49c0245c36de3103671080fd1c8cfb3432856f35
Change-Id: I3bdb7d00dab5a023dd8b9c94c0f89f84357ae7a4
2017-11-28 17:00:59 -08:00
|
|
|
{%- for network in networks %}
|
|
|
|
{{network.name}}IpSubnet:
|
|
|
|
default: ''
|
|
|
|
description: IP address/subnet on the {{network.name_lower}} network
|
|
|
|
type: string
|
2018-06-07 03:36:18 -07:00
|
|
|
{{network.name}}InterfaceRoutes:
|
|
|
|
default: []
|
|
|
|
description: >
|
|
|
|
Routes for the {{network.name_lower}} network traffic.
|
|
|
|
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
|
|
|
|
Unless the default is changed, the parameter is automatically resolved
|
|
|
|
from the subnet host_routes attribute.
|
|
|
|
type: json
|
2018-09-04 01:08:28 +02:00
|
|
|
{{network.name}}Mtu:
|
2019-01-07 22:09:27 +01:00
|
|
|
default: {{network.mtu|default('1500')}}
|
2018-09-04 01:08:28 +02:00
|
|
|
description: The maximum transmission unit (MTU) size(in bytes) that is
|
|
|
|
guaranteed to pass through the data path of the segments in the
|
|
|
|
{{network.name}} network.
|
|
|
|
type: number
|
2019-03-26 14:40:10 +01:00
|
|
|
{{network.name}}InterfaceDefaultRoute:
|
|
|
|
default: ''
|
|
|
|
description: default route for the {{network.name_lower}} network
|
|
|
|
type: string
|
2019-04-09 23:00:37 +02:00
|
|
|
{{network.name}}NetworkVlanID:
|
|
|
|
default: {{network.vlan|default(1)}}
|
|
|
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
|
|
|
type: number
|
Render NIC config templates with jinja2
This change converts the existing NIC templates to jinja2 in
order to dynamically render the ports and networks according
to the network_data.yaml. If networks are added to the
network_data.yaml file, parameters will be added to all
NIC templates. The YAML files (as output from jinja with
the default network_data.yaml) are present as an example.
The roles in roles_data.yaml are used to produce NIC configs
for the standard and custom composable roles. In order to
keep the ordering of NICs the same in the multiple-nics
templates, the order of networks was changed in the
network_data.yaml file. This is reflected in the network
templates, and in some of the files that is the only
change.
The roles and roles_data.yaml were modified to include
a legacy name for the NIC config templates for the
built-in roles Controller, Compute, Object Storage,
Block Storage, Ceph Storage, Compute-DPDK, and
Networker roles. There will now be a file produced
with the legacy name, but also one produced with the
<role>-role.j2.yaml format (along with environment
files to help use the new filenames).
Note this change also fixes some typos as well as
a number of templates that had VLANs with device:
entries which were ignored.
Closes-Bug: 1737041
Depends-On: I49c0245c36de3103671080fd1c8cfb3432856f35
Change-Id: I3bdb7d00dab5a023dd8b9c94c0f89f84357ae7a4
2017-11-28 17:00:59 -08:00
|
|
|
{%- endfor %}
|
|
|
|
|
|
|
|
resources:
|
|
|
|
OsNetConfigImpl:
|
|
|
|
type: OS::Heat::StructuredConfig
|
|
|
|
properties:
|
|
|
|
group: apply-config
|
|
|
|
config: {}
|
|
|
|
|
|
|
|
outputs:
|
|
|
|
OS::stack_id:
|
|
|
|
description: The OsNetConfigImpl resource.
|
|
|
|
value: {get_resource: OsNetConfigImpl}
|