Add support for Dell EMC Unity Cinder backend
[apex-tripleo-heat-templates.git] / puppet / services / cinder-backend-dellemc-unity.yaml
diff --git a/puppet/services/cinder-backend-dellemc-unity.yaml b/puppet/services/cinder-backend-dellemc-unity.yaml
new file mode 100644 (file)
index 0000000..c8b8bd8
--- /dev/null
@@ -0,0 +1,85 @@
+# Copyright (c) 2016-2017 Dell Inc, or its subsidiaries.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+heat_template_version: pike
+
+description: >
+  Openstack Cinder Dell EMC Unity backend
+
+parameters:
+  CinderEnableDellEMCUnityBackend:
+    type: boolean
+    default: true
+  CinderDellEMCUnityBackendName:
+    type: string
+    default: 'tripleo_dellemc_unity'
+  CinderDellEMCUnitySanIp:
+    type: string
+  CinderDellEMCUnitySanLogin:
+    type: string
+    default: 'Admin'
+  CinderDellEMCUnitySanPassword:
+    type: string
+    hidden: true
+  CinderDellEMCUnityStorageProtocol:
+    type: string
+    default: 'iSCSI'
+  CinderDellEMCUnityIoPorts:
+    type: string
+    default: ''
+  CinderDellEMCUnityStoragePoolNames:
+    type: string
+    default: ''
+  ServiceData:
+    default: {}
+    description: Dictionary packing service data
+    type: json
+  ServiceNetMap:
+    default: {}
+    description: Mapping of service_name -> network name. Typically set
+                 via parameter_defaults in the resource registry.  This
+                 mapping overrides those in ServiceNetMapDefaults.
+    type: json
+  DefaultPasswords:
+    default: {}
+    type: json
+  RoleName:
+    default: ''
+    description: Role name on which the service is applied
+    type: string
+  RoleParameters:
+    default: {}
+    description: Parameters specific to the role
+    type: json
+  EndpointMap:
+    default: {}
+    type: json
+    description: Mapping of service endpoint -> protocol. Typically set
+                 via parameter_defaults in the resource registry.
+
+outputs:
+  role_data:
+    description: Role data for the Cinder Dell EMC Storage Center backend.
+    value:
+      service_name: cinder_backend_dellemc_unity
+      config_settings:
+                tripleo::profile::base::cinder::volume::cinder_enable_dellemc_unity_backend: {get_param: CinderEnableDellEMCUnityBackend}
+                cinder::backend::dellemc_unity::volume_backend_name: {get_param: CinderDellEMCUnityBackendName}
+                cinder::backend::dellemc_unity::san_ip: {get_param: CinderDellEMCUnitySanIp}
+                cinder::backend::dellemc_unity::san_login: {get_param: CinderDellEMCUnitySanLogin}
+                cinder::backend::dellemc_unity::san_password: {get_param: CinderDellEMCUnitySanPassword}
+                cinder::backend::dellemc_unity::storage_protocol: {get_param: CinderDellEMCUnityStorageProtocol}
+                cinder::backend::dellemc_unity::unity_io_ports: {get_param: CinderDellEMCUnityIoPorts}
+                cinder::backend::dellemc_unity::unity_storage_pool_names: {get_param: CinderDellEMCUnityStoragePoolNames}
+      step_config: |
+        include ::tripleo::profile::base::cinder::volume