summaryrefslogtreecommitdiffstats
path: root/spec/defines
diff options
context:
space:
mode:
Diffstat (limited to 'spec/defines')
-rw-r--r--spec/defines/tripleo_haproxy_endpoint_spec.rb72
-rw-r--r--spec/defines/tripleo_host_sriov_numvfs_persistence_spec.rb40
2 files changed, 112 insertions, 0 deletions
diff --git a/spec/defines/tripleo_haproxy_endpoint_spec.rb b/spec/defines/tripleo_haproxy_endpoint_spec.rb
new file mode 100644
index 0000000..72d1619
--- /dev/null
+++ b/spec/defines/tripleo_haproxy_endpoint_spec.rb
@@ -0,0 +1,72 @@
+require 'spec_helper'
+
+describe 'tripleo::haproxy::endpoint' do
+
+ let(:title) { 'neutron' }
+
+ let :pre_condition do
+ 'include ::haproxy'
+ end
+
+ let :params do {
+ :public_virtual_ip => '192.168.0.1',
+ :internal_ip => '10.0.0.1',
+ :service_port => 9696,
+ :ip_addresses => ['10.0.0.2', '10.0.0.3', '10.0.0.4'],
+ :server_names => ['controller1', 'controller2', 'controller3'],
+ :public_ssl_port => 19696,
+ :member_options => [ 'check', 'inter 2000', 'rise 2', 'fall 5' ],
+ :haproxy_listen_bind_param => ['transparent'],
+ }
+ end
+
+ shared_examples_for 'tripleo haproxy endpoint' do
+ context 'with basic parameters to configure neutron binding' do
+ it 'should configure haproxy' do
+ is_expected.to contain_haproxy__listen('neutron').with(
+ :collect_exported => false,
+ :bind => [
+ ['10.0.0.1:9696', ['transparent']],
+ ['192.168.0.1:9696', ['transparent']]
+ ]
+ )
+ end
+ end
+
+ context 'with dual-stack' do
+ before :each do
+ params.merge!({
+ :public_virtual_ip => ['fd00:fd00:fd00:2000::14', '192.168.0.1'],
+ })
+ end
+ it 'should configure haproxy' do
+ is_expected.to contain_haproxy__listen('neutron').with(
+ :collect_exported => false,
+ :bind => [
+ ['10.0.0.1:9696', ['transparent']],
+ ['fd00:fd00:fd00:2000::14:9696', ['transparent']],
+ ['192.168.0.1:9696', ['transparent']]
+ ]
+ )
+ end
+ end
+ end
+
+ context 'on Debian platforms' do
+ let :facts do
+ { :osfamily => 'Debian',
+ :hostname => 'myhost' }
+ end
+
+ it_configures 'tripleo haproxy endpoint'
+ end
+
+ context 'on RedHat platforms' do
+ let :facts do
+ { :osfamily => 'RedHat',
+ :hostname => 'myhost' }
+ end
+
+ it_configures 'tripleo haproxy endpoint'
+ end
+end
diff --git a/spec/defines/tripleo_host_sriov_numvfs_persistence_spec.rb b/spec/defines/tripleo_host_sriov_numvfs_persistence_spec.rb
new file mode 100644
index 0000000..57559a2
--- /dev/null
+++ b/spec/defines/tripleo_host_sriov_numvfs_persistence_spec.rb
@@ -0,0 +1,40 @@
+require 'spec_helper'
+
+describe 'tripleo::host::sriov::numvfs_persistence' do
+
+ describe 'confugure numvfs for persistence' do
+
+ let :title do
+ 'numvfs'
+ end
+
+ let :params do
+ {
+ :name => 'persistence',
+ :vf_defs => ['eth0:10','eth1:8'],
+ :content_string => "Hashbang\n"
+ }
+ end
+
+ it 'configures persistence' do
+ is_expected.to contain_file('/etc/sysconfig/allocate_vfs').with(
+ :ensure => 'file',
+ :content => "Hashbang\n[ \"eth0\" == \"\$1\" ] && echo 10 > /sys/class/net/eth0/device/sriov_numvfs\n[ \"eth1\" == \"\$1\" ] && echo 8 > /sys/class/net/eth1/device/sriov_numvfs\n",
+ :group => 'root',
+ :mode => '0755',
+ :owner => 'root',
+ )
+ is_expected.to contain_file('/sbin/ifup-local').with(
+ :group => 'root',
+ :mode => '0755',
+ :owner => 'root',
+ :content => '#!/bin/bash',
+ :replace => false,
+ )
+ is_expected.to contain_file_line('call_ifup-local').with(
+ :path => '/sbin/ifup-local',
+ :line => '/etc/sysconfig/allocate_vfs $1',
+ )
+ end
+ end
+end