# Copyright (c) 2017 Pure Storage 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: rocky description: > Openstack Cinder Pure Storage FlashArray backend parameters: 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. CinderEnablePureBackend: type: boolean default: true CinderPureBackendName: type: string default: 'tripleo_pure' CinderPureAvailabilityZone: default: '' description: > The availability zone of the Pure Storage Cinder backend. When set, it overrides the default CinderStorageAvailabilityZone. type: string CinderPureStorageProtocol: type: string default: 'iSCSI' CinderPureSanIp: type: string CinderPureAPIToken: type: string CinderPureUseChap: type: boolean default: false CinderPureMultipathXfer: type: boolean default: true CinderPureImageCache: type: boolean default: true outputs: role_data: description: Role data for the Cinder Pure Storage FlashArray backend. value: service_name: cinder_backend_pure config_settings: map_merge: - tripleo::profile::base::cinder::volume::cinder_enable_pure_backend: {get_param: CinderEnablePureBackend} cinder::backend::pure::volume_backend_name: {get_param: CinderPureBackendName} cinder::backend::pure::pure_storage_protocol: {get_param: CinderPureStorageProtocol} cinder::backend::pure::san_ip: {get_param: CinderPureSanIp} cinder::backend::pure::pure_api_token: {get_param: CinderPureAPIToken} cinder::backend::pure::use_chap_auth: {get_param: CinderPureUseChap} cinder::backend::pure::use_multipath_for_image_xfer: {get_param: CinderPureMultipathXfer} cinder::backend::pure::image_volume_cache_enabled : {get_param: CinderPureImageCache} - if: - {equals : [{get_param: CinderPureAvailabilityZone}, '']} - {} - cinder::backend::pure::backend_availability_zone: {get_param: CinderPureAvailabilityZone}