Merge "Use VIP for keystone host in swift template"
[apex-tripleo-heat-templates.git] / swift-storage-source.yaml
1 heat_template_version: 2014-10-16
2 description: 'Common Swift Storage Configuration'
3 parameters:
4   SwiftStorageImage:
5     type: string
6     default: overcloud-swift-storage
7   OvercloudSwiftStorageFlavor:
8     default: baremetal
9     description: Flavor for Swift storage nodes to request when deploying.
10     type: string
11   NeutronNetworkType:
12     type: string
13     default: 'gre'
14   NeutronEnableTunnelling:
15     type: string
16     default: True
17 resources:
18   SwiftStorage0:
19     type: OS::Nova::Server
20     properties:
21       image: {get_param: SwiftStorageImage}
22       flavor: {get_param: OvercloudSwiftStorageFlavor}
23       key_name: {get_param: KeyName}
24       user_data_format: SOFTWARE_CONFIG
25   SwiftKeystoneConfig:
26     type: OS::Heat::StructuredConfig
27     properties:
28       config:
29         keystone:
30           host: {get_input: keystone_host}
31   SwiftStorage0Keystone:
32     type: OS::Heat::StructuredDeployment
33     properties:
34       server: {get_resource: SwiftStorage0}
35       config: {get_resource: SwiftKeystoneConfig}
36       signal_transport: NO_SIGNAL
37       input_values:
38         keystone_host: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
39   SwiftStorage0Deploy:
40     type: OS::Heat::StructuredDeployment
41     properties:
42       server: {get_resource: SwiftStorage0}
43       config: {get_resource: SwiftConfig}
44       signal_transport: NO_SIGNAL
45       input_values:
46         neutron_local_ip: {get_attr: [SwiftStorage0, networks, ctlplane, 0]}
47         neutron_tenant_network_type: {get_param: NeutronNetworkType}
48         neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
49         swift_hash_suffix: {get_param: SwiftHashSuffix}
50         swift_password: {get_param: SwiftPassword}
51         swift_devices:
52           list_join:
53           - ', '
54           - Merge::Map:
55               controller0:
56                 list_join:
57                 - ''
58                 - - 'r1z1-'
59                   - {get_attr: [controller0, networks, ctlplane, 0]}
60                   - ':%PORT%/d1'
61               SwiftStorage0:
62                 list_join:
63                 - ''
64                 - - 'r1z1-'
65                   - {get_attr: [SwiftStorage0, networks, ctlplane, 0]}
66                   - ':%PORT%/d1'
67         swift_proxy_memcache:
68           list_join:
69             - ','
70             - Merge::Map:
71                 controller0:
72                   list_join:
73                     - ', '
74                     - - list_join:
75                         - ''
76                         - - {get_attr: [controller0, networks, ctlplane, 0]}
77                           - ':11211'