Merge "CentOS/RHEL: Use modular libvirt daemons by default"
This commit is contained in:
commit
38dcb15b29
@ -155,7 +155,7 @@
|
||||
# [*modular_libvirt*]
|
||||
# (optional) Whether to enable modular libvirt daemons or use monolithic
|
||||
# libvirt daemon.
|
||||
# Defaults to undef
|
||||
# Defaults to $::nova::params::modular_libvirt
|
||||
#
|
||||
# DEPRECATED PARAMETERS
|
||||
#
|
||||
@ -197,25 +197,25 @@ class nova::migration::libvirt(
|
||||
$cert_file = $facts['os_service_default'],
|
||||
$ca_file = $facts['os_service_default'],
|
||||
$crl_file = $facts['os_service_default'],
|
||||
$libvirt_version = $::nova::compute::libvirt::version::default,
|
||||
Optional[Boolean] $modular_libvirt = undef,
|
||||
$libvirt_version = undef,
|
||||
Boolean $modular_libvirt = $::nova::params::modular_libvirt,
|
||||
# DEPRECATED PARAMETERS
|
||||
$live_migration_tunnelled = undef,
|
||||
) inherits nova::compute::libvirt::version {
|
||||
) inherits nova::params {
|
||||
|
||||
include nova::deps
|
||||
include nova::params
|
||||
|
||||
if $live_migration_tunnelled != undef {
|
||||
warning('The live_migration_tunnelled parameter has been deprecated.')
|
||||
}
|
||||
|
||||
$modular_libvirt_real = pick($modular_libvirt, $::nova::params::modular_libvirt)
|
||||
|
||||
if $modular_libvirt_real and !$::nova::params::modular_libvirt_support {
|
||||
if $modular_libvirt and !$::nova::params::modular_libvirt_support {
|
||||
fail('Modular libvirt daemons are not supported in this distribution')
|
||||
}
|
||||
|
||||
include nova::compute::libvirt::version
|
||||
$libvirt_version_real = pick($libvirt_version, $::nova::compute::libvirt::version::default)
|
||||
|
||||
if $configure_nova {
|
||||
if $transport == 'ssh' and ($client_user or $client_port or !empty($client_extraparams)) {
|
||||
if $client_user {
|
||||
@ -276,7 +276,7 @@ class nova::migration::libvirt(
|
||||
$host_uuid_real = $facts['libvirt_uuid']
|
||||
}
|
||||
|
||||
if $modular_libvirt_real {
|
||||
if $modular_libvirt {
|
||||
['virtqemud', 'virtproxyd', 'virtsecretd', 'virtnodedevd', 'virtstoraged'].each |String $daemon| {
|
||||
create_resources("${daemon}_config", {
|
||||
'host_uuid' => {
|
||||
@ -322,7 +322,7 @@ class nova::migration::libvirt(
|
||||
$crl_file_real = $facts['os_service_default']
|
||||
}
|
||||
|
||||
$libvirt_listen_config = $modular_libvirt_real ? {
|
||||
$libvirt_listen_config = $modular_libvirt ? {
|
||||
true => 'virtproxyd_config',
|
||||
default => 'libvirtd_config'
|
||||
}
|
||||
@ -337,7 +337,7 @@ class nova::migration::libvirt(
|
||||
})
|
||||
|
||||
if $transport == 'tls' or $transport == 'tcp' {
|
||||
if versioncmp($libvirt_version, '5.6') < 0 {
|
||||
if versioncmp($libvirt_version_real, '5.6') < 0 {
|
||||
fail('libvirt version < 5.6 is no longer supported')
|
||||
}
|
||||
|
||||
|
@ -58,7 +58,7 @@ class nova::params {
|
||||
$vncproxy_service_name = 'openstack-nova-novncproxy'
|
||||
$serialproxy_service_name = 'openstack-nova-serialproxy'
|
||||
$spicehtml5proxy_service_name = 'openstack-nova-spicehtml5proxy'
|
||||
$modular_libvirt = false
|
||||
$modular_libvirt = true
|
||||
$modular_libvirt_support = true
|
||||
$libvirt_guests_environment_file = '/etc/sysconfig/libvirt-guests'
|
||||
# redhat specific config defaults
|
||||
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
upgrade:
|
||||
- |
|
||||
The ``modular_libvirt`` parameter now defaults to true on Red Hat family
|
||||
operating systems. As of RHEL9, it is recommended to use modular libvirt
|
||||
daemons, while the monolithic daemon has been deprecated. Note that
|
||||
the current manifests do not fully manage the transition from monolithic
|
||||
daemon to modular libvirt daemons, and additional cleanup may be needed.
|
@ -18,10 +18,10 @@ describe 'nova::compute::libvirt::services' do
|
||||
end
|
||||
|
||||
context 'when libvirt service is not managed' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:libvirt_service_name => false,
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it 'skips installing libvirt' do
|
||||
@ -32,10 +32,10 @@ describe 'nova::compute::libvirt::services' do
|
||||
end
|
||||
|
||||
context 'when ovmf package is not managed' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:manage_ovmf => false,
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it 'skips installing ovmf' do
|
||||
@ -44,10 +44,10 @@ describe 'nova::compute::libvirt::services' do
|
||||
end
|
||||
|
||||
context 'when swtpm package is managed' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:manage_swtpm => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it 'installs swtpm' do
|
||||
@ -113,10 +113,10 @@ describe 'nova::compute::libvirt::services' do
|
||||
|
||||
shared_examples_for 'nova compute libvirt services with modular libvirt' do
|
||||
context 'with default parameters' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:modular_libvirt => true
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it 'deploys libvirt service' do
|
||||
@ -250,10 +250,25 @@ describe 'nova::compute::libvirt::services' do
|
||||
end
|
||||
end
|
||||
|
||||
let :params do
|
||||
{}
|
||||
end
|
||||
|
||||
it_configures 'nova compute libvirt services'
|
||||
it_configures 'nova compute libvirt services with monolithic libvirt'
|
||||
if facts[:os]['family'] == 'RedHat'
|
||||
if facts[:os]['family'] == 'Debian'
|
||||
# NOTE(tkajinam): Debian family uses monolithic libvirt by default, and
|
||||
# does not support modular libvirt
|
||||
it_configures 'nova compute libvirt services with monolithic libvirt'
|
||||
else
|
||||
# NOTE(tkajinam): RedHat family uses modular libvirt by default
|
||||
it_configures 'nova compute libvirt services with modular libvirt'
|
||||
|
||||
context 'with modular libvirt disabled' do
|
||||
before :each do
|
||||
params.merge!({ :modular_libvirt => false })
|
||||
end
|
||||
it_configures 'nova compute libvirt services with monolithic libvirt'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -30,7 +30,7 @@ describe 'nova::migration::libvirt' do
|
||||
include nova::compute::libvirt'
|
||||
end
|
||||
|
||||
shared_examples_for 'nova migration with libvirt' do
|
||||
shared_examples_for 'nova migration with monolithic libvirt' do
|
||||
|
||||
context 'with default params' do
|
||||
it { is_expected.to contain_libvirtd_config('auth_tls').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -56,10 +56,10 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with override_uuid enabled' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:override_uuid => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_file('/etc/libvirt/libvirt_uuid').with({
|
||||
@ -70,11 +70,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with override_uuid enabled and host_uuid set' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:override_uuid => true,
|
||||
:host_uuid => 'a8debd9d-e359-4bb2-8c77-edee431f94f2',
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_file('/etc/libvirt/libvirt_uuid').with({
|
||||
@ -85,10 +85,10 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tls enabled' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_libvirtd_config('auth_tls').with_value('none').with_quote(true) }
|
||||
it { is_expected.to contain_libvirtd_config('auth_tcp').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -101,12 +101,12 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tls enabled and inbound addr set' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
:migration_inbound_addr => 'host2.example.com',
|
||||
:live_migration_inbound_addr => 'host1.example.com',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_libvirtd_config('auth_tls').with_value('none').with_quote(true) }
|
||||
it { is_expected.to contain_libvirtd_config('auth_tcp').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -121,17 +121,17 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with live_migration_with_native_tls flags set' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:live_migration_with_native_tls => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_with_native_tls').with(:value => true) }
|
||||
end
|
||||
|
||||
context 'with migration flags set' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:live_migration_tunnelled => true,
|
||||
:live_migration_bandwidth => 1024,
|
||||
:live_migration_downtime => 800,
|
||||
@ -139,7 +139,7 @@ describe 'nova::migration::libvirt' do
|
||||
:live_migration_downtime_delay => 5,
|
||||
:live_migration_completion_timeout => '1500',
|
||||
:live_migration_timeout_action => 'force_complete',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_tunnelled').with(:value => true) }
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_bandwidth').with_value(1024) }
|
||||
@ -151,21 +151,21 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with live migration auto converge on' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:live_migration_permit_post_copy => false,
|
||||
:live_migration_permit_auto_converge => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_permit_post_copy').with(:value => false) }
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_permit_auto_converge').with(:value => true) }
|
||||
end
|
||||
|
||||
context 'with auth set to sasl' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:auth => 'sasl',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_libvirtd_config('auth_tls').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
it { is_expected.to contain_libvirtd_config('auth_tcp').with_value('sasl').with_quote(true) }
|
||||
@ -176,11 +176,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with auth set to sasl and tls enabled' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:auth => 'sasl',
|
||||
:transport => 'tls'
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_libvirtd_config('auth_tls').with_value('sasl').with_quote(true) }
|
||||
it { is_expected.to contain_libvirtd_config('auth_tcp').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -191,14 +191,14 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with certificates set and tls enabled' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
:key_file => '/etc/pki/libvirt/private/serverkey.pem',
|
||||
:cert_file => '/etc/pki/libvirt/servercert.pem',
|
||||
:ca_file => '/etc/pki/CA/cacert.pem',
|
||||
:crl_file => '/etc/pki/CA/crl.pem',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_libvirtd_config('auth_tls').with_value('none').with_quote(true) }
|
||||
it { is_expected.to contain_libvirtd_config('auth_tcp').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -209,20 +209,20 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with auth set to an invalid setting' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:auth => 'inexistent_auth',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { expect { is_expected.to contain_class('nova::compute::libvirt') }.to \
|
||||
raise_error(Puppet::Error) }
|
||||
end
|
||||
|
||||
context 'when not configuring libvirt' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:configure_libvirt => false
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to_not contain_libvirtd_config('auth_tls') }
|
||||
it { is_expected.to_not contain_libvirtd_config('auth_tcp') }
|
||||
@ -233,11 +233,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'when not configuring nova and tls enabled' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:configure_nova => false,
|
||||
:transport => 'tls',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.not_to contain_nova_config('libvirt/live_migration_uri') }
|
||||
it { is_expected.not_to contain_nova_config('libvirt/live_migration_inbound_addr') }
|
||||
@ -245,51 +245,53 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with ssh transport' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('<SERVICE DEFAULT>') }
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('ssh') }
|
||||
end
|
||||
|
||||
context 'with ssh transport with user' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
:client_user => 'foobar'
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('qemu+ssh://foobar@%s/system')}
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('<SERVICE DEFAULT>') }
|
||||
end
|
||||
|
||||
context 'with ssh transport with port' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
:client_port => 1234
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('qemu+ssh://%s:1234/system')}
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('<SERVICE DEFAULT>') }
|
||||
end
|
||||
|
||||
context 'with ssh transport with extraparams' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
:client_extraparams => {'foo' => '%', 'bar' => 'baz'}
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('qemu+ssh://%s/system?foo=%%25&bar=baz')}
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('<SERVICE DEFAULT>') }
|
||||
end
|
||||
|
||||
context 'with tls transport' do
|
||||
let :params do
|
||||
{ :transport => 'tls' }
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls'
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('libvirtd-tls').with(
|
||||
@ -306,11 +308,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tls transport and listen_address' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'tls',
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
:listen_address => '127.0.0.1'
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('libvirtd-tls').with(
|
||||
@ -333,10 +335,10 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tcp transport' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tcp',
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('libvirtd-tcp').with(
|
||||
@ -354,11 +356,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tcp transport and listen_address' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tcp',
|
||||
:listen_address => '127.0.0.1'
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('libvirtd-tcp').with(
|
||||
@ -382,9 +384,7 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
shared_examples_for 'nova migration with modular libvirt' do
|
||||
context 'with modular_libvirt set to true' do
|
||||
let(:params) { { :modular_libvirt => true} }
|
||||
|
||||
context 'with defaults' do
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tls').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tcp').with_value('none').with_quote(true) }
|
||||
it { is_expected.to contain_virtproxyd_config('key_file').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -403,11 +403,10 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with override_uuid enabled' do
|
||||
let :params do
|
||||
{
|
||||
:modular_libvirt => true,
|
||||
:override_uuid => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:override_uuid => true,
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_file('/etc/libvirt/libvirt_uuid').with({
|
||||
@ -422,12 +421,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with override_uuid enabled and host_uuid set' do
|
||||
let :params do
|
||||
{
|
||||
:modular_libvirt => true,
|
||||
:override_uuid => true,
|
||||
:host_uuid => 'a8debd9d-e359-4bb2-8c77-edee431f94f2',
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:override_uuid => true,
|
||||
:host_uuid => 'a8debd9d-e359-4bb2-8c77-edee431f94f2',
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_file('/etc/libvirt/libvirt_uuid').with({
|
||||
@ -443,11 +441,10 @@ describe 'nova::migration::libvirt' do
|
||||
|
||||
|
||||
context 'with tls enabled' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tls').with_value('none').with_quote(true) }
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tcp').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -460,11 +457,10 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with auth set to sasl' do
|
||||
let :params do
|
||||
{
|
||||
before :each do
|
||||
params.merge!({
|
||||
:auth => 'sasl',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tls').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tcp').with_value('sasl').with_quote(true) }
|
||||
@ -475,12 +471,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with auth set to sasl and tls enabled' do
|
||||
let :params do
|
||||
{
|
||||
:auth => 'sasl',
|
||||
:transport => 'tls',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:auth => 'sasl',
|
||||
:transport => 'tls',
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tls').with_value('sasl').with_quote(true) }
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tcp').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -491,15 +486,14 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with certificates set and tls enabled' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'tls',
|
||||
:key_file => '/etc/pki/libvirt/private/serverkey.pem',
|
||||
:cert_file => '/etc/pki/libvirt/servercert.pem',
|
||||
:ca_file => '/etc/pki/CA/cacert.pem',
|
||||
:crl_file => '/etc/pki/CA/crl.pem',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
:key_file => '/etc/pki/libvirt/private/serverkey.pem',
|
||||
:cert_file => '/etc/pki/libvirt/servercert.pem',
|
||||
:ca_file => '/etc/pki/CA/cacert.pem',
|
||||
:crl_file => '/etc/pki/CA/crl.pem',
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tls').with_value('none').with_quote(true) }
|
||||
it { is_expected.to contain_virtproxyd_config('auth_tcp').with_value('<SERVICE DEFAULT>').with_quote(true) }
|
||||
@ -510,58 +504,53 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with ssh transport' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'ssh',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('<SERVICE DEFAULT>') }
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('ssh') }
|
||||
end
|
||||
|
||||
context 'with ssh transport with user' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'ssh',
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
:client_user => 'foobar',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('qemu+ssh://foobar@%s/system')}
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('<SERVICE DEFAULT>') }
|
||||
end
|
||||
|
||||
context 'with ssh transport with port' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'ssh',
|
||||
:client_port => 1234,
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
:client_port => 1234,
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('qemu+ssh://%s:1234/system')}
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('<SERVICE DEFAULT>') }
|
||||
end
|
||||
|
||||
context 'with ssh transport with extraparams' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'ssh',
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'ssh',
|
||||
:client_extraparams => {'foo' => '%', 'bar' => 'baz'},
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
})
|
||||
end
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_uri').with_value('qemu+ssh://%s/system?foo=%%25&bar=baz')}
|
||||
it { is_expected.to contain_nova_config('libvirt/live_migration_scheme').with_value('<SERVICE DEFAULT>') }
|
||||
end
|
||||
|
||||
context 'with tls transport' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'tls',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('virtproxyd-tls').with(
|
||||
@ -578,12 +567,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tls transport and listen_address' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'tls',
|
||||
:listen_address => '::1',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tls',
|
||||
:listen_address => '::1',
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('virtproxyd-tls').with(
|
||||
@ -606,11 +594,10 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tcp transport' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'tcp',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tcp',
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('virtproxyd-tcp').with(
|
||||
@ -627,12 +614,11 @@ describe 'nova::migration::libvirt' do
|
||||
end
|
||||
|
||||
context 'with tcp transport and listen_address' do
|
||||
let :params do
|
||||
{
|
||||
:transport => 'tcp',
|
||||
:listen_address => '::1',
|
||||
:modular_libvirt => true,
|
||||
}
|
||||
before :each do
|
||||
params.merge!({
|
||||
:transport => 'tcp',
|
||||
:listen_address => '::1',
|
||||
})
|
||||
end
|
||||
|
||||
it { is_expected.to contain_service('virtproxyd-tcp').with(
|
||||
@ -663,9 +649,24 @@ describe 'nova::migration::libvirt' do
|
||||
facts.merge!(OSDefaults.get_facts())
|
||||
end
|
||||
|
||||
it_behaves_like 'nova migration with libvirt'
|
||||
if facts[:os]['family'] == 'RedHat'
|
||||
let :params do
|
||||
{}
|
||||
end
|
||||
|
||||
if facts[:os]['family'] == 'Debian'
|
||||
# NOTE(tkajinam): Debian family uses monolithic libvirt by default, and
|
||||
# does not support modular libvirt
|
||||
it_behaves_like 'nova migration with monolithic libvirt'
|
||||
else
|
||||
# NOTE(tkajinam): RedHat family uses modular libvirt by default
|
||||
it_behaves_like 'nova migration with modular libvirt'
|
||||
|
||||
context 'with modular libvirt disabled' do
|
||||
before :each do
|
||||
params.merge!({ :modular_libvirt => false })
|
||||
end
|
||||
it_behaves_like 'nova migration with monolithic libvirt'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user