Deployment Script made more flexible
[integration.git] / deployment / heat / onap-oom / parts / onap-oom-1.yaml
1 heat_template_version: 2015-10-15
2 description: ONAP on Kubernetes using OOM
3
4 parameters:
5   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
15   oam_network_cidr:
16     type: string
17     description: CIDR of the OAM ONAP network
18
19   ubuntu_1604_image:
20     type: string
21     description: Name of the Ubuntu 16.04 image
22
23   rancher_vm_flavor:
24     type: string
25     description: VM flavor for Rancher
26
27   k8s_vm_flavor:
28     type: string
29     description: VM flavor for k8s hosts
30
31   integration_override_yaml:
32     type: string
33     description: Content for integration_override.yaml
34
35   integration_gerrit_branch:
36     type: string
37     default: "master"
38
39   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:
48     type: string
49     default: "refs/heads/master"
50
51   docker_manifest:
52     type: string
53     default: ""
54
55   key_name:
56     type: string
57     default: "onap_key"
58
59   docker_version:
60     type: string
61     default: "17.03"
62
63   rancher_version:
64     type: string
65     default: "1.6.18"
66
67   rancher_agent_version:
68     type: string
69     default: "1.2.10"
70
71   kubectl_version:
72     type: string
73     default: "1.8.10"
74
75   helm_version:
76     type: string
77     default: "2.9.1"
78
79 resources:
80   random-str:
81     type: OS::Heat::RandomString
82     properties:
83       length: 4
84
85   # ONAP security group
86   onap_sg:
87     type: OS::Neutron::SecurityGroup
88     properties:
89       name:
90         str_replace:
91           template: base_rand
92           params:
93             base: onap_sg
94             rand: { get_resource: random-str }
95       description: security group used by ONAP
96       rules:
97         # All egress traffic
98         - direction: egress
99           ethertype: IPv4
100         - direction: egress
101           ethertype: IPv6
102         # ingress traffic
103         # ICMP
104         - protocol: icmp
105         - protocol: udp
106           port_range_min: 1
107           port_range_max: 65535
108         - protocol: tcp
109           port_range_min: 1
110           port_range_max: 65535
111
112
113   # ONAP management private network
114   oam_network:
115     type: OS::Neutron::Net
116     properties:
117       name:
118         str_replace:
119           template: oam_network_rand
120           params:
121             rand: { get_resource: random-str }
122
123   oam_subnet:
124     type: OS::Neutron::Subnet
125     properties:
126       name:
127         str_replace:
128           template: oam_network_rand
129           params:
130             rand: { get_resource: random-str }
131       network_id: { get_resource: oam_network }
132       cidr: { get_param: oam_network_cidr }
133       dns_nameservers: [ "8.8.8.8" ]
134
135   router:
136     type: OS::Neutron::Router
137     properties:
138       name:
139         list_join: ['-', [{ get_param: 'OS::stack_name' }, 'router']]
140       external_gateway_info:
141         network: { get_param: public_net_id }
142
143   router_interface:
144     type: OS::Neutron::RouterInterface
145     properties:
146       router_id: { get_resource: router }
147       subnet_id: { get_resource: oam_subnet }
148
149   rancher_private_port:
150     type: OS::Neutron::Port
151     properties:
152       network: { get_resource: oam_network }
153       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
154       security_groups:
155       - { get_resource: onap_sg }
156
157   rancher_floating_ip:
158     type: OS::Neutron::FloatingIP
159     properties:
160       floating_network_id: { get_param: public_net_id }
161       port_id: { get_resource: rancher_private_port }
162