tripleo-heat-templates/deployment/cinder/cinder-backend-netapp-puppet.yaml
ramishra c9991c2e31 Use 'wallaby' heat_template_version
With I57047682cfa82ba6ca4affff54fab5216e9ba51c Heat has added
a new template version for wallaby. This would allow us to use
2-argument variant of the ``if`` function that would allow for
 e.g. conditional definition of resource properties and help
cleanup templates. If only two arguments are passed to ``if``
function, the entire enclosing item is removed when the condition
is false.

Change-Id: I25f981b60c6a66b39919adc38c02a051b6c51269
2021-03-31 17:35:12 +05:30

173 lines
6.4 KiB
YAML

heat_template_version: wallaby
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}