diff --git a/manifests/init.pp b/manifests/init.pp index 9b70287..a220594 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -28,6 +28,11 @@ class accessbot( } } + package { 'irc': + ensure => installed, + provider => openstack_pip, + } + exec { 'run_accessbot' : command => '/usr/local/bin/accessbot -c /etc/accessbot/accessbot.config -l /etc/accessbot/channels.yaml >> /var/log/accessbot/accessbot.log 2>&1', path => '/usr/local/bin:/usr/bin:/bin/', @@ -36,7 +41,8 @@ class accessbot( subscribe => File['/etc/accessbot/channels.yaml'], require => [File['/etc/accessbot/channels.yaml'], File['/etc/accessbot/accessbot.config'], - File['/usr/local/bin/accessbot']], + File['/usr/local/bin/accessbot'], + Package['irc']], } file { '/etc/accessbot': diff --git a/spec/acceptance/basic_spec.rb b/spec/acceptance/basic_spec.rb index 8b96041..27ea995 100755 --- a/spec/acceptance/basic_spec.rb +++ b/spec/acceptance/basic_spec.rb @@ -33,16 +33,7 @@ describe 'basic accessbot' do it { should be_file } it { should be_owned_by 'root' } it { should be_mode 440 } - it { should be_grouped_into 'accessbo' } - end - - end - - context 'main proccess' do - - describe process("accessbot") do - its(:user) { should eq "accessbot" } - its(:args) { should match /-c accessbot.config/ } + it { should be_grouped_into 'accessbot' } end end diff --git a/spec/acceptance/fixtures/default.pp b/spec/acceptance/fixtures/default.pp index 79ce4db..f0745a4 100644 --- a/spec/acceptance/fixtures/default.pp +++ b/spec/acceptance/fixtures/default.pp @@ -1,6 +1,6 @@ file { '/etc/channels.yaml': ensure => file, - content => 'channels:\n - name: openstack-rainbow-unicorn-pals', + content => "access:\n nobody: +v\nglobal:\n nobody:\n - nobody\nchannels:\n - name: openstack-rainbow-unicorn-pals", } class { '::accessbot': diff --git a/spec/acceptance/nodesets/nodepool-xenial.yml b/spec/acceptance/nodesets/nodepool-xenial.yml new file mode 100644 index 0000000..99dd318 --- /dev/null +++ b/spec/acceptance/nodesets/nodepool-xenial.yml @@ -0,0 +1,10 @@ +HOSTS: + ubuntu-16.04-amd64: + roles: + - master + platform: ubuntu-16.04-amd64 + hypervisor: none + ip: 127.0.0.1 +CONFIG: + type: foss + set_env: false diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb index 7a5efa1..de96291 100644 --- a/spec/spec_helper_acceptance.rb +++ b/spec/spec_helper_acceptance.rb @@ -2,7 +2,15 @@ require 'beaker-rspec' hosts.each do |host| - install_puppet + # puppet 3 isn't available from apt.puppetlabs.com so install it from the Xenial repos + on host, "which apt-get && apt-get install puppet -y", { :acceptable_exit_codes => [0,1] } + # otherwise use the beaker helpers to install the yum.puppetlabs.com repo and puppet + r = on host, "which yum", { :acceptable_exit_codes => [0,1] } + if r.exit_code == 0 + install_puppet + end + add_platform_foss_defaults(host, 'unix') + on host, "mkdir -p #{host['distmoduledir']}" end