Skip to content

Instantly share code, notes, and snippets.

@mpapis
Forked from hedgehog/.rvmrc
Created November 21, 2011 14:09
Show Gist options
  • Save mpapis/1382711 to your computer and use it in GitHub Desktop.
Save mpapis/1382711 to your computer and use it in GitHub Desktop.
rvmrc issue
#!/usr/bin/env bash
# This is an RVM Project .rvmrc file, used to automatically load the ruby
# development environment upon cd'ing into the directory
# First we specify our desired <ruby>[@<gemset>], the @gemset name is optional.
ruby_id='ruby-1.9.2-p290'
gemset_id='proj'
environment_id="${ruby_id}@${gemset_id}"
# First we attempt to load the desired environment directly from the environment
# file. This is very fast and efficicent compared to running through the entire
# CLI and selector.
if [[ -d "${rvm_path:-$HOME/.rvm}/environments" &&
-s "${rvm_path:-$HOME/.rvm}/environments/$environment_id" ]]
then
\. "${rvm_path:-$HOME/.rvm}/environments/$environment_id"
[[ -s ".rvm/hooks/after_use" ]] && \. ".rvm/hooks/after_use"
else
rvm use --install --create $environment_id
fi
# If you use an RVM gemset file to install a list of gems (*.gems), you can have
# it be automatically loaded.
filename="#{gemset_id}.gems"
if [[ -s "$filename" ]] ; then
rvm gemset import "$filename" | grep -v already | grep -v listed | grep -v complete | sed '/^$/d'
fi
# Ensure that Bundler is installed globally. Install it if it is not.
if ! command -v bundle >/dev/null; then
printf "The rubygem 'bundler' is not installed. Installing it now.\n"
#TODO: not sure if @global is good choice ... if not remove: rvm "${ruby_id}@global" do # leave just: gem install ...
rvm "${ruby_id}@global" do gem install bundler --pre --no-ri --no-rdoc
fi
# Bundle while reducing excess noise.
printf "Bundling your gems. This may take a few minutes on a fresh clone.\n"
bundle install --no-deployment --path vendor | grep -v '^Using ' | grep -v ' is complete' | sed '/^$/d'
@hedgehog
Copy link

Thanks mpapis, will try that and report if it helps resolve the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment