Rename heat_watch_server_url to watch_server_url
[apex-tripleo-heat-templates.git] / undercloud-vm.yaml
1 Description: All-in-one baremetal OpenStack and all dependencies.
2 HeatTemplateFormatVersion: '2012-12-12'
3 Parameters:
4   AdminPassword:
5     Default: unset
6     Description: The password for the keystone admin account, used for monitoring, querying neutron etc.
7     Type: String
8     NoEcho: true
9   AdminToken:
10     Default: unset
11     Description: The keystone auth secret.
12     Type: String
13     NoEcho: true
14   BaremetalArch:
15     Default: i386
16     Description: The architecture to use in Nova-BM - i386 or amd64.
17     Type: String
18   Flavor:
19     Default: baremetal
20     Description: Flavor to request when deploying.
21     Type: String
22   GlancePassword:
23     Default: unset
24     Description: The password for the glance service account, used by the glance services.
25     Type: String
26     NoEcho: true
27   KeyName:
28     Default: default
29     Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
30     Type: String
31   HeatPassword:
32     Default: unset
33     Description: The password for the Heat service account, used by the Heat services.
34     Type: String
35     NoEcho: true
36   Image:
37     Default: undercloud
38     Type: String
39   NeutronPassword:
40     Default: unset
41     Description: The password for the neutron service account, used by neutron agents.
42     Type: String
43     NoEcho: true
44   NeutronNativePXE:
45     Default: ''
46     Type: String
47     Description: Set truthy to enable Neutron native PXE.
48   NeutronPublicInterface:
49     Default: eth0
50     Description: What interface to bridge onto br-ex for network nodes.
51     Type: String
52   NovaPassword:
53     Default: unset
54     Description: The password for the nova service account, used by nova-api.
55     Type: String
56     NoEcho: true
57   PowerManager:
58     Default: nova.virt.baremetal.virtual_power_driver.VirtualPowerManager
59     Description: Bare metal power manager driver.
60     Type: String
61   PowerUserName:
62     Default: stack
63     Description: What username to ssh to the virtual power host with.
64     Type: String
65 Resources:
66   AccessPolicy:
67     Properties:
68       AllowedResources:
69       - notcomputeConfig
70     Type: OS::Heat::AccessPolicy
71   Key:
72     Properties:
73       UserName:
74         Ref: User
75     Type: AWS::IAM::AccessKey
76   User:
77     Properties:
78       Policies:
79       - Ref: AccessPolicy
80     Type: AWS::IAM::User
81   notcomputeConfig:
82     Type: AWS::AutoScaling::LaunchConfiguration
83     Properties:
84       ImageId: '0'
85       InstanceType: foo
86     Metadata:
87       OpenStack::Role: notcomputeConfig
88       OpenStack::Heat::Stack: {}
89       Openstack::ImageBuilder::Elements: [ boot-stack, heat-cfntools, neutron-network-node ]
90       admin-password:
91         Ref: AdminPassword
92       admin-token: 
93         Ref: AdminToken
94       controller-address:
95         Fn::Select:
96           - 0
97           - Fn::Select:
98             - "ctlplane"
99             - Fn::GetAtt:
100               - notcompute
101               - networks
102       cinder:
103         db: mysql://cinder:unset@localhost/cinder
104         volume_size_mb: '5000'
105       db-password: unset
106       glance:
107         db: mysql://glance:unset@localhost/glance
108         host: 127.0.0.1
109         service-password:
110           Ref: GlancePassword
111       heat:
112         admin_password:
113           Ref: HeatPassword
114         admin_tenant_name: service
115         admin_user: heat
116         auth_encryption_key: unset___________
117         db: mysql://heat:unset@localhost/heat
118         watch_server_url:
119           Fn::Join:
120             - ''
121             - - http://
122               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
123               - ":8003"
124         metadata_server_url:
125           Fn::Join:
126             - ''
127             - - http://
128               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
129               - ":8000"
130         waitcondition_server_url:
131           Fn::Join:
132             - ''
133             - - http://
134               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
135               - ":8000/v1/waitcondition"
136       os-collect-config:
137         cfn:
138           access_key_id:
139             Ref: Key
140           path: notcomputeConfig.Metadata
141           secret_access_key:
142             Fn::GetAtt:
143             - Key
144             - SecretAccessKey
145           stack_name:
146             Ref: AWS::StackName
147       keystone:
148         db: mysql://keystone:unset@localhost/keystone
149         host: 127.0.0.1
150       nova:
151         compute_hostname: undercloud
152         compute_driver: baremetal.driver.BareMetalDriver
153         db: mysql://nova:unset@localhost/nova
154         host: 127.0.0.1
155         metadata-proxy: false
156         tuning:
157           ram_allocation_ratio: 1.0
158           reserved_host_memory_mb: 0
159         baremetal:
160           use_file_injection: "False"
161           arch:
162             Ref: BaremetalArch
163           db: mysql://nova:unset@localhost/nova_bm
164           power_manager:
165             Ref: PowerManager
166           pxe_deploy_timeout: 2400
167           virtual_power:
168             user:
169               Ref: PowerUserName
170             key: /opt/stack/boot-stack/virtual-power-key
171             ssh_host: 192.168.122.1
172             type: virsh
173         service-password:
174           Ref: NovaPassword
175       neutron:
176         host: 127.0.0.1
177         native_pxe:
178           Ref: NeutronNativePXE
179         ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8
180         ovs:
181           dnsmasq_range: [192.0.2.25, 192.0.2.44]
182           public_interface:
183             Ref: NeutronPublicInterface
184           physical_bridge: br-ctlplane
185           physical_network: ctlplane
186           network_vlan_ranges: ctlplane
187           bridge_mappings: ctlplane:br-ctlplane
188           tenant_network_type: vlan
189           enable_tunneling: 'False'
190         service-password:
191           Ref: NeutronPassword
192       rabbit:
193         host: 127.0.0.1
194         password: guest
195   notcompute:
196     Type: OS::Nova::Server
197     Properties:
198       image:
199         Ref: Image
200       flavor:
201         Ref: Flavor
202       key_name:
203         Ref: KeyName
204     Metadata:
205       os-collect-config:
206         cfn:
207           access_key_id:
208             Ref: Key
209           path: notcomputeConfig.Metadata
210           secret_access_key:
211             Fn::GetAtt:
212             - Key
213             - SecretAccessKey
214           stack_name:
215             Ref: AWS::StackName