Add Ceph related templates needed to configure Cinder with Ceph
[apex-tripleo-heat-templates.git] / block-storage.yaml
index 7e2be4a..c288044 100644 (file)
@@ -5,9 +5,16 @@ parameters:
     type: string
     default: overcloud-cinder-volume
   OvercloudBlockStorageFlavor:
-    default: baremetal
     description: Flavor for block storage nodes to request when deploying.
     type: string
+    constraints:
+      - custom_constraint: nova.flavor
+  BlockStorageExtraConfig:
+    default: {}
+    description: |
+      Controller specific configuration to inject into the cluster. Same
+      structure as ExtraConfig.
+    type: json
 resources:
   BlockStorage0:
     type: OS::Nova::Server
@@ -17,6 +24,13 @@ resources:
       flavor: {get_param: OvercloudBlockStorageFlavor}
       key_name: {get_param: KeyName}
       user_data_format: SOFTWARE_CONFIG
+  BlockStorage0AllNodesDeployment:
+    depends_on: [BlockStorage0Deployment,BlockStorage0PassthroughSpecific]
+    type: OS::Heat::StructuredDeployment
+    properties:
+      signal_transport: {get_param: DefaultSignalTransport}
+      config: {get_resource: allNodesConfig}
+      server: {get_resource: BlockStorage0}
   BlockStorage0Deployment:
     type: OS::Heat::StructuredDeployment
     properties:
@@ -26,6 +40,23 @@ resources:
         controller_virtual_ip: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
         cinder_dsn: {"Fn::Join": ['', ['mysql://cinder:unset@', {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} , '/cinder']]}
       signal_transport: NO_SIGNAL
+  BlockStorage0Passthrough:
+    type: OS::Heat::StructuredDeployment
+    properties:
+      config: {get_resource: BlockStoragePassthrough}
+      server: {get_resource: BlockStorage0}
+      signal_transport: NO_SIGNAL
+      input_values:
+        passthrough_config: {get_param: ExtraConfig}
+  BlockStorage0PassthroughSpecific:
+    depends_on: [BlockStorage0Passthrough]
+    type: OS::Heat::StructuredDeployment
+    properties:
+      config: {get_resource: BlockStoragePassthroughSpecific}
+      server: {get_resource: BlockStorage0}
+      signal_transport: NO_SIGNAL
+      input_values:
+        passthrough_config_specific: {get_param: BlockStorageExtraConfig}
   BlockStorageConfig:
     type: OS::Heat::StructuredConfig
     properties:
@@ -46,3 +77,16 @@ resources:
           host: {get_input: controller_virtual_ip}
           username: {get_param: RabbitUserName}
           password: {get_param: RabbitPassword}
+        glance:
+          host: {get_input: controller_virtual_ip}
+          port: {get_param: GlancePort}
+  BlockStoragePassthrough:
+    type: OS::Heat::StructuredConfig
+    properties:
+      group: os-apply-config
+      config: {get_input: passthrough_config}
+  BlockStoragePassthroughSpecific:
+    type: OS::Heat::StructuredConfig
+    properties:
+      group: os-apply-config
+      config: {get_input: passthrough_config_specific}