Skip to content

Commit

Permalink
Simplify rbenv setup by using an .rbenvrc file
Browse files Browse the repository at this point in the history
  • Loading branch information
vjt authored and System Administrator (on puppet.ifad.org) committed Jul 30, 2012
1 parent f176e0b commit eaf424f
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 11 deletions.
21 changes: 10 additions & 11 deletions manifests/install.pp
Expand Up @@ -13,26 +13,25 @@
}

# STEP 2
exec { "rbenv::install::${user}::add_path_to_bashrc":
command => "echo \"export PATH=${rbenv::paths::root}/${rbenv::paths::dest}/bin:\\\$PATH\" >> .bashrc",
user => $user,
$rbenvrc = "${rbenv::paths::home}/.rbenvrc"
$bashrc = "${rbenv::paths::home}/.bashrc"

file { "rbenv::install::${user}::rbenvrc":
path => $rbenvrc,
owner => $user,
group => $group,
cwd => $rbenv::paths::home,
onlyif => "[ -f ${rbenv::paths::home}/.bashrc ]",
unless => "grep -q ${rbenv::paths::dest}/bin ${rbenv::paths::home}/.bashrc",
path => ['/bin', '/usr/bin', '/usr/sbin'],
content => template('rbenv/dot.rbenvrc.erb'),
}

# STEP 3
exec { "rbenv::install::${user}::add_init_to_bashrc":
command => 'echo "eval \"\$(rbenv init -)\"" >> .bashrc',
command => "echo 'source ${rbenvrc}' >> ${bashrc}",
user => $user,
group => $group,
cwd => $rbenv::paths::home,
onlyif => "[ -f ${rbenv::paths::home}/.bashrc ]",
unless => "grep -q 'rbenv init -' ${rbenv::paths::home}/.bashrc",
unless => "grep -q rbenvrc ${bashrc}",
path => ['/bin', '/usr/bin', '/usr/sbin'],
require => Exec["rbenv::install::${user}::add_path_to_bashrc"],
require => File["rbenv::install::${user}::rbenvrc"],
}

file { "rbenv::install::${user}::make_plugins_dir":
Expand Down
8 changes: 8 additions & 0 deletions templates/dot.rbenvrc.erb
@@ -0,0 +1,8 @@
#
# This is a shell fragment that initializes rbenv, if it
# has not been inited yet. Managed by puppet - DO NOT EDIT
#
if ! echo $PATH | grep -q rbenv; then
export PATH="<%= scope.lookupvar('rbenv::paths::root') %>/<%= scope.lookupvar('rbenv::paths::dest') %>/bin:$PATH"
eval "$(rbenv init -)"
fi

0 comments on commit eaf424f

Please sign in to comment.