use vcsrepo for installing rbenv and plugins#98
use vcsrepo for installing rbenv and plugins#98bderickson wants to merge 11 commits intoalup:masterfrom
Conversation
Use vcsrepo to manage Git repos used for installing rbenv itself and various plugins rather than using execs that fire during every Puppet application.
Tests on git execs are now testing the vcsrepo declarations. The test covering plugin updates has been removed since ensure => latest on vcsrepo should cover that. Also fixed some errors caught by testing... yay tests!
Using puppetlabs_spec_helper and .fixtures.yml means these files can be automatically installed at test time rather than manually.
puppetlabs_spec_helper manages paths under spec/fixtures and finding spec files, so that logic can be removed from Rakefile and spec_helper
Some of the modules under Gemfile.lock were pretty old and spamming test output with deprecation warnings. Updated to use latest modules for testing.
|
To summarize the commits I've added: I thought that using puppetlabs_spec_helper would clean up testing a bit now that vcsrepo needs to be managed under spec/fixtures. This also allowed me to remove some plumbing from Rakefile, spec_helper.rb, and Gemfile. I updated Gemfile.lock so it's using up-to-date modules instead of being stuck on older versions (Puppet 2.7.18, for example), take a look at the diff for a full list. This fixed some testing problems and cleaned up a bunch of deprecation warnings that were cluttering test output. If there are specific versions of gems or modules that need to be tested, I can create a travis.yml to do that. Apologies for the numerous commits and test failures, this ended up being a little more involved than I'd originally intended. :) |
This is a nearly exact copy of #61 that's been updated so it'll merge. When I tried to apply the patch for #61 (via https://github.com/alup/puppet-rbenv/pull/61.patch) I ran into problems so I just manually applied and updated until things worked.
I've also added a dependency on vcsrepo 0.2.0 to Modulefile. Earlier versions would probably work too, but I wanted to include the SSH timeout behavior that was added to the Git provider in this version. With versions other than 0.2.0, everything still works but there's a slight regression where Git calls could hang due to network issues.