Merge "Use provided qemu.conf in libvirt container"
[apex-tripleo-heat-templates.git] / extraconfig / post_deploy / undercloud_post.yaml
1 heat_template_version: ocata
2
3 description: >
4   Post-deployment for the TripleO undercloud
5
6 parameters:
7   servers:
8     type: json
9   DeployedServerPortMap:
10     default: {}
11     type: json
12   UndercloudDhcpRangeStart:
13     type: string
14     default: '192.168.24.5'
15   UndercloudDhcpRangeEnd:
16     type: string
17     default: '192.168.24.24'
18   UndercloudNetworkCidr:
19     type: string
20     default: '192.168.24.0/24'
21   UndercloudNetworkGateway:
22     type: string
23     default: '192.168.24.1'
24   UndercloudNameserver:
25     type: string
26     default: ''
27   AdminPassword: #supplied by tripleo-undercloud-passwords.yaml
28     type: string
29     description: The password for the keystone admin account, used for monitoring, querying neutron etc.
30     hidden: True
31   SSLCertificate:
32     description: >
33       The content of the SSL certificate (without Key) in PEM format.
34     type: string
35     default: ""
36     hidden: True
37   SnmpdReadonlyUserPassword:
38     description: The user password for SNMPd with readonly rights running on all Overcloud nodes
39     type: string
40     hidden: true
41
42 conditions:
43
44   ssl_disabled: {equals : [{get_param: SSLCertificate}, ""]}
45
46 resources:
47
48   UndercloudPostConfig:
49     type: OS::Heat::SoftwareConfig
50     properties:
51       group: script
52       inputs:
53         - name: deploy_identifier
54         - name: local_ip
55         - name: undercloud_dhcp_start
56         - name: undercloud_dhcp_end
57         - name: undercloud_network_cidr
58         - name: undercloud_network_gateway
59         - name: undercloud_nameserver
60         - name: admin_password
61         - name: auth_url
62         - name: snmp_readonly_user_password
63       config: {get_file: ./undercloud_post.sh}
64
65   UndercloudPostDeployment:
66     type: OS::Heat::SoftwareDeployments
67     properties:
68       servers: {get_param: servers}
69       config: {get_resource: UndercloudPostConfig}
70       input_values:
71         local_ip: {get_param: [DeployedServerPortMap, 'control_virtual_ip', fixed_ips, 0, ip_address]}
72         undercloud_dhcp_start: {get_param: UndercloudDhcpRangeStart}
73         undercloud_dhcp_end: {get_param: UndercloudDhcpRangeEnd}
74         undercloud_network_cidr: {get_param: UndercloudNetworkCidr}
75         undercloud_network_gateway: {get_param: UndercloudNetworkGateway}
76         undercloud_nameserver: {get_param: UndercloudNameserver}
77         ssl_certificate: {get_param: SSLCertificate}
78         admin_password: {get_param: AdminPassword}
79         snmp_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
80         # if SSL is enabled we use the public virtual ip as the stackrc endpoint
81         auth_url:
82           if:
83           - ssl_disabled
84           - list_join:
85             - ''
86             - - 'http://'
87               - {get_param: [DeployedServerPortMap, 'control_virtual_ip', fixed_ips, 0, ip_address]}
88               - ':5000/v2.0'
89           - list_join:
90             - ''
91             - - 'https://'
92               - {get_param: [DeployedServerPortMap, 'public_virtual_ip', fixed_ips, 0, ip_address]}
93               - ':13000/v2.0'