Merge "Deprecate redundant driver_handles_share_servers"

This commit is contained in:
Zuul 2021-06-28 10:06:21 +00:00 committed by Gerrit Code Review
commit f3b296214e
7 changed files with 136 additions and 122 deletions

View File

@ -5,11 +5,6 @@
#
# === 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.
#
# [*emc_nas_login*]
# (required) Administrative user account name used to access the storage
# system.
@ -31,7 +26,7 @@
#
# [*emc_nas_root_dir*]
# (optional) The root directory where shares will be located.
# Defaults to None
# Defaults to $::os_service_default
#
# [*emc_nas_server_port*]
# (optional) Port number for the Dell EMC isilon server.
@ -44,10 +39,16 @@
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
# DEPRECATED PARAMETERS
#
# [*driver_handles_share_servers*]
# (optional) 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.
#
# === Examples
#
# manila::backend::dellemc_isilon { 'myBackend':
# driver_handles_share_servers => false,
# emc_nas_login => 'admin',
# emc_nas_password => 'password',
# emc_nas_server => <IP address of isilon cluster>,
@ -55,27 +56,32 @@
# }
#
define manila::backend::dellemc_isilon (
$driver_handles_share_servers,
$emc_nas_login,
$emc_nas_password,
$emc_nas_server,
$emc_share_backend,
$share_backend_name = $name,
$emc_nas_root_dir = undef,
$emc_nas_root_dir = $::os_service_default,
$emc_nas_server_port = 8080,
$emc_nas_server_secure = true,
$package_ensure = 'present',
# DEPRECATED PARAMETERS
$driver_handles_share_servers = undef,
) {
include manila::deps
validate_legacy(String, 'validate_string', $emc_nas_password)
if $driver_handles_share_servers != undef {
warning('The driver_handles_share_servers parameter has been deprecated and has no effect')
}
$dellemc_isilon_share_driver = 'manila.share.drivers.dell_emc.driver.EMCShareDriver'
manila_config {
"${share_backend_name}/share_driver": value => $dellemc_isilon_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/driver_handles_share_servers": value => false;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;

View File

@ -5,12 +5,6 @@
#
# === 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.
# VMAX driver requires this option to be as True.
#
# [*emc_nas_login*]
# (required) Administrative user account name used to access the storage
# system.
@ -31,27 +25,34 @@
#
# [*vmax_server_container*]
# (optional) Name of the Data Mover to serve the share service.
# Defaults to None
# Defaults to $::os_service_default
#
# [*vmax_share_data_pools*]
# (optional) Comma separated list specifying the name of the pools to be
# used by this back end. Do not set this option if all storage pools on the
# system can be used. Wild card character is supported
# Defaults to None
# Defaults to $::os_service_default
#
# [*vmax_ethernet_ports*]
# (optional) Comma-separated list specifying the ports (devices) of Data Mover
# that can be used for share server interface. Do not set this option if all
# ports on the Data Mover can be used. Wild card character is supported.
# Defaults to None
# Defaults to $::os_service_default
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
# DEPRECATED PARAMETERS
#
# [*driver_handles_share_servers*]
# (optional) 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.
# VMAX driver requires this option to be as True.
#
# === Examples
#
# manila::backend::dellemc_vmax { 'myBackend':
# driver_handles_share_servers => true,
# emc_nas_login => 'admin',
# emc_nas_password => 'password',
# emc_nas_server => <IP address of Unity Syste,>,
@ -59,27 +60,32 @@
# }
#
define manila::backend::dellemc_vmax (
$driver_handles_share_servers,
$emc_nas_login,
$emc_nas_password,
$emc_nas_server,
$emc_share_backend,
$share_backend_name = $name,
$vmax_server_container = undef,
$vmax_share_data_pools = undef ,
$vmax_ethernet_ports = undef,
$vmax_server_container = $::os_service_default,
$vmax_share_data_pools = $::os_service_default,
$vmax_ethernet_ports = $::os_service_default,
$package_ensure = 'present',
# DEPRECATED PARAMETERS
$driver_handles_share_servers = undef,
) {
include manila::deps
validate_legacy(String, 'validate_string', $emc_nas_password)
if $driver_handles_share_servers != undef {
warning('The driver_handles_share_servers parameter has been deprecated and has no effect')
}
$vmax_share_driver = 'manila.share.drivers.dell_emc.driver.EMCShareDriver'
manila_config {
"${share_backend_name}/share_driver": value => $vmax_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/driver_handles_share_servers": value => true;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;

View File

@ -5,12 +5,6 @@
#
# === 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.
# VNX driver requires this option to be as True.
#
# [*emc_nas_login*]
# (required) User account name used to access the storage
# system.
@ -31,19 +25,19 @@
#
# [*vnx_server_container*]
# (optional) Name of the Data Mover to serve the share service.
# Defaults to None
# Defaults to $::os_service_default
#
# [*vnx_share_data_pools*]
# (optional) Comma separated list specifying the name of the pools to be
# used by this back end. Do not set this option if all storage pools on the
# system can be used. Wild card character is supported
# Defaults to None
# Defaults to $::os_service_default
#
# [*vnx_ethernet_ports*]
# (optional) Comma-separated list specifying the ports (devices) of Data Mover
# that can be used for share server interface. Do not set this option if all
# ports on the Data Mover can be used. Wild card character is supported.
# Defaults to None
# Defaults to $::os_service_default
#
# [*network_plugin_ipv6_enabled*]
# (optional) Whether to support IPv6 network resource, Default=False.
@ -60,11 +54,19 @@
# (optional) Can be used to specify a non default path to a
# CA_BUNDLE file or directory with certificates of trusted
# CAs, which will be used to validate the backend.
# Defaults to None
# Defaults to $::os_service_default
#
# [*package_ensure*]
# (optional) Ensure state for package. Defaults to 'present'.
#
# DEPRECATED PARAMETERS
#
# [*driver_handles_share_servers*]
# (optional) 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.
# VNX driver requires this option to be as True.
#
# === Examples
#
# manila::backend::dellemc_vnx { 'myBackend':
@ -76,30 +78,34 @@
# }
#
define manila::backend::dellemc_vnx (
$driver_handles_share_servers,
$emc_nas_login,
$emc_nas_password,
$emc_nas_server,
$emc_share_backend,
$share_backend_name = $name,
$vnx_server_container = undef,
$vnx_share_data_pools = undef ,
$vnx_ethernet_ports = undef,
$vnx_server_container = $::os_service_default,
$vnx_share_data_pools = $::os_service_default,
$vnx_ethernet_ports = $::os_service_default,
$network_plugin_ipv6_enabled = true,
$emc_ssl_cert_verify = false,
$emc_ssl_cert_path = undef,
$emc_ssl_cert_path = $::os_service_default,
$package_ensure = 'present',
$driver_handles_share_servers = undef,
) {
include manila::deps
validate_legacy(String, 'validate_string', $emc_nas_password)
if $driver_handles_share_servers != undef {
warning('The driver_handles_share_servers parameter has been deprecated and has no effect')
}
$vnx_share_driver = 'manila.share.drivers.dell_emc.driver.EMCShareDriver'
manila_config {
"${share_backend_name}/share_driver": value => $vnx_share_driver;
"${share_backend_name}/driver_handles_share_servers": value => $driver_handles_share_servers;
"${share_backend_name}/driver_handles_share_servers": value => true;
"${share_backend_name}/emc_nas_login": value => $emc_nas_login;
"${share_backend_name}/emc_nas_password": value => $emc_nas_password, secret => true;
"${share_backend_name}/emc_nas_server": value => $emc_nas_server;

View File

@ -0,0 +1,8 @@
---
deprecations:
- |
The following parmaeters have been deprecated and has no effect now.
- ``manila::backend::dellemc_isilon::driver_handles_share_servers``
- ``manila::backend::dellemc_vmax::driver_handles_share_servers``
- ``manila::backend::dellemc_vnx::driver_handles_share_servers``

View File

@ -4,19 +4,18 @@ describe 'manila::backend::dellemc_isilon' do
let(:title) {'dellemc_isilon'}
let :params do
let :required_params do
{
:driver_handles_share_servers => false,
:emc_nas_login => 'admin',
:emc_nas_password => 'password',
:emc_nas_server => '127.0.0.2',
:emc_share_backend => 'isilon',
:emc_nas_root_dir => '',
}
end
let :default_params do
{
:emc_nas_root_dir => '<SERVICE DEFAULT>',
:emc_nas_server_port => 8080,
:emc_nas_server_secure => true,
}
@ -30,6 +29,7 @@ describe 'manila::backend::dellemc_isilon' do
it 'configures dell emc isilon share driver' do
is_expected.to contain_manila_config("dellemc_isilon/share_driver").with_value(
'manila.share.drivers.dell_emc.driver.EMCShareDriver')
is_expected.to contain_manila_config("dellemc_isilon/driver_handles_share_servers").with_value(false)
params_hash.each_pair do |config,value|
is_expected.to contain_manila_config("dellemc_isilon/#{config}").with_value( value )
end
@ -42,25 +42,23 @@ describe 'manila::backend::dellemc_isilon' do
shared_examples 'manila::backend::dellemc_isilon' do
context 'with default parameters' do
before do
params = {}
let :params do
required_params
end
it_configures 'dell emc isilon share driver'
end
context 'with provided parameters' do
it_configures 'dell emc isilon share driver'
end
context 'with share server config' do
before do
params.merge!({
:emc_nas_password => true,
let :params do
required_params.merge!({
:emc_nas_root_dir => 'myroot',
:emc_nas_server_port => 8000,
:emc_nas_server_secure => false,
})
end
it { is_expected.to raise_error(Puppet::Error) }
it_configures 'dell emc isilon share driver'
end
end

View File

@ -4,16 +4,12 @@ describe 'manila::backend::dellemc_vmax' do
let(:title) {'dellemc_vmax'}
let :params do
let :required_params do
{
:driver_handles_share_servers => true,
:emc_nas_login => 'admin',
:emc_nas_password => 'password',
:emc_nas_server => '127.0.0.2',
:emc_share_backend => 'vmax',
:vmax_server_container => 'container1',
:vmax_share_data_pools => '*',
:vmax_ethernet_ports => 'eth1',
}
end
@ -33,6 +29,7 @@ describe 'manila::backend::dellemc_vmax' do
it 'configures dell emc vmax share driver' do
is_expected.to contain_manila_config("dellemc_vmax/share_driver").with_value(
'manila.share.drivers.dell_emc.driver.EMCShareDriver')
is_expected.to contain_manila_config("dellemc_vmax/driver_handles_share_servers").with_value(true)
params_hash.each_pair do |config,value|
is_expected.to contain_manila_config("dellemc_vmax/#{config}").with_value( value )
end
@ -45,25 +42,23 @@ describe 'manila::backend::dellemc_vmax' do
shared_examples 'manila::backend::dellemc_vmax' do
context 'with default parameters' do
before do
params = {}
let :params do
required_params
end
it_configures 'dell emc vmax share driver'
end
context 'with provided parameters' do
it_configures 'dell emc vmax share driver'
end
context 'with share server config' do
before do
params.merge!({
:emc_nas_password => true,
let :params do
required_params.merge!({
:vmax_server_container => 'container1',
:vmax_share_data_pools => '*',
:vmax_ethernet_ports => 'eth1',
})
end
it { is_expected.to raise_error(Puppet::Error) }
it_configures 'dell emc vmax share driver'
end
end

View File

@ -4,19 +4,12 @@ describe 'manila::backend::dellemc_vnx' do
let(:title) {'dellemc_vnx'}
let :params do
let :required_params do
{
:driver_handles_share_servers => true,
:emc_nas_login => 'admin',
:emc_nas_password => 'password',
:emc_nas_server => '127.0.0.2',
:emc_share_backend => 'vnx',
:vnx_server_container => 'container1',
:vnx_share_data_pools => '*',
:vnx_ethernet_ports => 'eth1',
:network_plugin_ipv6_enabled => true,
:emc_ssl_cert_verify => true,
:emc_ssl_cert_path => '/etc/ssl/certs/',
}
end
@ -25,8 +18,8 @@ describe 'manila::backend::dellemc_vnx' do
:vnx_server_container => '<SERVICE DEFAULT>',
:vnx_share_data_pools => '<SERVICE DEFAULT>',
:vnx_ethernet_ports => '<SERVICE DEFAULT>',
:network_plugin_ipv6_enabled => '<SERVICE DEFAULT>',
:emc_ssl_cert_verify => '<SERVICE DEFAULT>',
:network_plugin_ipv6_enabled => true,
:emc_ssl_cert_verify => false,
:emc_ssl_cert_path => '<SERVICE DEFAULT>',
}
end
@ -39,6 +32,7 @@ describe 'manila::backend::dellemc_vnx' do
it 'configures dell emc vnx share driver' do
is_expected.to contain_manila_config("dellemc_vnx/share_driver").with_value(
'manila.share.drivers.dell_emc.driver.EMCShareDriver')
is_expected.to contain_manila_config("dellemc_vnx/driver_handles_share_servers").with_value(true)
params_hash.each_pair do |config,value|
is_expected.to contain_manila_config("dellemc_vnx/#{config}").with_value( value )
end
@ -51,25 +45,26 @@ describe 'manila::backend::dellemc_vnx' do
shared_examples 'manila::backend::dellemc_vnx' do
context 'with default parameters' do
before do
params = {}
let :params do
required_params
end
it_configures 'dell emc vnx share driver'
end
context 'with provided parameters' do
it_configures 'dell emc vnx share driver'
end
context 'with share server config' do
before do
params.merge!({
:emc_nas_password => true,
let :params do
required_params.merge({
:vnx_server_container => 'container1',
:vnx_share_data_pools => '*',
:vnx_ethernet_ports => 'eth1',
:network_plugin_ipv6_enabled => true,
:emc_ssl_cert_verify => true,
:emc_ssl_cert_path => '/etc/ssl/certs/',
})
end
it { is_expected.to raise_error(Puppet::Error) }
it_configures 'dell emc vnx share driver'
end
end