From 0d9e938e92a25673c3712866e2d2108a255b67d5 Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Tue, 20 May 2014 18:15:03 -0700 Subject: Update specs and fix FM-1361 - Add install.rb for pre-suite - Add catches for failures/changes to manifest application - Correct root ssh key copying - Add sleeps for killing processes releasing ports - Fix FM-1361 --- spec/acceptance/beaker_helper.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 spec/acceptance/beaker_helper.rb (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb new file mode 100644 index 0000000..2bf663b --- /dev/null +++ b/spec/acceptance/beaker_helper.rb @@ -0,0 +1,18 @@ +test_name "Installing Puppet and vcsrepo module" do + step 'install puppet' do + if @options[:provision] + # This will fail if puppet is already installed, ie --no-provision + if hosts.first.is_pe? + install_pe + else + install_puppet + end + end + end + step 'install module' do + proj_root = File.expand_path(File.join(File.dirname(__FILE__),'..','..')) + # Waiting on release of puppet_module_install in beaker + #puppet_module_install(:source => proj_root, :module_name => 'vcsrepo') + scp_to(hosts, proj_root, File.join(hosts.first['distmoduledir'], 'vcsrepo')) + end +end -- cgit v1.2.3 From 521d321181c95eb042c23c8277e79cfe1d066117 Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Tue, 27 May 2014 12:41:31 -0700 Subject: Update tests for ubuntu 14.04 In ubuntu 14.04 git 1.9.1 is the default version, and 1.9+ fatally fail if the user.email and user.name are not set (previously it would just warn). This commit sets those up so the tests will actually run. --- spec/acceptance/beaker_helper.rb | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 2bf663b..262cb62 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -14,5 +14,11 @@ test_name "Installing Puppet and vcsrepo module" do # Waiting on release of puppet_module_install in beaker #puppet_module_install(:source => proj_root, :module_name => 'vcsrepo') scp_to(hosts, proj_root, File.join(hosts.first['distmoduledir'], 'vcsrepo')) + gitconfig = <<-EOS +[user] + email = root@localhost + name = root +EOS + create_remote_file(host, "/root/.gitconfig", script) end end -- cgit v1.2.3 From 9c78a08ed018f279e965c4ebd2d4eb7159897d1a Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Mon, 16 Jun 2014 10:18:01 -0700 Subject: Patch beaker spec helper for create_remote_file --- spec/acceptance/beaker_helper.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 262cb62..2518a40 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -19,6 +19,6 @@ test_name "Installing Puppet and vcsrepo module" do email = root@localhost name = root EOS - create_remote_file(host, "/root/.gitconfig", script) + create_remote_file(hosts.first, "/root/.gitconfig", script) end end -- cgit v1.2.3 From b55d04145e0ff2ebcb59515fa348ff1e9d22b4e2 Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Mon, 16 Jun 2014 10:27:12 -0700 Subject: Need to make the moduledir before scping the module to agents --- spec/acceptance/beaker_helper.rb | 1 + 1 file changed, 1 insertion(+) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 2518a40..4ac5185 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -6,6 +6,7 @@ test_name "Installing Puppet and vcsrepo module" do install_pe else install_puppet + on host, "mkdir -p #{host['distmoduledir']}" end end end -- cgit v1.2.3 From c98fc9385884f4e8416cbd67302ba7c94c0deb67 Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Mon, 16 Jun 2014 10:45:29 -0700 Subject: Fix typo in mkdir --- spec/acceptance/beaker_helper.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 4ac5185..4f0121f 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -6,7 +6,7 @@ test_name "Installing Puppet and vcsrepo module" do install_pe else install_puppet - on host, "mkdir -p #{host['distmoduledir']}" + on hosts, "mkdir -p #{host['distmoduledir']}" end end end -- cgit v1.2.3 From 29c335fd633850db1fa60bc7b4ad19f2eaa131eb Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Mon, 16 Jun 2014 10:51:52 -0700 Subject: More typos --- spec/acceptance/beaker_helper.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 4f0121f..414796d 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -6,7 +6,7 @@ test_name "Installing Puppet and vcsrepo module" do install_pe else install_puppet - on hosts, "mkdir -p #{host['distmoduledir']}" + on hosts, "mkdir -p #{hosts.first['distmoduledir']}" end end end -- cgit v1.2.3 From 9603ec23e4217154932b6dbae115760b4f2e2274 Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Mon, 16 Jun 2014 10:57:02 -0700 Subject: Correct gitconfig typo --- spec/acceptance/beaker_helper.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 414796d..6b5fd46 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -20,6 +20,6 @@ test_name "Installing Puppet and vcsrepo module" do email = root@localhost name = root EOS - create_remote_file(hosts.first, "/root/.gitconfig", script) + create_remote_file(hosts.first, "/root/.gitconfig", gitconfig) end end -- cgit v1.2.3 From 02c38ece76ba621807f0a415d0ea90fff0f395bb Mon Sep 17 00:00:00 2001 From: Justin Stoller Date: Wed, 18 Jun 2014 14:02:33 -0700 Subject: (QENG-798) Update acceptance helpers to create distmoduledir Previously we were creating the module dir on foss installs, but not on PE. PE agents do not have a module dir deployed as part of the base PE install, so to test on PE agents we need to create the module dir. `mkdir -p` is idempotent, so we use it as a cudgle here. We also update the beaker_helper and spec_helper_acceptance to contain the same installation steps for test dependencies, warnings, and installation methods. --- spec/acceptance/beaker_helper.rb | 36 ++++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 6b5fd46..05aa4e7 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -10,16 +10,40 @@ test_name "Installing Puppet and vcsrepo module" do end end end + + step 'Ensure we can install our module' do + # We ask the host to interpolate it's distmoduledir because we don't + # actually know it on Windows until we've let it redirect us (depending + # on whether we're running as a 32/64 bit process on 32/64 bit Windows + moduledir = on(host, "echo #{host['distmoduledir']}").stdout.chomp + on host, "mkdir -p #{moduledir}" + end + step 'install module' do - proj_root = File.expand_path(File.join(File.dirname(__FILE__),'..','..')) - # Waiting on release of puppet_module_install in beaker - #puppet_module_install(:source => proj_root, :module_name => 'vcsrepo') - scp_to(hosts, proj_root, File.join(hosts.first['distmoduledir'], 'vcsrepo')) - gitconfig = <<-EOS + hosts.each do |host| + proj_root = File.expand_path(File.join(File.dirname(__FILE__),'..','..')) + + # This require beaker 1.12.2 I believe + puppet_module_install(:source => proj_root, :module_name => 'vcsrepo') + + case fact_on(host, 'osfamily') + when 'RedHat' + install_package(host, 'git') + when 'Debian' + install_package(host, 'git-core') + else + if !check_for_package(host, 'git') + puts "Git package is required for this module" + exit + end + end + + gitconfig = <<-EOS [user] email = root@localhost name = root EOS - create_remote_file(hosts.first, "/root/.gitconfig", gitconfig) + create_remote_file(host, "/root/.gitconfig", gitconfig) + end end end -- cgit v1.2.3 From 3441bc07fedb635e7682e29583d539dd712ea64c Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Fri, 11 Jul 2014 15:15:34 -0700 Subject: The helper calls host outside of an each loop --- spec/acceptance/beaker_helper.rb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 05aa4e7..592b15d 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -12,11 +12,13 @@ test_name "Installing Puppet and vcsrepo module" do end step 'Ensure we can install our module' do - # We ask the host to interpolate it's distmoduledir because we don't - # actually know it on Windows until we've let it redirect us (depending - # on whether we're running as a 32/64 bit process on 32/64 bit Windows - moduledir = on(host, "echo #{host['distmoduledir']}").stdout.chomp - on host, "mkdir -p #{moduledir}" + hosts.each do |host| + # We ask the host to interpolate it's distmoduledir because we don't + # actually know it on Windows until we've let it redirect us (depending + # on whether we're running as a 32/64 bit process on 32/64 bit Windows + moduledir = on(host, "echo #{host['distmoduledir']}").stdout.chomp + on host, "mkdir -p #{moduledir}" + end end step 'install module' do -- cgit v1.2.3 From 7eb9ce2a3905f0b825bb4640847498572c70ca76 Mon Sep 17 00:00:00 2001 From: Justin Stoller Date: Mon, 14 Jul 2014 13:45:09 -0700 Subject: (maint) Use `copy_module_to` in `beaker_helper.rb` Previously we were using `puppet_module_install()`. Which was ported from Beaker-RSpec. Unfortunately for our heros that method has been refactored since this was ran last. The method `puppet_module_install()` in Beaker installs from the public forge, while the previous behavior, installing via scp from the current directory, has moved to the method `copy_module_to`. This updates the helper for the beaker tests to use the updated method. --- spec/acceptance/beaker_helper.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'spec/acceptance/beaker_helper.rb') diff --git a/spec/acceptance/beaker_helper.rb b/spec/acceptance/beaker_helper.rb index 592b15d..4d23204 100644 --- a/spec/acceptance/beaker_helper.rb +++ b/spec/acceptance/beaker_helper.rb @@ -25,8 +25,8 @@ test_name "Installing Puppet and vcsrepo module" do hosts.each do |host| proj_root = File.expand_path(File.join(File.dirname(__FILE__),'..','..')) - # This require beaker 1.12.2 I believe - puppet_module_install(:source => proj_root, :module_name => 'vcsrepo') + # This require beaker 1.15 + copy_module_to(host, :source => proj_root, :module_name => 'vcsrepo') case fact_on(host, 'osfamily') when 'RedHat' -- cgit v1.2.3