# Copyright (c) 2020 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: wallaby description: > Openstack Cinder Dell EMC PowerStore backend parameters: CinderEnablePowerStoreBackend: type: boolean default: true CinderPowerStoreBackendName: type: comma_delimited_list default: 'tripleo_dellemc_powerstore' description: A list of Cinder PowerStore Storage backend names. CinderPowerStoreMultiConfig: type: json default: {} description: > Dictionary of settings when configuring multiple PowerStore backends. The hash key is the backend name, and the value is a dictionary of parameter values unique to that backend. CinderPowerStoreAvailabilityZone: default: '' description: > The availability zone of the Dell EMC PowerStore Cinder backend. When set, it overrides the default CinderStorageAvailabilityZone. type: string CinderPowerStoreSanIp: type: string CinderPowerStoreSanLogin: type: string default: 'Admin' CinderPowerStoreSanPassword: type: string hidden: true CinderPowerStorePorts: type: string default: '' CinderPowerStoreStorageProtocol: type: string default: 'iSCSI' constraints: - allowed_values: [ 'iSCSI', 'FC'] 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. Use parameter_merge_strategies to merge it with the defaults. 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 PowerStore backend. value: service_name: cinder_backend_dellemc_powerstore config_settings: map_merge: - tripleo::profile::base::cinder::volume::cinder_enable_dellemc_powerstore_backend: {get_param: CinderEnablePowerStoreBackend} cinder::backend::dellemc_powerstore::volume_backend_name: {get_param: CinderPowerStoreBackendName} cinder::backend::dellemc_powerstore::volume_multi_config: {get_param: CinderPowerStoreMultiConfig} cinder::backend::dellemc_powerstore::san_ip: {get_param: CinderPowerStoreSanIp} cinder::backend::dellemc_powerstore::san_login: {get_param: CinderPowerStoreSanLogin} cinder::backend::dellemc_powerstore::san_password: {get_param: CinderPowerStoreSanPassword} cinder::backend::dellemc_powerstore::powerstore_ports: {get_param: CinderPowerStorePorts} cinder::backend::dellemc_powerstore::storage_protocol: {get_param: CinderPowerStoreStorageProtocol} - if: - not: {equals : [{get_param: CinderPowerStoreAvailabilityZone}, '']} - cinder::backend::dellemc_powerstore::backend_availability_zone: {get_param: CinderPowerStoreAvailabilityZone}