puppet-tripleo/spec/classes/tripleo_profile_base_nova_scheduler_spec.rb
Andrew Smith e1a1a5cbed Use rpc and notify transport_url for oslo_messaging backends
This commit adds the transport_url for specifying the oslo.messaging
rpc and notify transport schemes. The rpc or notification backend
can be one of rabbit, amqp, zmq, etc. Oslo.messaging is deprecating
the host, port and auth configuration options. All drivers will
get the options via the transport_url.

This patch:
* Adds transport_url to base services
* Updates the corresponding specs
* Adds to default hierdata

Depends-On: I1cf93d2caebfa1f7373c16754a2ad9bd15eb1a40

Change-Id: Iea5607dbb3ee6b1dd50acc1395de52dc920aa915
2017-02-17 10:08:38 -05:00

65 lines
1.9 KiB
Ruby

#
# Copyright (C) 2017 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
require 'spec_helper'
describe 'tripleo::profile::base::nova::scheduler' do
shared_examples_for 'tripleo::profile::base::nova::scheduler' do
context 'with step less than 4' do
let(:params) { { :step => 1, } }
it {
is_expected.to contain_class('tripleo::profile::base::nova::scheduler')
is_expected.to_not contain_class('tripleo::profile::base::nova')
is_expected.to_not contain_class('nova::scheduler')
is_expected.to_not contain_class('nova::scheduler::filter')
}
end
context 'with step 4' do
let(:pre_condition) do
<<-eos
class { '::tripleo::profile::base::nova':
step => #{params[:step]},
oslomsg_rpc_hosts => [ '127.0.0.1' ],
}
eos
end
let(:params) { { :step => 4, } }
it {
is_expected.to contain_class('tripleo::profile::base::nova::scheduler')
is_expected.to contain_class('tripleo::profile::base::nova')
is_expected.to contain_class('nova::scheduler')
is_expected.to contain_class('nova::scheduler::filter')
}
end
end
on_supported_os.each do |os, facts|
context "on #{os}" do
let(:facts) do
facts.merge({ :hostname => 'node.example.com' })
end
it_behaves_like 'tripleo::profile::base::nova::scheduler'
end
end
end