Fixes to swift-storage-source.yaml
authorEamonn O'Toole <eamonn.otoole@hp.com>
Wed, 7 May 2014 16:03:48 +0000 (17:03 +0100)
committerEamonn O'Toole <eamonn.otoole@hp.com>
Thu, 22 May 2014 07:46:35 +0000 (08:46 +0100)
We've found a couple of bugs in swift-storage-source.yaml which
were exposed when we tried to use the template to build a second
Swift storage node.  These errors are:
a. Error in swift-devices metadata description - indentation
   wasn't correct and a "-" was missing
b. Keystone config data required by the swift-proxy element
   weren't defined
c. The signal_transport property wasn't defined and set to
   NO_SIGNAL for SwiftStorage0Deploy (this meant that the
   completion condition for the resource was never satisfied)
d. The user_data_format property for the SwiftStorage0
   resource was not defined and set to SOFTWARE_CONFIG, which
   meant that the SwiftStorage servers never got their config data
We've fixed the above errors.  We've added an
OS::Heat::StructuredConfig and corresponding
OS::Heat::StructuredDeployment for the Keystone config data.

Change-Id: I858ebf9eea4ed33987143277f4c986b4934555d1

swift-storage-source.yaml

index f20b275..d9df572 100644 (file)
@@ -18,17 +18,34 @@ Resources:
   SwiftStorage0:
     Type: OS::Nova::Server
     Properties:
-      image:
-        {Ref: SwiftStorageImage}
+      image: {Ref: SwiftStorageImage}
       flavor: {Ref: OvercloudSwiftStorageFlavor}
       key_name: {Ref: KeyName}
+      user_data_format: SOFTWARE_CONFIG
+  SwiftKeystoneConfig:
+    Type: OS::Heat::StructuredConfig
+    Properties:
+      config:
+        keystone:
+          host: {get_input: keystone_host}
+  SwiftStorage0Keystone:
+    Type: OS::Heat::StructuredDeployment
+    Properties:
+      server: {Ref: SwiftStorage0}
+      config: {Ref: SwiftKeystoneConfig}
+      signal_transport: NO_SIGNAL
+      input_values:
+        keystone_host: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [controller0, networks]} ]} ] }
   SwiftStorage0Deploy:
     Type: OS::Heat::StructuredDeployment
     Properties:
       server: {Ref: SwiftStorage0}
       config: {Ref: SwiftConfig}
+      signal_transport: NO_SIGNAL
       input_values:
         neutron_local_ip: {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [SwiftStorage0, networks]} ]} ] }
+        swift_hash_suffix: {Ref: SwiftHashSuffix}
+        swift_password: {Ref: SwiftPassword}
         swift_devices:
           Fn::Join:
           - ', '