From 91ae01bd358ea0696a865c88207e61daafe7cd8a Mon Sep 17 00:00:00 2001 From: Adam Jahn Date: Mon, 7 Dec 2015 16:16:58 -0500 Subject: implement acceptance tests --- spec/acceptance/basic_samba_spec.rb | 35 ++++++++++++++++++++++ spec/acceptance/nodesets/centos-66-x64.yml | 12 ++++++++ spec/acceptance/nodesets/centos-70-x64.yml | 12 ++++++++ spec/acceptance/nodesets/debian-78-x64.yml | 12 ++++++++ .../acceptance/nodesets/ubuntu-server-1204-x86.yml | 13 ++++++++ .../acceptance/nodesets/ubuntu-server-1404-x64.yml | 13 ++++++++ 6 files changed, 97 insertions(+) create mode 100644 spec/acceptance/basic_samba_spec.rb create mode 100644 spec/acceptance/nodesets/centos-66-x64.yml create mode 100644 spec/acceptance/nodesets/centos-70-x64.yml create mode 100644 spec/acceptance/nodesets/debian-78-x64.yml create mode 100644 spec/acceptance/nodesets/ubuntu-server-1204-x86.yml create mode 100644 spec/acceptance/nodesets/ubuntu-server-1404-x64.yml (limited to 'spec/acceptance') diff --git a/spec/acceptance/basic_samba_spec.rb b/spec/acceptance/basic_samba_spec.rb new file mode 100644 index 0000000..0dd6ac6 --- /dev/null +++ b/spec/acceptance/basic_samba_spec.rb @@ -0,0 +1,35 @@ +require 'spec_helper_acceptance' + +describe 'basic samba' do + context 'default parameters' do + let(:pp) {" + class { 'samba::server': + workgroup => 'example', + server_string => 'Example Samba Server' + } + + samba::server::share {'example-share': + comment => 'Example Share', + path => '/path/to/share', + guest_only => true, + guest_ok => true, + guest_account => 'guest', + browsable => false, + create_mask => 0777, + force_create_mask => 0777, + directory_mask => 0777, + force_directory_mask => 0777, + force_group => 'group', + force_user => 'user', + } + "} + + it 'should apply with no errors' do + apply_manifest(pp, :catch_failures=>true) + end + + it 'should be idempotent' do + apply_manifest(pp, :catch_changes=>true) + end + end +end diff --git a/spec/acceptance/nodesets/centos-66-x64.yml b/spec/acceptance/nodesets/centos-66-x64.yml new file mode 100644 index 0000000..1fffff6 --- /dev/null +++ b/spec/acceptance/nodesets/centos-66-x64.yml @@ -0,0 +1,12 @@ +HOSTS: + centos-66-x64: + roles: + - master + platform: el-6-x86_64 + box: puppetlabs/centos-6.6-64-nocm + box_url: https://vagrantcloud.com/puppetlabs/boxes/centos-6.6-64-nocm + hypervisor: vagrant +CONFIG: + log_level: verbose + type: foss + color: false diff --git a/spec/acceptance/nodesets/centos-70-x64.yml b/spec/acceptance/nodesets/centos-70-x64.yml new file mode 100644 index 0000000..845e47e --- /dev/null +++ b/spec/acceptance/nodesets/centos-70-x64.yml @@ -0,0 +1,12 @@ +HOSTS: + centos-70-x64: + roles: + - master + platform: el-7-x86_64 + box: puppetlabs/centos-7.0-64-nocm + box_url: https://vagrantcloud.com/puppetlabs/boxes/centos-7.0-64-nocm + hypervisor : vagrant +CONFIG: + log_level: verbose + type: foss + color: false diff --git a/spec/acceptance/nodesets/debian-78-x64.yml b/spec/acceptance/nodesets/debian-78-x64.yml new file mode 100644 index 0000000..c4062fd --- /dev/null +++ b/spec/acceptance/nodesets/debian-78-x64.yml @@ -0,0 +1,12 @@ +HOSTS: + debian-78-x64: + roles: + - master + platform: debian-7-amd64 + box: puppetlabs/debian-7.8-64-nocm + box_url: https://vagrantcloud.com/puppetlabs/boxes/debian-7.8-64-nocm + hypervisor: vagrant + +CONFIG: + log_level: verbose + type: foss diff --git a/spec/acceptance/nodesets/ubuntu-server-1204-x86.yml b/spec/acceptance/nodesets/ubuntu-server-1204-x86.yml new file mode 100644 index 0000000..c2e8657 --- /dev/null +++ b/spec/acceptance/nodesets/ubuntu-server-1204-x86.yml @@ -0,0 +1,13 @@ +HOSTS: + ubuntu-server-1204-x64: + roles: + - master + platform: ubuntu-1204-amd64 + box: puppetlabs/ubuntu-12.04-64-nocm + box_url: https://vagrantcloud.com/puppetlabs/boxes/ubuntu-12.04-64-nocm + hypervisor: vagrant + +CONFIG: + log_level: verbose + type: foss + color: false diff --git a/spec/acceptance/nodesets/ubuntu-server-1404-x64.yml b/spec/acceptance/nodesets/ubuntu-server-1404-x64.yml new file mode 100644 index 0000000..2fcee43 --- /dev/null +++ b/spec/acceptance/nodesets/ubuntu-server-1404-x64.yml @@ -0,0 +1,13 @@ +HOSTS: + ubuntu-server-1404-x64: + roles: + - master + platform: ubuntu-server-14.04-amd64 + box: puppetlabs/ubuntu-14.04-64-nocm + box_url: https://vagrantcloud.com/puppetlabs/ubuntu-14.04-64-nocm + hypervisor: vagrant + +CONFIG: + log_level: verbose + type: foss + color: false -- cgit v1.2.3 From f2e9e5f32e0af0d83d8380b94decc522ff87fa30 Mon Sep 17 00:00:00 2001 From: Adam Jahn Date: Mon, 7 Dec 2015 16:18:42 -0500 Subject: Add support for Debian 8. closes #47 --- manifests/server/params.pp | 12 +++++++----- spec/acceptance/nodesets/debian-81-x64.yml | 12 ++++++++++++ spec/classes/samba__server__service_spec.rb | 14 ++++++++++++-- 3 files changed, 31 insertions(+), 7 deletions(-) create mode 100644 spec/acceptance/nodesets/debian-81-x64.yml (limited to 'spec/acceptance') diff --git a/manifests/server/params.pp b/manifests/server/params.pp index 5f2fc3e..ba0c1be 100644 --- a/manifests/server/params.pp +++ b/manifests/server/params.pp @@ -3,12 +3,14 @@ class samba::server::params { case $::osfamily { 'Redhat': { $service_name = 'smb' } - - #On Debian family: Debian 7 => samba , Ubuntu => smbd - #Others, I don't know, hope 'samba' will works 'Debian': { - case $::operatingsystem{ - 'Debian': { $service_name = 'samba' } + case $::operatingsystem { + 'Debian': { + case $::operatingsystemmajrelease { + '8' : { $service_name = 'smbd' } + default: { $service_name = 'samba' } + } + } 'Ubuntu': { $service_name = 'smbd' $nmbd_name = 'nmbd' } default: { $service_name = 'samba' } diff --git a/spec/acceptance/nodesets/debian-81-x64.yml b/spec/acceptance/nodesets/debian-81-x64.yml new file mode 100644 index 0000000..3b1d8aa --- /dev/null +++ b/spec/acceptance/nodesets/debian-81-x64.yml @@ -0,0 +1,12 @@ +HOSTS: + debian-81-x64: + roles: + - master + platform: debian-8-amd64 + box: lazyfrosch/debian-8-jessie-amd64-puppet + box_url: https://vagrantcloud.com/lazyfrosch/boxes/debian-8-jessie-amd64-puppet + hypervisor: vagrant + +CONFIG: + log_level: verbose + type: foss diff --git a/spec/classes/samba__server__service_spec.rb b/spec/classes/samba__server__service_spec.rb index ada7f21..4352ec2 100644 --- a/spec/classes/samba__server__service_spec.rb +++ b/spec/classes/samba__server__service_spec.rb @@ -7,8 +7,18 @@ describe 'samba::server::service' do it { should contain_service('samba').with_require('Class[Samba::Server::Config]') } context 'Debian' do - let(:facts) {{ :osfamily => 'Debian', :operatingsystem => 'Debian' }} - it { should contain_service('samba') } + context 'wheezy' do + let(:facts) {{ :osfamily => 'Debian', + :operatingsystem => 'Debian', + :operatingsystemmajrelease => '7' }} + it { should contain_service('samba') } + end + context 'jessie' do + let(:facts) {{ :osfamily => 'Debian', + :operatingsystem => 'Debian', + :operatingsystemmajrelease => '8' }} + it { should contain_service('smbd') } + end end context 'Ubuntu' do -- cgit v1.2.3 From 4eb267371c871a4b125d75830432a17bc9d0518b Mon Sep 17 00:00:00 2001 From: Adam Jahn Date: Mon, 7 Dec 2015 17:03:44 -0500 Subject: fix 14.04 nodeset --- spec/acceptance/nodesets/ubuntu-server-1404-x64.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'spec/acceptance') diff --git a/spec/acceptance/nodesets/ubuntu-server-1404-x64.yml b/spec/acceptance/nodesets/ubuntu-server-1404-x64.yml index 2fcee43..62e2ea9 100644 --- a/spec/acceptance/nodesets/ubuntu-server-1404-x64.yml +++ b/spec/acceptance/nodesets/ubuntu-server-1404-x64.yml @@ -2,11 +2,10 @@ HOSTS: ubuntu-server-1404-x64: roles: - master - platform: ubuntu-server-14.04-amd64 + platform: ubuntu-1404-amd64 box: puppetlabs/ubuntu-14.04-64-nocm box_url: https://vagrantcloud.com/puppetlabs/ubuntu-14.04-64-nocm hypervisor: vagrant - CONFIG: log_level: verbose type: foss -- cgit v1.2.3 From 2e78387a530b2c987bf3c26712f30a641abd2081 Mon Sep 17 00:00:00 2001 From: Daniel Sung Date: Mon, 15 Feb 2016 15:50:43 +0000 Subject: Fix name of 'force directory mode' option Previously the class was setting a value for 'force directory mask' which was getting ignored by samba. Running testparm -v would give: Unknown parameter encountered: "force directory mask" Ignoring unknown parameter "force directory mask" The correct option name is 'force directory mode' according to the man page. --- manifests/server/share.pp | 8 ++++---- spec/acceptance/basic_samba_spec.rb | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'spec/acceptance') diff --git a/manifests/server/share.pp b/manifests/server/share.pp index e5e23f1..7f8191c 100644 --- a/manifests/server/share.pp +++ b/manifests/server/share.pp @@ -8,7 +8,7 @@ define samba::server::share($ensure = present, $create_mask = '', $directory_mask = '', $force_create_mask = '', - $force_directory_mask = '', + $force_directory_mode = '', $force_group = '', $force_user = '', $guest_ok = '', @@ -81,9 +81,9 @@ define samba::server::share($ensure = present, '' => "rm \"${target}/force create mask\"", default => "set \"${target}/force create mask\" '${force_create_mask}'", }, - $force_directory_mask ? { - '' => "rm \"${target}/force directory mask\"", - default => "set \"${target}/force directory mask\" '${force_directory_mask}'", + $force_directory_mode ? { + '' => "rm \"${target}/force directory mode\"", + default => "set \"${target}/force directory mode\" '${force_directory_mode}'", }, $force_group ? { '' => "rm \"${target}/force group\"", diff --git a/spec/acceptance/basic_samba_spec.rb b/spec/acceptance/basic_samba_spec.rb index 0dd6ac6..76e7f9f 100644 --- a/spec/acceptance/basic_samba_spec.rb +++ b/spec/acceptance/basic_samba_spec.rb @@ -18,7 +18,7 @@ describe 'basic samba' do create_mask => 0777, force_create_mask => 0777, directory_mask => 0777, - force_directory_mask => 0777, + force_directory_mode => 0777, force_group => 'group', force_user => 'user', } -- cgit v1.2.3 From e8d067895daebc19a3c39bd3071922bec1a34327 Mon Sep 17 00:00:00 2001 From: Hielke Jager Date: Wed, 9 Mar 2016 19:32:46 +0100 Subject: [TASK] Change spec to check for hide_dot_files in share. --- spec/acceptance/basic_samba_spec.rb | 1 + 1 file changed, 1 insertion(+) (limited to 'spec/acceptance') diff --git a/spec/acceptance/basic_samba_spec.rb b/spec/acceptance/basic_samba_spec.rb index 76e7f9f..b4cc0e8 100644 --- a/spec/acceptance/basic_samba_spec.rb +++ b/spec/acceptance/basic_samba_spec.rb @@ -21,6 +21,7 @@ describe 'basic samba' do force_directory_mode => 0777, force_group => 'group', force_user => 'user', + hide_dot_files => false } "} -- cgit v1.2.3 From 1ce0857037cc6187e4fa66b941bde8245bbb947b Mon Sep 17 00:00:00 2001 From: Hielke Jager Date: Wed, 9 Mar 2016 19:35:59 +0100 Subject: And add the last , --- spec/acceptance/basic_samba_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'spec/acceptance') diff --git a/spec/acceptance/basic_samba_spec.rb b/spec/acceptance/basic_samba_spec.rb index b4cc0e8..8a9e363 100644 --- a/spec/acceptance/basic_samba_spec.rb +++ b/spec/acceptance/basic_samba_spec.rb @@ -21,7 +21,7 @@ describe 'basic samba' do force_directory_mode => 0777, force_group => 'group', force_user => 'user', - hide_dot_files => false + hide_dot_files => false, } "} -- cgit v1.2.3