blob: 78e6f103b54362810a7146259f98edeb3930d36f [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 Wuc4749702018-06-26 14:27:41 -070035 gerrit_branch:
36 type: string
37 default: "master"
38
39 gerrit_refspec:
40 type: string
41 default: "refs/heads/master"
42
43 docker_manifest:
44 type: string
45 default: "docker-manifest.csv"
46
Gary Wu14a6b302018-05-01 15:59:28 -070047resources:
48 random-str:
49 type: OS::Heat::RandomString
50 properties:
51 length: 4
52
53 # ONAP security group
54 onap_sg:
55 type: OS::Neutron::SecurityGroup
56 properties:
57 name:
58 str_replace:
59 template: base_rand
60 params:
61 base: onap_sg
62 rand: { get_resource: random-str }
63 description: security group used by ONAP
64 rules:
65 # All egress traffic
66 - direction: egress
67 ethertype: IPv4
68 - direction: egress
69 ethertype: IPv6
70 # ingress traffic
71 # ICMP
72 - protocol: icmp
73 - protocol: udp
74 port_range_min: 1
75 port_range_max: 65535
76 - protocol: tcp
77 port_range_min: 1
78 port_range_max: 65535
79
80
81 # ONAP management private network
82 oam_network:
83 type: OS::Neutron::Net
84 properties:
85 name:
86 str_replace:
87 template: oam_network_rand
88 params:
89 rand: { get_resource: random-str }
90
91 oam_subnet:
92 type: OS::Neutron::Subnet
93 properties:
94 name:
95 str_replace:
96 template: oam_network_rand
97 params:
98 rand: { get_resource: random-str }
99 network_id: { get_resource: oam_network }
100 cidr: { get_param: oam_network_cidr }
101 dns_nameservers: [ "8.8.8.8" ]
102
103 router:
104 type: OS::Neutron::Router
105 properties:
106 external_gateway_info:
107 network: { get_param: public_net_id }
108
109 router_interface:
110 type: OS::Neutron::RouterInterface
111 properties:
112 router_id: { get_resource: router }
113 subnet_id: { get_resource: oam_subnet }
114
115 rancher_private_port:
116 type: OS::Neutron::Port
117 properties:
118 network: { get_resource: oam_network }
119 fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
120 security_groups:
121 - { get_resource: onap_sg }
122
123 rancher_floating_ip:
124 type: OS::Neutron::FloatingIP
125 properties:
126 floating_network_id: { get_param: public_net_id }
127 port_id: { get_resource: rancher_private_port }
128