tripleo-heat-templates/deployment/cinder/cinder-backend-nvmeof-puppet.yaml
ramishra b253d564f7 Use server side env merging for ServiceNetMap/VipSubnetMap
This simplifies the ServiceNetMap/VipSubnetMap interfaces
to use parameter merge strategy and removes the *Defaults
interfaces.

Change-Id: Ic73628a596e9051b5c02435b712643f9ef7425e3
2021-05-19 10:16:58 +05:30

82 lines
3.0 KiB
YAML

heat_template_version: wallaby
description: >
Openstack Cinder NVMeOF backend
parameters:
CinderNVMeOFBackendName:
type: string
default: 'tripleo_nvmeof'
CinderNVMeOFAvailabilityZone:
default: ''
description: >
The availability zone of the NVMeOF Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderNVMeOFTargetPort:
type: number
default: 4460
CinderNVMeOFTargetHelper:
type: string
default: 'nvmet'
CinderNVMeOFTargetProtocol:
type: string
default: 'nvmet_rdma'
CinderNVMeOFTargetPrefix:
type: string
default: 'nvme-subsystem'
CinderNVMeOFTargetPortId:
type: number
default: 1
CinderNVMeOFTargetNameSpaceId:
type: number
default: 10
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 NVMeOF backend.
value:
service_name: cinder_backend_nvmeof
config_settings:
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_nvmeof_backend: true
tripleo::profile::base::cinder::volume::nvmeof::volume_backend_name: {get_param: CinderNVMeOFBackendName}
tripleo::profile::base::cinder::volume::nvmeof::target_port: {get_param: CinderNVMeOFTargetPort}
tripleo::profile::base::cinder::volume::nvmeof::target_helper: {get_param: CinderNVMeOFTargetHelper}
tripleo::profile::base::cinder::volume::nvmeof::target_protocol: {get_param: CinderNVMeOFTargetProtocol}
tripleo::profile::base::cinder::volume::nvmeof::target_prefix: {get_param: CinderNVMeOFTargetPrefix}
tripleo::profile::base::cinder::volume::nvmeof::nvmet_port_id: {get_param: CinderNVMeOFTargetPortId}
tripleo::profile::base::cinder::volume::nvmeof::nvmet_ns_id: {get_param: CinderNVMeOFTargetNameSpaceId}
tripleo::profile::base::cinder::volume::nvmeof::target_ip_address:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, CinderIscsiNetwork]}
- if:
- not: {equals : [{get_param: CinderNVMeOFAvailabilityZone}, '']}
- tripleo::profile::base::cinder::volume::nvmeof::backend_availability_zone: {get_param: CinderNVMeOFAvailabilityZone}