Add metadata to configure swift
[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   NeutronPublicInterface:
45     Default: eth0
46     Description: What interface to bridge onto br-ex for network nodes.
47     Type: String
48   NovaPassword:
49     Default: unset
50     Description: The password for the nova service account, used by nova-api.
51     Type: String
52     NoEcho: true
53   PowerManager:
54     Default: nova.virt.baremetal.virtual_power_driver.VirtualPowerManager
55     Description: Bare metal power manager driver.
56     Type: String
57   PowerUserName:
58     Default: stack
59     Description: What username to ssh to the virtual power host with.
60     Type: String
61 Resources:
62   AccessPolicy:
63     Properties:
64       AllowedResources:
65       - notcomputeConfig
66     Type: OS::Heat::AccessPolicy
67   Key:
68     Properties:
69       UserName:
70         Ref: User
71     Type: AWS::IAM::AccessKey
72   User:
73     Properties:
74       Policies:
75       - Ref: AccessPolicy
76     Type: AWS::IAM::User
77   notcomputeConfig:
78     Type: AWS::AutoScaling::LaunchConfiguration
79     Properties:
80       ImageId: '0'
81       InstanceType: foo
82     Metadata:
83       OpenStack::Role: notcomputeConfig
84       OpenStack::Heat::Stack: {}
85       Openstack::ImageBuilder::Elements: [ boot-stack, heat-cfntools, neutron-network-node ]
86       admin-password:
87         Ref: AdminPassword
88       admin-token: 
89         Ref: AdminToken
90       controller-address:
91         Fn::Select:
92           - 0
93           - Fn::Select:
94             - "ctlplane"
95             - Fn::GetAtt:
96               - notcompute
97               - networks
98       cinder:
99         db: mysql://cinder:unset@localhost/cinder
100         volume_size_mb: '5000'
101       db-password: unset
102       glance:
103         backend: file
104         db: mysql://glance:unset@localhost/glance
105         host: 127.0.0.1
106         service-password:
107           Ref: GlancePassword
108       heat:
109         admin_password:
110           Ref: HeatPassword
111         admin_tenant_name: service
112         admin_user: heat
113         auth_encryption_key: unset___________
114         db: mysql://heat:unset@localhost/heat
115         watch_server_url:
116           Fn::Join:
117             - ''
118             - - http://
119               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
120               - ":8003"
121         metadata_server_url:
122           Fn::Join:
123             - ''
124             - - http://
125               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
126               - ":8000"
127         waitcondition_server_url:
128           Fn::Join:
129             - ''
130             - - http://
131               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
132               - ":8000/v1/waitcondition"
133       os-collect-config:
134         cfn:
135           access_key_id:
136             Ref: Key
137           path: notcomputeConfig.Metadata
138           secret_access_key:
139             Fn::GetAtt:
140             - Key
141             - SecretAccessKey
142           stack_name:
143             Ref: AWS::StackName
144       keystone:
145         db: mysql://keystone:unset@localhost/keystone
146         host: 127.0.0.1
147       nova:
148         compute_hostname: undercloud
149         compute_driver: baremetal.driver.BareMetalDriver
150         db: mysql://nova:unset@localhost/nova
151         host: 127.0.0.1
152         metadata-proxy: false
153         tuning:
154           ram_allocation_ratio: 1.0
155           reserved_host_memory_mb: 0
156         baremetal:
157           use_file_injection: "False"
158           arch:
159             Ref: BaremetalArch
160           db: mysql://nova:unset@localhost/nova_bm
161           power_manager:
162             Ref: PowerManager
163           pxe_deploy_timeout: 2400
164           virtual_power:
165             user:
166               Ref: PowerUserName
167             key: /opt/stack/boot-stack/virtual-power-key
168             ssh_host: 192.168.122.1
169             type: virsh
170         service-password:
171           Ref: NovaPassword
172       neutron:
173         host: 127.0.0.1
174         ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8
175         ovs:
176           dnsmasq_range: [192.0.2.25, 192.0.2.44]
177           public_interface:
178             Ref: NeutronPublicInterface
179           physical_bridge: br-ctlplane
180           physical_network: ctlplane
181           network_vlan_ranges: ctlplane
182           bridge_mappings: ctlplane:br-ctlplane
183           tenant_network_type: vlan
184           enable_tunneling: 'False'
185         service-password:
186           Ref: NeutronPassword
187       rabbit:
188         host: 127.0.0.1
189         password: guest
190   notcompute:
191     Type: OS::Nova::Server
192     Properties:
193       image:
194         Ref: Image
195       flavor:
196         Ref: Flavor
197       key_name:
198         Ref: KeyName
199     Metadata:
200       os-collect-config:
201         cfn:
202           access_key_id:
203             Ref: Key
204           path: notcomputeConfig.Metadata
205           secret_access_key:
206             Fn::GetAtt:
207             - Key
208             - SecretAccessKey
209           stack_name:
210             Ref: AWS::StackName