diff --git a/manifests/init.pp b/manifests/init.pp index 0eef3c677..1e9060f2c 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -421,6 +421,10 @@ # (optional) Use IPv6 or not. # Defaults to undef # +# [*cross_az_attach*] +# (optional) Allow attach between instance and volume in different availability zones. +# Defaults to $::os_service_default +# class nova( $ensure_package = 'present', $database_connection = undef, @@ -516,6 +520,7 @@ class nova( $image_service = undef, $notify_on_api_faults = undef, $use_ipv6 = undef, + $cross_az_attach = $::os_service_default, ) inherits nova::params { include ::nova::deps @@ -759,6 +764,7 @@ but should be one of: ssh-rsa, ssh-dsa, ssh-ecdsa.") nova_config { 'cinder/os_region_name': value => $os_region_name; + 'cinder/cross_az_attach': value => $cross_az_attach; 'upgrade_levels/cells': value => $upgrade_level_cells; 'upgrade_levels/cert': value => $upgrade_level_cert; 'upgrade_levels/compute': value => $upgrade_level_compute; diff --git a/releasenotes/notes/add-cross-az-attach-parameters-3ebc84f8882dd941.yaml b/releasenotes/notes/add-cross-az-attach-parameters-3ebc84f8882dd941.yaml new file mode 100644 index 000000000..7c8e7cd41 --- /dev/null +++ b/releasenotes/notes/add-cross-az-attach-parameters-3ebc84f8882dd941.yaml @@ -0,0 +1,4 @@ +--- +features: + - Adds the cross_az_attach parameter to allow configuring attach between + instance and volume in different availability zones. diff --git a/spec/classes/nova_init_spec.rb b/spec/classes/nova_init_spec.rb index df1683dbb..797066add 100644 --- a/spec/classes/nova_init_spec.rb +++ b/spec/classes/nova_init_spec.rb @@ -53,6 +53,7 @@ describe 'nova' do is_expected.to contain_nova_config('DEFAULT/rpc_response_timeout').with_value('') is_expected.to contain_nova_config('DEFAULT/control_exchange').with_value('') is_expected.to contain_nova_config('cinder/os_region_name').with_value('') + is_expected.to contain_nova_config('cinder/cross_az_attach').with_value('') is_expected.to contain_nova_config('cinder/catalog_info').with_value('') is_expected.to contain_nova_config('DEFAULT/cpu_allocation_ratio').with_value('') is_expected.to contain_nova_config('DEFAULT/ram_allocation_ratio').with_value('') @@ -90,6 +91,7 @@ describe 'nova' do :notification_format => 'unversioned', :report_interval => '60', :os_region_name => 'MyRegion', + :cross_az_attach => 'MyAZ', :ovsdb_connection => 'tcp:127.0.0.1:6640', :use_ipv6 => true, :upgrade_level_cells => '1.0.0', @@ -172,6 +174,7 @@ describe 'nova' do is_expected.to contain_nova_config('DEFAULT/ovsdb_connection').with_value('tcp:127.0.0.1:6640') is_expected.to contain_nova_config('os_vif_linux_bridge/use_ipv6').with_value('true') is_expected.to contain_nova_config('cinder/os_region_name').with_value('MyRegion') + is_expected.to contain_nova_config('cinder/cross_az_attach').with_value('MyAZ') is_expected.to contain_nova_config('DEFAULT/ssl_only').with_value(true) is_expected.to contain_nova_config('DEFAULT/cert').with_value('/etc/ssl/private/snakeoil.pem') is_expected.to contain_nova_config('DEFAULT/key').with_value('/etc/ssl/certs/snakeoil.pem')