GitHub puppet-rvm
A puppet module for installing and using RVM (Ruby Version Manager)

Repo Checks ( 6 of 17 successfull )
Metadata Valid
No translation
passed
Correct Puppet Version Range
Supported Puppet version range is %{PUPPET_SUPPORT_RANGE}
failed
With Puppet Version Range
Puppet version range is present in requirements in metadata.json
passed
With Operatingsystem Support
No translation
passed
Supports Only Current Centos
No translation
failed
Supports Latest Centos
No translation
failed
Supports Only Current Debian
No translation
failed
Supports Latest Debian
No translation
failed
Supports Only Current Ubuntu
No translation
failed
Supports Latest Ubuntu
No translation
failed
In Modulesync Repo
Is listed as a module managed using modulesync_config
passed
Synced
Has a .msync.yml file
passed
Latest Modulesync
Has been synchronized with the latest tagged version of modulesync_config
failed
Has Modulesync
Is present in voxpupuli/modulesync_config/managed_modules.yml
passed
Released
Is in modulesync_config and in forge releases.
failed
Valid Sync File
If a (optional) sync file is present, it must not contain a `.travis.yml` entry.
failed
Reference Dot Md
The repository has a REFERENCE.md. It needs to be generated / puppet-strings documentation is missing.
failed

Open Pull Requests

Support environment isolation by removing lambdas from title patterns

See #162

This seems to result in a noop in our environment. Going to do a little more testing but thought I'd start the discussion.

Open PR in GitHub
Fixing puppet generate types issue
merge-conflicts
tests-fail

This fix will ensure Puppet can generate all types for this module to ensure environment isolation can be set up.

Open PR in GitHub
Update `gem install` CLI options
merge-conflicts
tests-fail

gem 3.0 dropped support for --no-rdoc --no-ri.
We must use --no-document instead.

Open PR in GitHub
More rvmrc properties
merge-conflicts
add support for puppet:// as a source to install gem
merge-conflicts

Hi, I added the possibility to load gems from a puppet filemount. Please review.

Have your gem in /modules/mygeminstaller/files/mygem-1.0.0.gem


rvm_gem {
'mygem':
name => 'mygem',
ruby_version => 'ruby-2.0.0',
ensure => '1.0.0',
require => Rvm_system_ruby['ruby-2.0.0'],
source => 'puppet:///modules/mygeminstaller/mygem-1.0.0.gem',
}

Open PR in GitHub
Simplify the way we ensure curl

At the moment if the package curl is already defined somewhere else, the dependency between system-rvm and curl isn't set properly.

Also there is no point in checking whether the package curl defined before doing an ensure packages.

Instead, just before doing the curl, we do an ensure packages (this way we only do it when necessary), and now the system-rvm exec requires the curl package.

Open PR in GitHub
Regexp whole line
merge-conflicts
tests-fail

I was constantly running into issues when using this Puppet module (using puppet apply) inside a Ruby project folder containing .ruby-version file. RVM parses this file while checking what version of Ruby it should use and sadly, it also does that while running /usr/local/rvm/bin/rvm. The problem is that, if Ruby version defined in .ruby-version is not installed, current version of RVM Puppet module will not detect that, because calling /usr/local/rvm/bin/rvm from inside a Ruby project folder would give something like this:


ernestas@vbox-ubuntu:~/ss$ /bin/sh -c '/usr/local/rvm/bin/rvm list strings'
ruby-2.3.0 is not installed.
To install do: 'rvm install ruby-2.3.0'
ernestas@vbox-ubuntu:~/ss$

Not only that, it can produce other warnings like:


$ rvm list strings
Warning! PATH is not properly set up, '/usr/local/rvm/gems/ruby-2.3.1/bin' is not at first place,
usually this is caused by shell initialization files - check them for 'PATH=...' entries,
it might also help to re-add RVM to your dotfiles: 'rvm get stable --auto-dotfiles',
to fix temporarily in this shell session run: 'rvm use ruby-2.3.1'.
ruby-2.3.1
$

Sadly, not all of the warnings go to stderr, thus, it's not an option to just ignore stderr. We need to check for Ruby versions only from the beginning of a line.

Open PR in GitHub
Drop EoL Puppet 5
backwards-incompatible
Update supported Ubuntu versions to 18.04 & 20.04
backwards-incompatible
tests-fail
Chain of exec's instead of curl | bash
tests-fail

If I understand correctly, the module currently relies on a script it downloads to call for verification.

I propose to download the installer and the detached key, verify and install as described here: https://rvm.io/rvm/security instead.

It is a bit procedural and maybe not the best style but it beats piping unverified code to bash IMO.

Open PR in GitHub
Use `source` in `gemlist`
merge-conflicts

When ensure => latest, gemlist is called to determine the latest
available version of a gem.

If the source parameter is a remote gem repository, this needs to be
part of the gem list command run.

Fixes #128

Open PR in GitHub
modulesync 4.1.0
tests-fail
modulesync

modulesync 4.0.0

Open PR in GitHub
puppetlabs/stdlib: Allow 7.x
Update Debian to support versions 9 & 10
backwards-incompatible
Drop EOL EL4, EL5 and EL6

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

<!--
Replace this comment with a description of your pull request.
-->

This Pull Request (PR) fixes the following issues

<!--
Replace this comment with the list of issues or n/a.
Use format:
Fixes #123
Fixes #124
-->

Open PR in GitHub
Allow stdlib 8.0.0
puppet-lint: fix top_scope_facts warnings
puppet-lint

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

<!--
Replace this comment with a description of your pull request.
-->

This Pull Request (PR) fixes the following issues

<!--
Replace this comment with the list of issues or n/a.
Use format:
Fixes #123
Fixes #124
-->

Open PR in GitHub