#!/usr/bin/env bash # # Summary: Run an executable with the right Ruby version # # Usage: rbenv exec COMMAND [arg1 arg2...] # # Runs an executable by first preparing PATH so that the selected Ruby version # is prepended to it. # # For example, doing: # RBENV_VERSION=1.9.3-p327 rbenv exec bundle install # # has an effect is if this was done: # PATH=~/.rbenv/versions/1.9.3-p327:"$PATH" bundle install set -e [ -n "$RBENV_DEBUG" ] && set -x # Provide rbenv completions if [ "$1" = "--complete" ]; then exec rbenv shims --short fi export RBENV_VERSION="$(rbenv-version-name)" RBENV_COMMAND="$1" if [ -z "$RBENV_COMMAND" ]; then rbenv-help --usage exec >&2 exit 1 fi RBENV_COMMAND_PATH="$(rbenv-which "$RBENV_COMMAND")" RBENV_BIN_PATH="${RBENV_COMMAND_PATH%/*}" for script in $(rbenv-hooks exec); do source "$script" done shift 1 if [ "$RBENV_VERSION" != "system" ]; then export PATH="${RBENV_BIN_PATH}:${PATH}" fi exec -a "$RBENV_COMMAND" "$RBENV_COMMAND_PATH" "$@"