X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fkeystone%2Fspec%2Fspec_helper_acceptance.rb;fp=3rdparty%2Fmodules%2Fkeystone%2Fspec%2Fspec_helper_acceptance.rb;h=429e807c4282ee1d558caaab53feb75fc10ad492;hb=2dc39f2a756f82040d82cba324b21f44fad8ef3f;hp=2c2634ad019a118169a44260e19f8a221dfd652b;hpb=d4b6110c989169c702f039a4c7dc1b309685bba3;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/keystone/spec/spec_helper_acceptance.rb b/3rdparty/modules/keystone/spec/spec_helper_acceptance.rb index 2c2634ad0..429e807c4 100644 --- a/3rdparty/modules/keystone/spec/spec_helper_acceptance.rb +++ b/3rdparty/modules/keystone/spec/spec_helper_acceptance.rb @@ -6,6 +6,7 @@ run_puppet_install_helper RSpec.configure do |c| # Project root proj_root = File.expand_path(File.join(File.dirname(__FILE__), '..')) + modname = JSON.parse(open('metadata.json').read)['name'].split('-')[1] # Readable test descriptions c.formatter = :documentation @@ -18,25 +19,38 @@ RSpec.configure do |c| # install git install_package host, 'git' - # clean out any module cruft - shell('rm -fr /etc/puppet/modules/*') + zuul_ref = ENV['ZUUL_REF'] + zuul_branch = ENV['ZUUL_BRANCH'] + zuul_url = ENV['ZUUL_URL'] + + repo = 'openstack/puppet-openstack-integration' + + # Start out with clean moduledir, don't trust r10k to purge it + on host, "rm -rf /etc/puppet/modules/*" + # Install dependent modules via git or zuul + r = on host, "test -e /usr/zuul-env/bin/zuul-cloner", { :acceptable_exit_codes => [0,1] } + if r.exit_code == 0 + zuul_clone_cmd = '/usr/zuul-env/bin/zuul-cloner ' + zuul_clone_cmd += '--cache-dir /opt/git ' + zuul_clone_cmd += "--zuul-ref #{zuul_ref} " + zuul_clone_cmd += "--zuul-branch #{zuul_branch} " + zuul_clone_cmd += "--zuul-url #{zuul_url} " + zuul_clone_cmd += "git://git.openstack.org #{repo}" + on host, zuul_clone_cmd + else + on host, "git clone https://git.openstack.org/#{repo} #{repo}" + end + + on host, "ZUUL_REF=#{zuul_ref} ZUUL_BRANCH=#{zuul_branch} ZUUL_URL=#{zuul_url} bash #{repo}/install_modules.sh" - # install library modules from the forge - on host, puppet('module','install','puppetlabs-mysql'), { :acceptable_exit_codes => 0 } - on host, puppet('module','install','dprince/qpid'), { :acceptable_exit_codes => 0 } - on host, puppet('module','install','duritong/sysctl'), { :acceptable_exit_codes => 0 } - on host, puppet('module','install','puppetlabs-inifile'), { :acceptable_exit_codes => 0 } - on host, puppet('module','install','puppetlabs-rabbitmq'), { :acceptable_exit_codes => 0 } - on host, puppet('module','install','puppetlabs-apache'), { :acceptable_exit_codes => 0 } + # Install the module being tested + on host, "rm -fr /etc/puppet/modules/#{modname}" + puppet_module_install(:source => proj_root, :module_name => modname) - # install puppet modules from git, use master - shell('git clone https://git.openstack.org/openstack/puppet-openstacklib /etc/puppet/modules/openstacklib') - shell('git clone https://git.openstack.org/openstack/puppet-openstack_extras /etc/puppet/modules/openstack_extras') + on host, "rm -fr #{repo}" - # Install the module being tested - puppet_module_install(:source => proj_root, :module_name => 'keystone') # List modules installed to help with debugging - on hosts[0], puppet('module','list'), { :acceptable_exit_codes => 0 } + on host, puppet('module','list'), { :acceptable_exit_codes => 0 } end end end