fuel-library/deployment/puppet/cluster/spec/classes/cluster_spec.rb

54 lines
1.4 KiB
Ruby

require 'spec_helper'
describe 'cluster' do
let(:default_params) { {
:internal_address => '127.0.0.1',
:quorum_members => ['localhost'],
:unicast_addresses => ['127.0.0.1'],
:cluster_recheck_interval => '190s',
} }
shared_examples_for 'cluster configuration' do
let :params do
default_params
end
context 'with default params' do
it 'configures corosync with pacemaker' do
should contain_class('openstack::corosync').with(
:bind_address => default_params[:internal_address],
:quorum_members => default_params[:quorum_members],
:unicast_addresses => default_params[:unicast_addresses],
:packages => packages,
:cluster_recheck_interval => default_params[:cluster_recheck_interval])
should contain_file('ocf-fuel-path').with(
:ensure => 'directory',
:path => '/usr/lib/ocf/resource.d/fuel',
:recurse => true,
:owner => 'root',
:group => 'root')
end
end
end
on_supported_os(supported_os: supported_os).each do |os, facts|
context "on #{os}" do
let(:facts) { facts.merge(common_facts) }
let :packages do
if facts[:osfamily] == 'Debian'
[ 'crmsh', 'pcs' ]
else
['crmsh']
end
end
it_configures 'cluster configuration'
end
end
end