cookbook 'chef_rvm', '= 1.0.1'
chef_rvm (5) Versions 1.0.1 Follow4
Installs/Configures rvm
cookbook 'chef_rvm', '= 1.0.1', :supermarket
knife supermarket install chef_rvm
knife supermarket download chef_rvm
chef_rvm
LWRP's based rvm cookbook
Inspired by RVM cookbook
Supported chef-client version:
Chef-Client >= 11.12.0
LWRP's
chef_rvm
chef_rvm 'ubuntu' do rubies ['2.0.0', '2.1.1'] rvmrc({ 'rvm_autoupdate_flag'=> '1' }) end
Actions
Action | Description |
---|---|
:install |
This is default action |
:implode |
|
:upgrade |
chef_rvm_ruby
chef_rvm_ruby 'ubuntu:ruby:1.9.3' do version '1.9.3' patch 'falcon' default true end
Actions
Action | Description |
---|---|
:install |
This is default action |
:remove |
|
:uninstall |
|
:reinstall |
chef_rvm_gemset
chef_rvm_gemset 'ubuntu:gemset:1.9.3:test' do ruby_string '1.9.3@test' user 'ubuntu' action :create end
Actions
Action | Description |
---|---|
:create |
This is default action |
:delete |
|
:update |
|
:pristine |
|
:prune |
chef_rvm_gem
chef_rvm_gem 'ubuntu:unicorn' do gem 'unicorn' user 'ubuntu' ruby_string '1.9.3@test' end
Actions
Action | Description |
---|---|
:install |
This is default action |
:uninstall |
|
:update |
chef_rvm_wrapper
chef_rvm_wrapper 'ubuntu:my_project_unicorn' do user 'ubuntu' ruby_string '1.9.3@test' prefix 'my_project' binary 'unicorn' action :create end
Actions
Action | Description |
---|---|
:create |
This is default action |
:create_or_update |
chef_rvm_alias
chef_rvm_alias 'ubuntu:my_alias' do user 'ubuntu' alias_name 'my_alias' ruby_string '1.9.3@test' action :create end
Actions
Action | Description |
---|---|
:create |
This is default action |
:delete |
Execute
Execute scripts in rvm environment.
All resources worked like native resources but guards inherit environment from resource by default.
chef_rvm_execute 'bundle install' do ruby_string '2.0.0' user 'ubuntu' cwd '/home/ubuntu/test' command 'bundle install' not_if 'bundle check' action :run end
chef_rvm_script 'bundle_install_sh' do interpreter 'sh' ruby_string '2.0.0' user 'ubuntu' cwd '/home/ubuntu/test' code <<CODE bundle install CODE not_if 'bundle check' action :run end
chef_rvm_bash 'bundle_install' do ruby_string '2.0.0' user 'ubuntu' cwd '/home/ubuntu/test' code <<CODE bundle install CODE action :run not_if 'bundle check' end
Attributes
# Default options for .rvmrc for all users
node['chef_rvm']['rvmrc'] = {
'rvm_gem_options' => '--no-rdoc --no-ri',
'rvm_autoupdate_flag' => 0
}
# User installations
node['chef_rvm'] = {
users: {
ubuntu: {
rubies: {
'1.9.3' => {action: 'install', patch: 'falcon'},
'2.0' => 'install',
},
gems: {
'1.9.3@test' => %w(eye unicorn),
'1.9.3@test2' => [
{gem: 'eye', version: '0.6', action: 'install'},
'unicorn'
],
'1.9.3@test3' => 'unicorn',
},
wrappers: {
:'1.9.3@test' => {
bootup: [
{
binary: 'eye',
action: 'create_or_update'
}
]
},
:'1.9.3@test2' => {
bootup: %w(eye unicorn)
},
:'1.9.3@test3' => {
bootup: 'unicorn'
}
},
aliases: {
'my_alias' => '2.0.0',
'my_alias_2' => '1.9.3@test2'
}
}
}
}
Recipes
recipe[chef_rvm::default] # Full installations
recipe[chef_rvm::packages] # Required packages
recipe[chef_rvm::rvm]
recipe[chef_rvm::gemsets] # Create gemset
recipe[chef_rvm::rubies]
recipe[chef_rvm::gems]
recipe[chef_rvm::wrappers]
recipe[chef_rvm::aliases]
Author
Nikolay Murga
Dependent cookbooks
sudo >= 0.0.0 |
apt >= 0.0.0 |
build-essential >= 0.0.0 |
chef_gem >= 0.0.0 |
gpg >= 0.0.0 |
Contingent cookbooks
Foodcritic Metric
1.0.1 failed this metric
FC031: Cookbook without metadata file: /tmp/cook/7b8eb6d9433cf3bfca1c4da3/chef_rvm/metadata.rb:1
FC045: Consider setting cookbook name in metadata: /tmp/cook/7b8eb6d9433cf3bfca1c4da3/chef_rvm/metadata.rb:1
1.0.1 failed this metric
FC045: Consider setting cookbook name in metadata: /tmp/cook/7b8eb6d9433cf3bfca1c4da3/chef_rvm/metadata.rb:1