Skip to content

Commit

Permalink
Add rmv env (with option --path) to get environment info
Browse files Browse the repository at this point in the history
  • Loading branch information
Sutto committed May 21, 2010
1 parent ac985e1 commit 70c45a6
Show file tree
Hide file tree
Showing 3 changed files with 62 additions and 2 deletions.
12 changes: 12 additions & 0 deletions scripts/cli
Expand Up @@ -14,6 +14,9 @@ __rvm_parse_args() {

package)
rvm_action="$rvm_token"
if [[ "--only-path" ]]; then
shift; rvm_only_path_flag=1
fi
rvm_ruby_args="$@"
rvm_parse_break=1
;;
Expand All @@ -24,6 +27,10 @@ __rvm_parse_args() {
if [[ "ruby" = "$1" ]] ; then shift ; fi
;;

env)
rvm_action=$rvm_token
;;

inspect)
rvm_action=$rvm_token
rvm_ruby_args="$@"
Expand Down Expand Up @@ -438,6 +445,11 @@ rvm() {
answer) __rvm_Answer_to_the_Ultimate_Question_of_Life_the_Universe_and_Everything ; result=42 ;;
question) __rvm_ultimate_question ; result=42 ;;

env)
$rvm_scripts_path/env "$rvm_ruby_string"
result=$?
;;

wrapper)
$rvm_scripts_path/wrapper "$rvm_ruby_string" "$rvm_wrapper_name" $rvm_ruby_args
result=$?
Expand Down
48 changes: 48 additions & 0 deletions scripts/env
@@ -0,0 +1,48 @@
#!/usr/bin/env bash

# Recursive loops, oh my!
unset rvm_default_flag

source $rvm_scripts_path/initialize
source $rvm_scripts_path/utility
source $rvm_scripts_path/selector

if [[ ! -z "$rvm_trace_flag" ]] ; then set -x ; export rvm_trace_flag ; fi

trap "if [[ -d $rvm_tmp_path/ ]] && [[ -s $rvm_tmp_path/$$ ]] ; then rm -f $rvm_tmp_path/$$ > /dev/null 2>&1 ; fi ; exit" 0 1 2 3 15

usage() {
printf "Usage: rvm env [ruby_string] [--path]\n"
}

environment_name="$1"

if [[ -z "$environment_name" ]]; then
usage ; exit 1
fi

rvm_ruby_string="${environment_name}" ;

# Ensure the string is valid before printing an env.
{ __rvm_ruby_string && __rvm_select && __rvm_use; }> /dev/null 2>&1

if [[ "$?" = 0 ]]; then
__rvm_use
environment_file_path="$rvm_environments_path/$(__rvm_environment_identifier)"
# Echo the path or environment file.
if [[ -n "$rvm_path_flag" ]]; then
echo "$environment_file_path"
else
cat "$environment_file_path"
fi
unset environment_file_path
result=0
else
result=1
fi

unset rvm_ruby_string environment_name
__rvm_unset_ruby_variables

exit $result

4 changes: 2 additions & 2 deletions scripts/utility
Expand Up @@ -30,7 +30,7 @@ is_a_function() { type $1 | head -n 1 | grep -q "function" ; }
__rvm_strings() {
unset results
for rvm_ruby_string in $(echo $rvm_ruby_args) ; do
__rvm_ruby_string
#__rvm_ruby_string
if [[ $? -gt 0 ]] ; then
return 1
else
Expand Down Expand Up @@ -91,7 +91,7 @@ __rvm_cleanup_variables() {

if [[ "$rvm_sticky_flag" = "1" ]] ; then export rvm_gemset_name ; else unset rvm_gemset_name ; fi

unset rvm_action rvm_irbrc_file rvm_command rvm_error_message rvm_url rvm_force_flag rvm_all_flag rvm_reconfigure_flag rvm_make_flags rvm_bin_flag rvm_import_flag rvm_export_flag rvm_self_flag rvm_gem_flag rvm_rubygems_flag rvm_debug_flag rvm_delete_flag rvm_summary_flag rvm_test_flag _rvm_spec_flag rvm_json_flag rvm_yaml_flag rvm_shebang_flag rvm_env_flag rvm_tail_flag rvm_use_flag rvm_dir_flag rvm_list_flag rvm_empty_flag rvm_file_name rvm_benchmark_flag rvm_clear_flag rvm_name_flag rvm_verbose_flag rvm_user_flag rvm_system_flag rvm_ruby_configure_flags rvm_uninstall_flag rvm_install_flag rvm_llvm_flag rvm_ruby_bits rvm_ruby_patch rvm_sticky_flagrvm_rvmrc_flag rvm_gems_flag
unset rvm_action rvm_irbrc_file rvm_command rvm_error_message rvm_url rvm_force_flag rvm_all_flag rvm_reconfigure_flag rvm_make_flags rvm_bin_flag rvm_import_flag rvm_export_flag rvm_self_flag rvm_gem_flag rvm_rubygems_flag rvm_debug_flag rvm_delete_flag rvm_summary_flag rvm_test_flag _rvm_spec_flag rvm_json_flag rvm_yaml_flag rvm_shebang_flag rvm_env_flag rvm_tail_flag rvm_use_flag rvm_dir_flag rvm_list_flag rvm_empty_flag rvm_file_name rvm_benchmark_flag rvm_clear_flag rvm_name_flag rvm_verbose_flag rvm_user_flag rvm_system_flag rvm_ruby_configure_flags rvm_uninstall_flag rvm_install_flag rvm_llvm_flag rvm_ruby_bits rvm_ruby_patch rvm_sticky_flagrvm_rvmrc_flag rvm_gems_flag rvm_only_path_flag
}

# Unset ruby-specific variables
Expand Down

0 comments on commit 70c45a6

Please sign in to comment.