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