tripleo-heat-templates/deployment/cinder/cinder-backend-ibm-svf-pupp...

97 lines
3.6 KiB
YAML

heat_template_version: wallaby
description: >
Openstack Cinder IBM Spectrum Virtualize family (Svf) backend
parameters:
CinderEnableSvfBackend:
type: boolean
default: true
CinderSvfBackendName:
type: comma_delimited_list
default: 'tripleo_ibm_svf'
description: A list of Cinder IBM Svf Storage backend names.
CinderSvfMultiConfig:
type: json
default: {}
description: >
Dictionary of settings when configuring multiple Svf backends. The
hash key is the backend name, and the value is a dictionary of parameter
values unique to that backend.
CinderSvfAllowTenantQos:
type: boolean
default: false
CinderSvfAvailabilityZone:
default: ''
description: >
The availability zone of the IBM Svf Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderSvfConnectionProtocol:
type: string
default: 'iSCSI'
constraints:
- allowed_values: [ 'iSCSI', 'FC']
CinderSvfIscsiChapEnabled:
type: boolean
default: true
CinderSvfRetainAuxVolume:
type: boolean
default: false
CinderSvfSanIp:
type: string
CinderSvfSanLogin:
type: string
CinderSvfSanPassword:
type: string
hidden: true
CinderSvfVolumePoolName:
type: comma_delimited_list
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 IBM Svf backend.
value:
service_name: cinder_backend_ibm_svf
config_settings:
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_ibm_svf_backend: {get_param: CinderEnableSvfBackend}
cinder::backend::ibm_svf::volume_backend_name: {get_param: CinderSvfBackendName}
cinder::backend::ibm_svf::volume_multi_config: {get_param: CinderSvfMultiConfig}
cinder::backend::ibm_svf::san_ip: {get_param: CinderSvfSanIp}
cinder::backend::ibm_svf::san_login: {get_param: CinderSvfSanLogin}
cinder::backend::ibm_svf::san_password: {get_param: CinderSvfSanPassword}
# NOTE:Svf was earlier called as storwize/svc driver, so the cinder
# configuration parameters were named accordingly.
cinder::backend::ibm_svf::storwize_svc_volpool_name: {get_param: CinderSvfVolumePoolName}
cinder::backend::ibm_svf::storwize_svc_allow_tenant_qos: {get_param: CinderSvfAllowTenantQos}
cinder::backend::ibm_svf::storwize_svc_retain_aux_volume: {get_param: CinderSvfRetainAuxVolume}
cinder::backend::ibm_svf::storwize_svc_connection_protocol: {get_param: CinderSvfConnectionProtocol}
cinder::backend::ibm_svf::storwize_svc_iscsi_chap_enabled: {get_param: CinderSvfIscsiChapEnabled}
- if:
- not: {equals : [{get_param: CinderSvfAvailabilityZone}, '']}
- cinder::backend::ibm_svf::backend_availability_zone: {get_param: CinderSvfAvailabilityZone}