.rvmrc
changeset 9 47425483883e
parent 8 1ad0d5bc5083
child 10 8388c2d1d7af
equal deleted inserted replaced
8:1ad0d5bc5083 9:47425483883e
     1 #!/usr/bin/env bash
       
     2 
       
     3 # This is an RVM Project .rvmrc file, used to automatically load the ruby
       
     4 # development environment upon cd'ing into the directory
       
     5 
       
     6 # First we specify our desired <ruby>[@<gemset>], the @gemset name is optional,
       
     7 # Only full ruby name is supported here, for short names use:
       
     8 #     echo "rvm use 2.2.1" > .rvmrc
       
     9 environment_id="ruby-2.3@thingfish-metastore-pggraph"
       
    10 
       
    11 # Uncomment the following lines if you want to verify rvm version per project
       
    12 # rvmrc_rvm_version="1.26.11 (master)" # 1.10.1 seems like a safe start
       
    13 # eval "$(echo ${rvm_version}.${rvmrc_rvm_version} | __rvm_awk -F. '{print "[[ "$1*65536+$2*256+$3" -ge "$4*65536+$5*256+$6" ]]"}' )" || {
       
    14 #   echo "This .rvmrc file requires at least RVM ${rvmrc_rvm_version}, aborting loading."
       
    15 #   return 1
       
    16 # }
       
    17 
       
    18 # First we attempt to load the desired environment directly from the environment
       
    19 # file. This is very fast and efficient compared to running through the entire
       
    20 # CLI and selector. If you want feedback on which environment was used then
       
    21 # insert the word 'use' after --create as this triggers verbose mode.
       
    22 if [[ -d "${rvm_path:-$HOME/.rvm}/environments"
       
    23   && -s "${rvm_path:-$HOME/.rvm}/environments/$environment_id" ]]
       
    24 then
       
    25   \. "${rvm_path:-$HOME/.rvm}/environments/$environment_id"
       
    26   for __hook in "${rvm_path:-$HOME/.rvm}/hooks/after_use"*
       
    27   do
       
    28     if [[ -f "${__hook}" && -x "${__hook}" && -s "${__hook}" ]]
       
    29     then \. "${__hook}" || true
       
    30     fi
       
    31   done
       
    32   unset __hook
       
    33   if (( ${rvm_use_flag:=1} >= 2 )) # display only when forced
       
    34   then
       
    35     if [[ $- == *i* ]] # check for interactive shells
       
    36     then printf "%b" "Using: $(tput setaf 2 2>/dev/null)$GEM_HOME$(tput sgr0 2>/dev/null)\n" # show the user the ruby and gemset they are using in green
       
    37     else printf "%b" "Using: $GEM_HOME\n" # don't use colors in non-interactive shells
       
    38     fi
       
    39   fi
       
    40 else
       
    41   # If the environment file has not yet been created, use the RVM CLI to select.
       
    42   rvm --create  "$environment_id" || {
       
    43     echo "Failed to create RVM environment '${environment_id}'."
       
    44     return 1
       
    45   }
       
    46 fi