blob: ac0f6b409a8046d144eb8e745376c73730ac5cb9 [file] [log] [blame]
Gary Wu14a6b302018-05-01 15:59:28 -07001heat_template_version: 2015-10-15
2description: ONAP on Kubernetes using OOM
3
4parameters:
Gary Wu14a6b302018-05-01 15:59:28 -07005 docker_proxy:
6 type: string
7
8 apt_proxy:
9 type: string
10
11 public_net_id:
12 type: string
13 description: The ID of the Public network for floating IP address allocation
14
Gary Wu14a6b302018-05-01 15:59:28 -070015 oam_network_cidr:
16 type: string
17 description: CIDR of the OAM ONAP network
18
Gary Wu14a6b302018-05-01 15:59:28 -070019 ubuntu_1604_image:
20 type: string
21 description: Name of the Ubuntu 16.04 image
22
23 rancher_vm_flavor:
24 type: string
Gary Wu11c98742018-05-02 16:19:04 -070025 description: VM flavor for Rancher
Gary Wu14a6b302018-05-01 15:59:28 -070026
27 k8s_vm_flavor:
28 type: string
Gary Wu11c98742018-05-02 16:19:04 -070029 description: VM flavor for k8s hosts
30
31 integration_override_yaml:
32 type: string
33 description: Content for integration_override.yaml
Gary Wu14a6b302018-05-01 15:59:28 -070034
Gary Wu87aa8b52018-08-09 08:10:24 -070035 integration_gerrit_branch:
Gary Wuc4749702018-06-26 14:27:41 -070036 type: string
37 default: "master"
38
Gary Wu87aa8b52018-08-09 08:10:24 -070039 integration_gerrit_refspec:
40 type: string
41 default: "refs/heads/master"
42
43 oom_gerrit_branch:
44 type: string
45 default: "master"
46
47 oom_gerrit_refspec:
Gary Wuc4749702018-06-26 14:27:41 -070048 type: string
49 default: "refs/heads/master"
50
51 docker_manifest:
52 type: string
Gary Wu87aa8b52018-08-09 08:10:24 -070053 default: ""
Gary Wuc4749702018-06-26 14:27:41 -070054
gwu10db4622018-07-17 22:11:39 -070055 key_name:
56 type: string
57 default: "onap_key"
58
Gary Wu14a6b302018-05-01 15:59:28 -070059resources:
60 random-str:
61 type: OS::Heat::RandomString
62 properties:
63 length: 4
64
65 # ONAP security group
66 onap_sg:
67 type: OS::Neutron::SecurityGroup
68 properties:
69 name:
70 str_replace:
71 template: base_rand
72 params:
73 base: onap_sg
74 rand: { get_resource: random-str }
75 description: security group used by ONAP
76 rules:
77 # All egress traffic
78 - direction: egress
79 ethertype: IPv4
80 - direction: egress
81 ethertype: IPv6
82 # ingress traffic
83 # ICMP
84 - protocol: icmp
85 - protocol: udp
86 port_range_min: 1
87 port_range_max: 65535
88 - protocol: tcp
89 port_range_min: 1
90 port_range_max: 65535
91
92
93 # ONAP management private network
94 oam_network:
95 type: OS::Neutron::Net
96 properties:
97 name:
98 str_replace:
99 template: oam_network_rand
100 params:
101 rand: { get_resource: random-str }
102
103 oam_subnet:
104 type: OS::Neutron::Subnet
105 properties:
106 name:
107 str_replace:
108 template: oam_network_rand
109 params:
110 rand: { get_resource: random-str }
111 network_id: { get_resource: oam_network }
112 cidr: { get_param: oam_network_cidr }
113 dns_nameservers: [ "8.8.8.8" ]
114
115 router:
116 type: OS::Neutron::Router
117 properties:
118 external_gateway_info:
119 network: { get_param: public_net_id }
120
121 router_interface:
122 type: OS::Neutron::RouterInterface
123 properties:
124 router_id: { get_resource: router }
125 subnet_id: { get_resource: oam_subnet }
126
127 rancher_private_port:
128 type: OS::Neutron::Port
129 properties:
130 network: { get_resource: oam_network }
131 fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
132 security_groups:
133 - { get_resource: onap_sg }
134
135 rancher_floating_ip:
136 type: OS::Neutron::FloatingIP
137 properties:
138 floating_network_id: { get_param: public_net_id }
139 port_id: { get_resource: rancher_private_port }
140