blob: a992dc8df1ce9cd53851935f1d90863703f760eb [file] [log] [blame]
Ilya Bumarskov128d4d22021-12-27 10:43:09 +04001heat_template_version: queens
2
3parameters:
4 linux_img:
5 type: string
6 description: Name of image to use for servers
7 linux_flav:
8 type: string
9 description: Name of image to use for servers
10 junos_flav:
11 type: string
12 description: Name of image to use for servers
13 junos_img:
14 type: string
15 description: Name of image to use for servers
16 vmx_gateway_ip:
17 type: string
18 description: Default GW for vmx
19 vmx_lo_ip:
20 type: string
21 description: lo ip addr (used for BGP peering)
22 evpn_network_vmx_ip:
23 type: string
24 description: vmx ip addr in a network for evpn test
25
26 accessible_network_id:
27 type: string
28 control_network_cidr:
29 type: string
30 control_network_vmx_ip:
31 type: string
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040032 tun_network_cidr:
33 type: string
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040034 private_floating_network_gateway:
35 type: string
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040036 evpn_network_cidr:
37 type: string
38 evpn_network_ipam_pool_start:
39 type: string
40 evpn_network_ipam_pool_end:
41 type: string
Mykyta Karpinad86fe72025-01-20 08:25:20 +010042 vmx_data_network_id:
43 type: string
44 vmx_data_network_vmx_ip:
45 type: string
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040046 public_net_id:
47 type: string
48
49resources:
50
51 accessible_server_port:
52 type: OS::Neutron::Port
53 properties:
54 network_id: { get_param: accessible_network_id }
55 port_security_enabled: false
56 fixed_ips:
57 - ip_address: {get_param: control_network_vmx_ip }
58
Mykyta Karpinad86fe72025-01-20 08:25:20 +010059 vmx_data_server_port:
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040060 type: OS::Neutron::Port
61 properties:
Mykyta Karpinad86fe72025-01-20 08:25:20 +010062 network_id: { get_param: vmx_data_network_id }
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040063 port_security_enabled: false
64 fixed_ips:
Mykyta Karpinad86fe72025-01-20 08:25:20 +010065 - ip_address: { get_param: vmx_data_network_vmx_ip}
Ilya Bumarskov128d4d22021-12-27 10:43:09 +040066
67 server_floating_ip:
68 type: OS::Neutron::FloatingIP
69 properties:
70 floating_network_id: { get_param: public_net_id }
71 port_id: { get_resource: accessible_server_port }
72
73 vmx_int_network:
74 type: OS::Networking::VmxInternalNet
75
76 evpn_network:
77 type: OS::Networking::VmxFpcEvpnNet
78 properties:
79 evpn_network_cidr: { get_param: evpn_network_cidr }
80 evpn_network_ipam_pool_start: { get_param: evpn_network_ipam_pool_start }
81 evpn_network_ipam_pool_end: { get_param: evpn_network_ipam_pool_end }
82
83 evpn_server_port:
84 type: OS::Neutron::Port
85 properties:
86 network_id: { get_attr: [ evpn_network, evpn_network_id ] }
87 port_security_enabled: false
88 fixed_ips:
89 - ip_address: { get_param: evpn_network_vmx_ip }
90
91 re0:
92 type: OS::Nova::VmxRe
93 properties:
94 junos_flav: { get_param: junos_flav }
95 junos_img: { get_param: junos_img }
96 re_pfe_network: { get_attr: [ vmx_int_network, re_pfe_network ] }
97 access_port: { get_resource: accessible_server_port }
98 access_port_ip: {get_param: control_network_vmx_ip }
99 control_network_cidr: { get_param: control_network_cidr }
100 gateway_ip: { get_param: vmx_gateway_ip }
101 lo_ip: { get_param: vmx_lo_ip }
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400102 tun_network_cidr: { get_param: tun_network_cidr }
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400103 evpn_port_ip: { get_param: evpn_network_vmx_ip }
104
105 fpc0:
106 type: OS::Nova::VmxFpcSingle
107 properties:
108 linux_img: { get_param: linux_img }
109 linux_flav: { get_param: linux_flav }
110 id: 0
111 re0_ip: { get_attr: [ fpc0_fixed_net, external_ip ] }
112 all_ports: [ { get_attr: [ fpc0_fixed_net, external_port ] },
113 { get_attr: [ fpc0_fixed_net, internal_port ] },
Mykyta Karpinad86fe72025-01-20 08:25:20 +0100114 { get_resource: evpn_server_port },
115 { get_resource: vmx_data_server_port } ]
Ilya Bumarskov128d4d22021-12-27 10:43:09 +0400116
117 fpc0_fixed_net:
118 type: OS::Networking::VmxFpcFixedNet
119 properties:
120 public_network: { get_param: accessible_network_id }
121 re_pfe_network: { get_attr: [ vmx_int_network, re_pfe_network ] }
122 id: 0
123 internal_ip: 128.0.0.16
124
125outputs:
126 re_floating_ip:
127 description: Floating IP address of server in public network
128 value: { get_attr: [ server_floating_ip, floating_ip_address ] }
Anton Samoylov584ffbc2022-03-11 18:10:56 +0400129 evpn_network_id:
130 description: Id of network for evpn tests
131 value: { get_attr: [ evpn_network, evpn_network_id ] }