Skip to content
This repository has been archived by the owner on Feb 29, 2024. It is now read-only.

Commit

Permalink
Set tags on all OS::Neutron::Port resources
Browse files Browse the repository at this point in the history
This combines several changes that added tags to port
resources into one commit.

Set up tag hints on all OS::Neutron::Port resources.
The network-data-v2 work uses tags on neutron resources
to find existing resources so that we update instead
of create. Also for generating environment files info
in the neutron tag field is utilized.

Conflicts:
  network/ports/deployed_port.j2

Related: blueprint network-data-v2-ports
(cherry picked from commit 28f2a70)
(cherry picked from commit 6d39c90)
(cherry picked from commit cea78ad)
(cherry picked from commit 73684d0)
(cherry picked from commit d3b8515)
(cherry picked from commit b4b2bc5)
(cherry picked from commit 659cc55)
Change-Id: I178ac067e4fd77ddfa0eed963c79603576994433
  • Loading branch information
hjensas committed May 21, 2021
1 parent cf17ac9 commit f354795
Show file tree
Hide file tree
Showing 14 changed files with 170 additions and 2 deletions.
8 changes: 8 additions & 0 deletions deployed-server/ctlplane-port.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
heat_template_version: rocky

parameters:
RootStackName:
description: The name of the stack/plan.
type: string
network:
type: string
default: ctlplane
Expand Down Expand Up @@ -33,6 +36,11 @@ resources:
- - {get_param: name}
- port
replacement_policy: AUTO
tags:
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}

outputs:
fixed_ips:
Expand Down
11 changes: 11 additions & 0 deletions deployed-server/deployed-neutron-port.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,20 @@ parameters:
replacement_policy:
default: ''
type: string
tags:
default: []
type: comma_delimited_list
DeployedServerPortMap:
default: {}
type: json
IsVirtualIP: # Here for compatibility
default: false
type: boolean
Role: # Here for compatibility
description: >
The TripleO Role Name
type: string
default: ''


outputs:
Expand Down
8 changes: 8 additions & 0 deletions deployed-server/deployed-server.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
heat_template_version: rocky
parameters:
RootStackName:
description: The name of the stack/plan.
type: string
image:
type: string
default: unused
Expand Down Expand Up @@ -76,6 +79,11 @@ resources:
- - {get_param: name}
- ctlplane
replacement_policy: AUTO
tags:
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}

outputs:
OS::stack_id:
Expand Down
16 changes: 15 additions & 1 deletion network/ports/ctlplane_vip.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ description: >
The IP address will be chosen automatically if FixedIPs is empty.
parameters:
RootStackName:
description: The name of the stack/plan.
type: string
ServiceName: # Here for compatibility with from_service.yaml
description: Name of the service to lookup
default: ''
Expand Down Expand Up @@ -45,6 +48,9 @@ parameters:
[{'ip_address':'1.2.3.4'}]
default: []
type: json
IsVirtualIP: # Here for compatibility
type: boolean
default: false

conditions:
fixed_ip_not_set:
Expand All @@ -67,7 +73,15 @@ resources:
- [{subnet: {get_param: ControlPlaneSubnet}}]
- get_param: FixedIPs
replacement_policy: AUTO

tags:
- str_replace:
template: tripleo_vip_net=$NET_NAME
params:
$NET_NAME: {get_param: ControlPlaneNetwork}
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}
outputs:
ip_address:
description: Virtual IP network IP
Expand Down
3 changes: 3 additions & 0 deletions network/ports/from_service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@ parameters:
[{'ip_address':'1.2.3.4'}]
default: []
type: json
IsVirtualIP: # Here for compatibility
type: boolean
default: false
ServiceVips:
default: {}
type: json
Expand Down
3 changes: 3 additions & 0 deletions network/ports/from_service_v6.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ parameters:
[{'ip_address':'1.2.3.4'}]
default: []
type: json
IsVirtualIP: # Here for compatibility
type: boolean
default: false
ServiceVips:
default: {}
type: json
Expand Down
13 changes: 13 additions & 0 deletions network/ports/noop.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,19 @@ parameters:
default: 0
description: Index of the IP to get from Pool
type: number
IsVirtualIP: # Here for compatibility
type: boolean
default: false
DefaultRoute: # Here for compatibility
description: >
Whether this interface is used for the default route
type: boolean
default: false
Role: # Here for compatibility
description: >
The TripleO Role Name
type: string
default: ''

outputs:
ip_address:
Expand Down
16 changes: 16 additions & 0 deletions network/ports/ovn_mac_addr_port.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ description: >
Port without IP address, used to allocate MAC addresses for OVN chassis.
parameters:
RootStackName:
description: The name of the stack/plan.
type: string
PortName:
description: Name of the port
default: ''
Expand All @@ -20,6 +23,19 @@ resources:
name: {get_param: PortName}
network: {get_param: OVNMacAddressNetworkName}
fixed_ips: []
tags:
- str_replace:
template: tripleo_ovn_mac_port_name=$PORT_NAME
params:
$PORT_NAME: {get_param: PortName}
- str_replace:
template: tripleo_ovn_mac_net=$NET_NAME
params:
$NET_NAME: {get_param: OVNMacAddressNetworkName}
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}

outputs:
mac_address:
Expand Down
39 changes: 39 additions & 0 deletions network/ports/port.j2
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ description: >
automatically if FixedIPs is empty.

parameters:
RootStackName:
description: The name of the stack/plan.
type: string
{{network.name}}NetName:
description: The name of the {{network.name_lower}} network.
default: {{network.name_lower|default(network.name|lower)}}
Expand Down Expand Up @@ -47,6 +50,19 @@ parameters:
NodeIndex: # Here for compatibility with from_pool.yaml
default: 0
type: number
DefaultRoute:
description: >
Whether this interface is used for the default route
type: boolean
default: false
IsVirtualIP:
type: boolean
default: false
Role:
description: >
The TripleO Role Name
type: string
default: ''

conditions:
network_is_ctlplane:
Expand Down Expand Up @@ -81,6 +97,29 @@ resources:
- [{subnet: {get_param: ControlPlaneSubnet}}]
- get_param: FixedIPs
replacement_policy: AUTO
tags:
if:
- {get_param: IsVirtualIP}
- - str_replace:
template: tripleo_vip_net=$NET_NAME
params:
$NET_NAME: {get_param: {{network.name}}NetName}
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}
- - str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}
- str_replace:
template: tripleo_default_route=$BOOL
params:
$BOOL: {get_param: DefaultRoute}
- str_replace:
template: tripleo_role=$ROLE
params:
$ROLE: {get_param: Role}

outputs:
ip_address:
Expand Down
13 changes: 13 additions & 0 deletions network/ports/port_from_pool.j2
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,19 @@ parameters:
{%- endif %}
description: Cidr for the {{network.name_lower}} network.
type: string
DefaultRoute: # Here for compatibility
description: >
Whether this interface is used for the default route
type: boolean
default: false
IsVirtualIP: # Here for compatibility
default: false
type: boolean
Role: # Here for compatibility
description: >
The TripleO Role Name
type: string
default: ''

outputs:
ip_address:
Expand Down
15 changes: 15 additions & 0 deletions network/ports/vip.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ description: >
The IP address will be chosen automatically if FixedIPs is empty.
parameters:
RootStackName:
description: The name of the stack/plan.
type: string
ServiceName: # Here for compatibility with from_service.yaml
description: Name of the service to lookup
default: ''
Expand Down Expand Up @@ -45,6 +48,9 @@ parameters:
[{'ip_address':'1.2.3.4'}]
default: []
type: json
IsVirtualIP: # Here for compatibility
type: boolean
default: false

conditions:
network_is_ctlplane:
Expand Down Expand Up @@ -74,6 +80,15 @@ resources:
- [{subnet: {get_param: ControlPlaneSubnet}}]
- get_param: FixedIPs
replacement_policy: AUTO
tags:
- str_replace:
template: tripleo_service_vip=$SERVICE_NAME
params:
$SERVICE_NAME: {get_param: ServiceName}
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}

outputs:
ip_address:
Expand Down
16 changes: 15 additions & 1 deletion network/ports/vip_v6.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ description: >
The IP address will be chosen automatically if FixedIPs is empty.
parameters:
RootStackName:
description: The name of the stack/plan.
type: string
ServiceName: # Here for compatibility with from_service.yaml
description: Name of the service to lookup
default: ''
Expand Down Expand Up @@ -45,6 +48,9 @@ parameters:
[{'ip_address':'1.2.3.4'}]
default: []
type: json
IsVirtualIP: # Here for compatibility
type: boolean
default: false

conditions:
network_is_ctlplane:
Expand Down Expand Up @@ -74,7 +80,15 @@ resources:
- [{subnet: {get_param: ControlPlaneSubnet}}]
- get_param: FixedIPs
replacement_policy: AUTO

tags:
- str_replace:
template: tripleo_service_vip=$SERVICE_NAME
params:
$SERVICE_NAME: {get_param: ServiceName}
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: RootStackName}
outputs:
ip_address:
description: Virtual IP network IP
Expand Down
7 changes: 7 additions & 0 deletions overcloud.j2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1139,6 +1139,12 @@ resources:
- [{subnet: {get_attr: [ServiceNetMap, vip_subnet_map, ctlplane]}}]
- get_param: ControlFixedIPs
replacement_policy: AUTO
tags:
- tripleo_vip_net=ctlplane
- str_replace:
template: tripleo_stack_name=$STACK_NAME
params:
$STACK_NAME: {get_param: 'OS::stack_name'}

RedisVirtualIP:
depends_on: [Networks, ServiceNetMap]
Expand Down Expand Up @@ -1206,6 +1212,7 @@ resources:
- {get_param: {{network.name}}VirtualFixedIPs}
{%- endif %}
- [{subnet: {get_attr: [ServiceNetMap, vip_subnet_map, {{network.name}}]}}]
IsVirtualIP: true
{%- endfor %}

VipMap:
Expand Down
4 changes: 4 additions & 0 deletions puppet/role.role.j2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -338,6 +338,10 @@ resources:
{%- endif %}
- {get_param: {{role.name}}IPs}
NodeIndex: {get_param: NodeIndex}
{%- if role.default_route_networks is defined and network.name in role.default_route_networks %}
DefaultRoute: true
{%- endif %}
Role: {{role.name}}
{%- endif %}
{%- endfor %}

Expand Down

0 comments on commit f354795

Please sign in to comment.