Remove qpid messaging support

Qpid messaging driver is removed from Oslo.messaging [1]
Therefore, we cannot support it anymore.

[1] I4a9cba314c4a2f24307504fa7b5427424268b114

Change-Id: Ifa421b20ba218b5bb3d2041687cb3d843924f94e
This commit is contained in:
Denis Egorenko 2015-12-03 19:33:08 +03:00
parent 76c53637ad
commit d92c06bf77
4 changed files with 79 additions and 284 deletions

@ -96,54 +96,6 @@
# Use durable queues in amqp.
# (Optional) Defaults to false.
#
# [*qpid_hostname*]
# (Optional) Location of qpid server
# Defaults to 'localhost'.
#
# [*qpid_port*]
# (Optional) Port for qpid server.
# Defaults to '5672'.
#
# [*qpid_hosts*]
# (Optional) Qpid HA cluster host:port pairs. (list value)
# Defaults to false
#
# [*qpid_username*]
# (Optional) Username to use when connecting to qpid.
# Defaults to 'guest'.
#
# [*qpid_password*]
# (Optional) Password to use when connecting to qpid.
# Defaults to 'false'.
#
# [*qpid_sasl_mechanisms*]
# (Optional) ENable one or more SASL mechanisms.
# Defaults to 'false'.
#
# [*qpid_heartbeat*]
# (Optional) Seconds between connection keepalive heartbeats.
# Defaults to '60'.
#
# [*qpid_protocol*]
# (Optional) Transport to use, either 'tcp' or 'ssl'.
# Defaults to 'tcp'.
#
# [*qpid_tcp_nodelay*]
# (Optional) Disable Nagle Algorithm.
# Defaults to 'true'.
#
# [*qpid_reconnect*]
#
# [*qpid_reconnect_timeout*]
#
# [*qpid_reconnect_limit*]
#
# [*qpid_reconnect_interval*]
#
# [*qpid_reconnect_interval_min*]
#
# [*qpid_reconnect_interval_max*]
#
# [*use_syslog*]
# (Optional) Use syslog for logging.
# Defaults to undef.
@ -236,6 +188,55 @@
# Defaults to: $::cinder::params::lock_path
#
# === Deprecated Parameters
#
# [*qpid_hostname*]
# (Optional) Location of qpid server
# Defaults to undef.
#
# [*qpid_port*]
# (Optional) Port for qpid server.
# Defaults to undef.
#
# [*qpid_hosts*]
# (Optional) Qpid HA cluster host:port pairs. (list value)
# Defaults to undef.
#
# [*qpid_username*]
# (Optional) Username to use when connecting to qpid.
# Defaults to undef.
#
# [*qpid_password*]
# (Optional) Password to use when connecting to qpid.
# Defaults to undef.
#
# [*qpid_sasl_mechanisms*]
# (Optional) ENable one or more SASL mechanisms.
# Defaults to undef.
#
# [*qpid_heartbeat*]
# (Optional) Seconds between connection keepalive heartbeats.
# Defaults to undef.
#
# [*qpid_protocol*]
# (Optional) Transport to use, either 'tcp' or 'ssl'.
# Defaults to undef.
#
# [*qpid_tcp_nodelay*]
# (Optional) Disable Nagle Algorithm.
# Defaults to undef.
#
# [*qpid_reconnect*]
#
# [*qpid_reconnect_timeout*]
#
# [*qpid_reconnect_limit*]
#
# [*qpid_reconnect_interval*]
#
# [*qpid_reconnect_interval_min*]
#
# [*qpid_reconnect_interval_max*]
#
class cinder (
$database_connection = undef,
$database_idle_timeout = undef,
@ -261,21 +262,6 @@ class cinder (
$kombu_ssl_version = $::os_service_default,
$kombu_reconnect_delay = $::os_service_default,
$amqp_durable_queues = false,
$qpid_hostname = 'localhost',
$qpid_port = '5672',
$qpid_hosts = false,
$qpid_username = 'guest',
$qpid_password = false,
$qpid_sasl_mechanisms = false,
$qpid_reconnect = true,
$qpid_reconnect_timeout = 0,
$qpid_reconnect_limit = 0,
$qpid_reconnect_interval_min = 0,
$qpid_reconnect_interval_max = 0,
$qpid_reconnect_interval = 0,
$qpid_heartbeat = 60,
$qpid_protocol = 'tcp',
$qpid_tcp_nodelay = true,
$package_ensure = 'present',
$use_ssl = false,
$ca_file = $::os_service_default,
@ -293,6 +279,23 @@ class cinder (
$enable_v1_api = true,
$enable_v2_api = true,
$lock_path = $::cinder::params::lock_path,
# DEPRECATED PARAMETERS
$qpid_hostname = undef,
$qpid_port = undef,
$qpid_hosts = undef,
$qpid_username = undef,
$qpid_password = undef,
$qpid_sasl_mechanisms = undef,
$qpid_reconnect = undef,
$qpid_reconnect_timeout = undef,
$qpid_reconnect_limit = undef,
$qpid_reconnect_interval_min = undef,
$qpid_reconnect_interval_max = undef,
$qpid_reconnect_interval = undef,
$qpid_heartbeat = undef,
$qpid_protocol = undef,
$qpid_tcp_nodelay = undef,
) {
include ::cinder::db
@ -356,47 +359,7 @@ class cinder (
}
if $rpc_backend == 'cinder.openstack.common.rpc.impl_qpid' or $rpc_backend == 'qpid' {
if ! $qpid_password {
fail('Please specify a qpid_password parameter.')
}
cinder_config {
'oslo_messaging_qpid/qpid_username': value => $qpid_username;
'oslo_messaging_qpid/qpid_password': value => $qpid_password, secret => true;
'oslo_messaging_qpid/qpid_reconnect': value => $qpid_reconnect;
'oslo_messaging_qpid/qpid_reconnect_timeout': value => $qpid_reconnect_timeout;
'oslo_messaging_qpid/qpid_reconnect_limit': value => $qpid_reconnect_limit;
'oslo_messaging_qpid/qpid_reconnect_interval_min': value => $qpid_reconnect_interval_min;
'oslo_messaging_qpid/qpid_reconnect_interval_max': value => $qpid_reconnect_interval_max;
'oslo_messaging_qpid/qpid_reconnect_interval': value => $qpid_reconnect_interval;
'oslo_messaging_qpid/qpid_heartbeat': value => $qpid_heartbeat;
'oslo_messaging_qpid/qpid_protocol': value => $qpid_protocol;
'oslo_messaging_qpid/qpid_tcp_nodelay': value => $qpid_tcp_nodelay;
'oslo_messaging_qpid/amqp_durable_queues': value => $amqp_durable_queues;
}
if $qpid_hosts {
cinder_config { 'oslo_messaging_qpid/qpid_hosts': value => join(any2array($qpid_hosts), ',') }
} else {
cinder_config { 'oslo_messaging_qpid/qpid_hosts': value => "${qpid_hostname}:${qpid_port}" }
cinder_config { 'oslo_messaging_qpid/qpid_hostname': value => $qpid_hostname }
cinder_config { 'oslo_messaging_qpid/qpid_port': value => $qpid_port }
}
if is_array($qpid_sasl_mechanisms) {
cinder_config {
'DEFAULT/qpid_sasl_mechanisms': value => join($qpid_sasl_mechanisms, ' ');
}
} elsif $qpid_sasl_mechanisms {
cinder_config {
'DEFAULT/qpid_sasl_mechanisms': value => $qpid_sasl_mechanisms;
}
} else {
cinder_config {
'DEFAULT/qpid_sasl_mechanisms': ensure => absent;
}
}
warning('Qpid driver is removed from Oslo.messaging in the Mitaka release')
}
if ! $default_availability_zone {

@ -1,58 +1,36 @@
# == Class: cinder::qpid
#
# class for installing qpid server for cinder
# Deprecated class for installing qpid server for cinder
#
# === Parameters
#
# [*enabled*]
# (Optional) Whether to enable the qpid service.
# Defaults to 'true'.
# Defaults to undef.
#
# [*user*]
# (Optional) The username to use when connecting to qpid.
# Defaults to 'guest'.
# Defaults to undef.
#
# [*password*]
# (Optional) The password to use when connecting to qpid
# Defaults to 'guest'.
# Defaults to undef.
#
# [*file*]
# (Optional) The SASL database.
# Defaults to '/var/lib/qpidd/qpidd.sasldb'.
# Defaults to undef.
#
# [*realm*]
# (Optional) The Realm for qpid.
# Defaults to 'OPENSTACK'.
#
# Defaults to undef.
#
class cinder::qpid (
$enabled = true,
$user ='guest',
$password ='guest',
$file ='/var/lib/qpidd/qpidd.sasldb',
$realm ='OPENSTACK'
$enabled = undef,
$user = undef,
$password = undef,
$file = undef,
$realm = undef
) {
# only configure cinder after the queue is up
Class['qpid::server'] -> Package<| title == 'cinder' |>
if ($enabled) {
$service_ensure = 'running'
qpid_user { $user:
password => $password,
file => $file,
realm => $realm,
provider => 'saslpasswd2',
require => Class['qpid::server'],
}
} else {
$service_ensure = 'stopped'
}
class { '::qpid::server':
service_ensure => $service_ensure
}
warning('Qpid driver is removed from Oslo.messaging in the Mitaka release')
}

@ -1,51 +0,0 @@
require 'spec_helper'
describe 'cinder::qpid' do
let :facts do
{:puppetversion => '2.7',
:osfamily => 'RedHat'}
end
describe 'with defaults' do
it 'should contain all of the default resources' do
is_expected.to contain_class('qpid::server').with(
:service_ensure => 'running',
:port => '5672'
)
end
it 'should contain user' do
is_expected.to contain_qpid_user('guest').with(
:password => 'guest',
:file => '/var/lib/qpidd/qpidd.sasldb',
:realm => 'OPENSTACK',
:provider => 'saslpasswd2'
)
end
end
describe 'when disabled' do
let :params do
{
:enabled => false
}
end
it 'should be disabled' do
is_expected.to_not contain_qpid_user('guest')
is_expected.to contain_class('qpid::server').with(
:service_ensure => 'stopped'
)
end
end
end

@ -82,101 +82,6 @@ describe 'cinder' do
end
end
describe 'with qpid rpc supplied' do
let :params do
{
:database_connection => 'mysql://user:password@host/database',
:qpid_password => 'guest',
:rpc_backend => 'qpid'
}
end
it { is_expected.to contain_cinder_config('DEFAULT/rpc_backend').with_value('qpid') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_hostname').with_value('localhost') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_port').with_value('5672') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_hosts').with_value('localhost:5672') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_username').with_value('guest') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_password').with_value('guest').with_secret(true) }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_reconnect').with_value(true) }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_reconnect_timeout').with_value('0') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_reconnect_limit').with_value('0') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_reconnect_interval_min').with_value('0') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_reconnect_interval_max').with_value('0') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_reconnect_interval').with_value('0') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_heartbeat').with_value('60') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_protocol').with_value('tcp') }
it { is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_tcp_nodelay').with_value(true) }
end
describe 'with modified qpid_hosts' do
let :params do
{
:database_connection => 'mysql://user:password@host/database',
:qpid_password => 'guest',
:rpc_backend => 'qpid',
:qpid_hosts => ['qpid1:5672', 'qpid2:5672']
}
end
it 'should contain many' do
is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_hosts').with(:value => 'qpid1:5672,qpid2:5672')
end
end
describe 'with a single qpid_hosts entry' do
let :params do
{
:database_connection => 'mysql://user:password@host/database',
:qpid_password => 'guest',
:rpc_backend => 'qpid',
:qpid_hosts => ['qpid1:5672']
}
end
it 'should contain one' do
is_expected.to contain_cinder_config('oslo_messaging_qpid/qpid_hosts').with(:value => 'qpid1:5672')
end
end
describe 'with qpid rpc and no qpid_sasl_mechanisms' do
let :params do
{
:database_connection => 'mysql://user:password@host/database',
:qpid_password => 'guest',
:rpc_backend => 'qpid'
}
end
it { is_expected.to contain_cinder_config('DEFAULT/qpid_sasl_mechanisms').with_ensure('absent') }
end
describe 'with qpid rpc and qpid_sasl_mechanisms string' do
let :params do
{
:database_connection => 'mysql://user:password@host/database',
:qpid_password => 'guest',
:qpid_sasl_mechanisms => 'PLAIN',
:rpc_backend => 'qpid'
}
end
it { is_expected.to contain_cinder_config('DEFAULT/qpid_sasl_mechanisms').with_value('PLAIN') }
end
describe 'with qpid rpc and qpid_sasl_mechanisms array' do
let :params do
{
:database_connection => 'mysql://user:password@host/database',
:qpid_password => 'guest',
:qpid_sasl_mechanisms => [ 'DIGEST-MD5', 'GSSAPI', 'PLAIN' ],
:rpc_backend => 'qpid'
}
end
it { is_expected.to contain_cinder_config('DEFAULT/qpid_sasl_mechanisms').with_value('DIGEST-MD5 GSSAPI PLAIN') }
end
describe 'with SSL enabled with kombu' do
let :params do
req_params.merge!({