puppet-openstack_spec_helper/functions

36 lines
1.2 KiB
Bash

#!/bin/bash
#
# functions - puppet-openstack_spec_helper specific functions
#
install_gems() {
mkdir .bundled_gems
export GEM_HOME=`pwd`/.bundled_gems
export GEM_BIN_DIR=$GEM_HOME/bin
# use puppet-nova to test the gem
if [ -d /home/zuul/src/opendev.org/openstack/puppet-nova ]; then
[ ! -d openstack ] && mkdir openstack
cp -R /home/zuul/src/opendev.org/openstack/puppet-nova openstack/puppet-nova
else
git clone https://opendev.org/openstack/puppet-nova openstack/puppet-nova
fi
cd openstack/puppet-nova
# Modify Gemfile to use local library and not the one on git
# so we can actually test the current state of the gem.
sed -i -e "s|\('puppet-openstack_spec_helper',.*\) \(:git\).*|\1 :path => '../..'|g" Gemfile
# NOTE(aschultz): in order for this to work we need to nuke the branch line
# since we're replacing the repository with a path
sed -i "/.*(ref|branch)[[:space:]]*=> 'stable\/.*/d" Gemfile
# Install dependencies
ruby <<EOF
cmd = 'gem install bundler --no-document --verbose --bindir=${GEM_BIN_DIR}'
cmd += ' -v 2.2.11'
system(cmd)
EOF
$GEM_HOME/bin/bundle config set --local without development,system_tests
$GEM_HOME/bin/bundle install --retry 3
}