[TF] Add separate network for TF data plane
Related-PROD: PRODX-4735
Change-Id: I0e4209d4d8ff146442360a87696942172b687747
diff --git a/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml b/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml
index 8ba5d55..5a4d94a 100644
--- a/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml
+++ b/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml
@@ -52,6 +52,12 @@
type: string
ironic_baremetal_network_cidr:
type: string
+ tungstenfabric_enabled:
+ type: boolean
+ tf_data_network:
+ type: string
+ tf_data_subnet_id:
+ type: string
functions_override:
type: string
boot_timeout:
@@ -80,6 +86,10 @@
mounts:
- [ ephemeral0, null ]
+conditions:
+ create_tf_data_network_res:
+ get_param: tungstenfabric_enabled
+
resources:
software_config:
@@ -141,11 +151,19 @@
key_name: { get_param: key_name }
availability_zone: nova
networks:
- - port: { get_resource: accessible_server_port }
- - port: { get_resource: private_floating_server_port }
- - port: { get_resource: storage_frontend_server_port }
- - port: { get_resource: storage_backend_server_port }
- - port: { get_resource: ironic_baremetal_server_port }
+ if:
+ - "create_tf_data_network_res"
+ - - port: { get_resource: accessible_server_port }
+ - port: { get_resource: private_floating_server_port }
+ - port: { get_resource: storage_frontend_server_port }
+ - port: { get_resource: storage_backend_server_port }
+ - port: { get_resource: ironic_baremetal_server_port }
+ - port: { get_resource: tf_data_server_port }
+ - - port: { get_resource: accessible_server_port }
+ - port: { get_resource: private_floating_server_port }
+ - port: { get_resource: storage_frontend_server_port }
+ - port: { get_resource: storage_backend_server_port }
+ - port: { get_resource: ironic_baremetal_server_port }
user_data_format: SOFTWARE_CONFIG
user_data: { get_resource: install_config_agent}
metadata: { get_param: metadata }
@@ -196,6 +214,15 @@
fixed_ips:
- subnet: { get_param: ironic_baremetal_subnet_id }
+ tf_data_server_port:
+ type: OS::Neutron::Port
+ condition: create_tf_data_network_res
+ properties:
+ network_id: { get_param: tf_data_network }
+ port_security_enabled: false
+ fixed_ips:
+ - subnet: { get_param: tf_data_subnet_id }
+
wait_handle:
type: OS::Heat::WaitConditionHandle
wait_condition:
@@ -214,6 +241,10 @@
server_ironic_baremetal_ip:
description: IP address of server in ironic baremetal network
value: { get_attr: [ironic_baremetal_server_port, fixed_ips, 0, ip_address] }
+ server_tf_data_ip:
+ description: IP address of server in tf data network
+ value: { get_attr: [tf_data_server_port, fixed_ips, 0, ip_address] }
+ condition: create_tf_data_network_res
server_public_ip:
description: Floating IP address of server in public network
value: { get_attr: [ server_floating_ip, floating_ip_address ] }