# == Class: manila::share::netapp # # Configures Manila to use the NetApp share driver # # === Parameters # [*driver_handles_share_servers*] # (required) Denotes whether the driver should handle the responsibility of # managing share servers. This must be set to false if the driver is to # operate without managing share servers. # # [*netapp_login*] # (required) Administrative user account name used to access the storage # system. # # [*netapp_password*] # (required) Password for the administrative user account specified in the # netapp_login parameter. # # [*netapp_server_hostname*] # (required) The hostname (or IP address) for the storage system. # # [*netapp_transport_type*] # (optional) The transport protocol used when communicating with # the storage system or proxy server. Valid values are # http or https. # Defaults to http # # [*netapp_storage_family*] # (optional) The storage family type used on the storage system; valid # values are ontap_cluster for clustered Data ONTAP. # Defaults to ontap_cluster # # [*netapp_server_port*] # (optional) The TCP port to use for communication with the storage system # or proxy server. If not specified, Data ONTAP drivers will use 80 for HTTP # and 443 for HTTPS. # # [*netapp_volume_name_template*] # (optional) NetApp volume name template. # Defaults to share_%(share_id)s # # [*netapp_vserver*] # (optional) This option specifies the storage virtual machine (previously # called a Vserver) name on the storage cluster on which provisioning of # shared file systems should occur. This option only applies # when the option driver_handles_share_servers is set to False. # # [*netapp_vserver_name_template*] # (optional) Name template to use for new vserver. This option only applies # when the option driver_handles_share_servers is set to True. # Defaults to os_%s # # [*netapp_lif_name_template*] # (optional) Logical interface (LIF) name template. This option only applies # when the option driver_handles_share_servers is set to True. # Defaults to os_%(net_allocation_id)s # # [*netapp_aggregate_name_search_pattern*] # (optional) Pattern for searching available aggregates # for provisioning. # Defaults to (.*) # # [*netapp_root_volume_aggregate*] # (optional) Name of aggregate to create root volume on. This option only # applies when the option driver_handles_share_servers is set to True. # # [*netapp_root_volume*] # (optional) Root volume name. This option only applies when the option # driver_handles_share_servers is set to True. # Defaults to $::os_service_default # # [*netapp_port_name_search_pattern*] # (optional) Pattern for overriding the selection of network ports on which # to create Vserver LIFs. # Defaults to (.*) # # [*netapp_trace_flags*] # (optional) This option is a comma-separated list of options (valid values # include method and api) that controls which trace info is written to the # Manila logs when the debug level is set to True # # # === DEPRECATED PARAMETERS # # [*netapp_root_volume_name*] # (optional) Root volume name. This option only applies when the option # driver_handles_share_servers is set to True. # Defaults to undef # # === Examples # class { 'manila::share::netapp': # driver_handles_share_servers => true, # netapp_login => 'clusterAdmin', # netapp_password => 'password', # netapp_server_hostname => 'netapp.mycorp.com', # netapp_storage_family => 'ontap_cluster', # netapp_transport_type => 'https', # } # class manila::share::netapp ( $driver_handles_share_servers, $netapp_login, $netapp_password, $netapp_server_hostname, $netapp_transport_type = 'http', $netapp_storage_family = 'ontap_cluster', $netapp_server_port = undef, $netapp_volume_name_template = 'share_%(share_id)s', $netapp_vserver = undef, $netapp_vserver_name_template = 'os_%s', $netapp_lif_name_template = 'os_%(net_allocation_id)s', $netapp_aggregate_name_search_pattern = '(.*)', $netapp_root_volume_aggregate = undef, $netapp_root_volume = $::os_service_default, $netapp_port_name_search_pattern = '(.*)', $netapp_trace_flags = undef, # DEPRECATED PARAMETERS $netapp_root_volume_name = undef, ) { if $netapp_root_volume_name { warning('The netapp_root_volume_name parameter is deprecated, use netapp_root_volume instead.') } $netapp_root_volume_real = pick($netapp_root_volume_name, $netapp_root_volume) manila::backend::netapp { 'DEFAULT': driver_handles_share_servers => $driver_handles_share_servers, netapp_login => $netapp_login, netapp_password => $netapp_password, netapp_server_hostname => $netapp_server_hostname, netapp_transport_type => $netapp_transport_type, netapp_storage_family => $netapp_storage_family, netapp_server_port => $netapp_server_port, netapp_volume_name_template => $netapp_volume_name_template, netapp_vserver => $netapp_vserver, netapp_vserver_name_template => $netapp_vserver_name_template, netapp_lif_name_template => $netapp_lif_name_template, netapp_aggregate_name_search_pattern => $netapp_aggregate_name_search_pattern, netapp_root_volume_aggregate => $netapp_root_volume_aggregate, netapp_root_volume => $netapp_root_volume_real, netapp_port_name_search_pattern => $netapp_port_name_search_pattern, netapp_trace_flags => $netapp_trace_flags, } }