tripleo-heat-templates/deployment/cinder/cinder-backend-netapp-puppe...

173 lines
6.4 KiB
YAML

heat_template_version: rocky
description: Openstack Cinder Netapp 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
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: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
CinderEnableNetappBackend:
type: boolean
default: true
CinderNetappBackendName:
type: comma_delimited_list
default: 'tripleo_netapp'
description: A list of Cinder NetApp backend names.
CinderNetappMultiConfig:
type: json
default: {}
description: >
Dictionary of settings when configuring multiple NetApp backends. The
hash key is the backend name, and the value is a dictionary of parameter
values unique to that backend.
CinderNetappAvailabilityZone:
default: ''
description: >
The availability zone of the NetApp Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderNetappLogin:
type: string
CinderNetappPassword:
type: string
hidden: true
CinderNetappServerHostname:
type: string
CinderNetappServerPort:
type: string
default: '80'
CinderNetappSizeMultiplier:
type: string
default: '1.2'
CinderNetappStorageFamily:
type: string
default: 'ontap_cluster'
CinderNetappStorageProtocol:
type: string
default: 'nfs'
CinderNetappTransportType:
type: string
default: 'http'
CinderNetappVfiler:
type: string
default: ''
CinderNetappVserver:
type: string
default: ''
CinderNetappPartnerBackendName:
type: string
default: ''
CinderNetappNfsShares:
type: string
default: ''
CinderNetappNfsSharesConfig:
type: string
default: '/etc/cinder/shares.conf'
CinderNetappNfsMountOptions:
type: string
default: 'context=system_u:object_r:container_file_t:s0'
CinderNetappCopyOffloadToolPath:
type: string
default: ''
CinderNetappControllerIps:
type: string
default: ''
CinderNetappSaPassword:
type: string
default: ''
hidden: true
CinderNetappPoolNameSearchPattern:
default: '(.+)'
description: >
Regular expression that will be applied to the names of FlexVol volumes
in the Netapp backend that represent pools in Cinder. It may be used
to restrict provisioning to the specified FlexVol volumes.
type: string
CinderNetappHostType:
type: string
default: ''
CinderNetappWebservicePath:
type: string
default: '/devmgr/v2'
CinderNetappNasSecureFileOperations:
type: string
default: 'false'
CinderNetappNasSecureFilePermissions:
type: string
default: 'false'
# DEPRECATED options for compatibility with older versions
# These are obsolete now that CinderNetappPoolNameSearchPattern is fully
# supported here and in puppet-tripleo.
CinderNetappStoragePools:
type: string
default: ''
CinderNetappVolumeList:
type: string
default: ''
parameter_groups:
- label: deprecated
description: |
The following parameters are deprecated and will be removed.
parameters:
- CinderNetappStoragePools
- CinderNetappVolumeList
outputs:
role_data:
description: Role data for the Cinder NetApp backend.
value:
service_name: cinder_backend_netapp
config_settings:
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_netapp_backend: {get_param: CinderEnableNetappBackend}
cinder::backend::netapp::volume_backend_name: {get_param: CinderNetappBackendName}
cinder::backend::netapp::volume_multi_config: {get_param: CinderNetappMultiConfig}
cinder::backend::netapp::netapp_login: {get_param: CinderNetappLogin}
cinder::backend::netapp::netapp_password: {get_param: CinderNetappPassword}
cinder::backend::netapp::netapp_server_hostname: {get_param: CinderNetappServerHostname}
cinder::backend::netapp::netapp_server_port: {get_param: CinderNetappServerPort}
cinder::backend::netapp::netapp_size_multiplier: {get_param: CinderNetappSizeMultiplier}
cinder::backend::netapp::netapp_storage_family: {get_param: CinderNetappStorageFamily}
cinder::backend::netapp::netapp_storage_protocol: {get_param: CinderNetappStorageProtocol}
cinder::backend::netapp::netapp_transport_type: {get_param: CinderNetappTransportType}
cinder::backend::netapp::netapp_vfiler: {get_param: CinderNetappVfiler}
cinder::backend::netapp::netapp_vserver: {get_param: CinderNetappVserver}
cinder::backend::netapp::netapp_partner_backend_name: {get_param: CinderNetappPartnerBackendName}
cinder::backend::netapp::nfs_shares: {get_param: CinderNetappNfsShares}
cinder::backend::netapp::nfs_shares_config: {get_param: CinderNetappNfsSharesConfig}
cinder::backend::netapp::nfs_mount_options: {get_param: CinderNetappNfsMountOptions}
cinder::backend::netapp::netapp_copyoffload_tool_path: {get_param: CinderNetappCopyOffloadToolPath}
cinder::backend::netapp::netapp_controller_ips: {get_param: CinderNetappControllerIps}
cinder::backend::netapp::netapp_sa_password: {get_param: CinderNetappSaPassword}
cinder::backend::netapp::netapp_host_type: {get_param: CinderNetappHostType}
cinder::backend::netapp::netapp_webservice_path: {get_param: CinderNetappWebservicePath}
cinder::backend::netapp::nas_secure_file_operations: {get_param: CinderNetappNasSecureFileOperations}
cinder::backend::netapp::nas_secure_file_permissions: {get_param: CinderNetappNasSecureFilePermissions}
cinder::backend::netapp::netapp_pool_name_search_pattern: {get_param: CinderNetappPoolNameSearchPattern}
-
if:
- {equals : [{get_param: CinderNetappAvailabilityZone}, '']}
- {}
- cinder::backend::netapp::backend_availability_zone: {get_param: CinderNetappAvailabilityZone}