Hi Matt, Matt Fischer <m...@mattfischer.com> writes:
> I ended up symlinking the r10k binary I have installed to the place it > wants it to be and it worked. I do have that in my Gemfile. Question > is, can we make this work without manual steps? Well, I was thinking I had a smart way to fix as it was working on my env. It turns out that it was only because of a strange setup that my "GEM_HOME=~/" trick was working. In the end, I discovered that bundler always set GEM_HOME and so the scripts of the puppet-openstack-integration always set GEM_BIN_DIR to the wrong path. I've created this bug report[1] and this fix[2]. It seems to be working well on my env. It shouldn't change anything to the Openstack CI as the function is install_all is not used inside a proper ZUUL environment. One less pain, I discovered afterwards that you've already created the bug report there[3]. Sorry for the duplicate. As a side note, it's kind of hard to test it as the directory where the function is is recreated at each run of "bundle exec rake spec_prep" from gerrit/master. So here is what I did: 1. run it once and let it fail; 2. apply this: cat > /tmp/fix <<EOF --- lib/puppet-openstack_spec_helper/rake_tasks.rb.orig 2016-02-26 14:19:00.955396358 +0100 +++ lib/puppet-openstack_spec_helper/rake_tasks.rb 2016-02-26 14:19:09.856505122 +0100 @@ -49,7 +49,7 @@ zuul_branch = ENV['ZUUL_BRANCH'] zuul_url = ENV['ZUUL_URL'] repo = 'openstack/puppet-openstack-integration' - rm_rf(repo) +# rm_rf(repo) if File.exists?('/usr/zuul-env/bin/zuul-cloner') zuul_clone_cmd = ['/usr/zuul-env/bin/zuul-cloner'] zuul_clone_cmd += ['--cache-dir', '/opt/git'] @@ -59,7 +59,7 @@ zuul_clone_cmd += ['git://git.openstack.org', "#{repo}"] sh(*zuul_clone_cmd) else - sh("git clone https://git.openstack.org/#{repo} #{repo}") +# sh("git clone https://git.openstack.org/#{repo} #{repo}") end script = ['env'] script += ["PUPPETFILE_DIR=#{Dir.pwd}/spec/fixtures/modules"] EOF running this (from your bundler env) cat /tmp/fix | patch -d $(bundle show puppet-openstack_spec_helper) -p0 and then, still from your bundler env, you can apply the patch: --- openstack/puppet-openstack-integration/functions.orig 2016-02-26 14:22:10.246709340 +0100 +++ openstack/puppet-openstack-integration/functions 2016-02-26 14:22:15.395772257 +0100 @@ -48,7 +48,7 @@ # - ``SCRIPT_DIR`` must be set to script path # - ``GEM_BIN_DIR`` must be set to Gem bin directory install_all() { - PUPPETFILE=${SCRIPT_DIR}/Puppetfile ${GEM_BIN_DIR}r10k puppetfile install -v + PUPPETFILE=${SCRIPT_DIR}/Puppetfile r10k puppetfile install -v } # Install Puppet OpenStack modules and dependencies by using Kinda complicated ... certainly why I didn't bother earlier. [1] https://bugs.launchpad.net/puppet-openstack-integration/+bug/1550331 [2] https://review.openstack.org/285285 [3] https://bugs.launchpad.net/puppet-keystone/+bug/1548872 > > On Thu, Feb 18, 2016 at 4:57 PM, Alex Schultz <aschu...@mirantis.com> > wrote: > > > > > > > > On Thu, Feb 18, 2016 at 3:26 PM, Matt Fischer > <m...@mattfischer.com> wrote: > > > Is anyone able to share the secret of running spec tests since > the r10k transition? bundle install && bundle exec rake spec > have issues because r10k is not being installed. Since I'm not > the only one hopefully this question will help others. > > > > + > > PUPPETFILE=/etc/puppet/modules/keystone/openstack/puppet-openstack-integration/Puppetfile > > + /var/lib/gems/1.9.1/bin/r10k puppetfile install -v > > /etc/puppet/modules/keystone/openstack/puppet-openstack-integration/functions: > line 51: /var/lib/gems/1.9.1/bin/r10k: No such file or > directory > rake aborted! > > > > I assume you were trying to run the tests on the keystone module > so it should have been installed with the bundle install as it is > listed in the Gemfile[0]. Are you sure your module is up to date? > > > -Alex > > > [0] > https://github.com/openstack/puppet-keystone/blob/master/Gemfile#L26 > > > __________________________________________________________________________ > > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: > openstack-dev-requ...@lists.openstack.org?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > > > > > __________________________________________________________________________ > > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: > openstack-dev-requ...@lists.openstack.org?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > > > > > __________________________________________________________________________ > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev -- Sofer Athlan-Guyot __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev