github.com/danhper/asdf-exec@v0.1.3-0.20230723223931-b71340b83071/fixtures/asdf/plugins/ruby/bin/parse-legacy-file (about) 1 #!/usr/bin/env bash 2 3 get_legacy_version() { 4 current_file="$1" 5 basename=$(basename -- "$current_file") 6 7 if [ "$basename" == "Gemfile" ]; then 8 RUBY_VERSION=$(grep '^\s*ruby' "$current_file" | 9 sed -e 's/[[:space:]]/ /g' -e 's/#.*//' \ 10 -e 's/engine:/:engine =>/' -e 's/engine_version:/:engine_version =>/' \ 11 -e "s/.*:engine *=> *['\"]\([^'\"]*\).*:engine_version *=> *['\"]\([^'\"]*\).*/\1-\2/" \ 12 -e "s/.*:engine_version *=> *['\"]\([^'\"]*\).*:engine *=> *['\"]\([^'\"]*\).*/\2-\1/" \ 13 -e "s/ *ruby *['\"]\([^'\"]*\).*/\1/" | 14 head -1) 15 elif [ "$basename" == ".ruby-version" ]; then 16 # Get version from .ruby-version file (filters out 'ruby-' prefix if it exists). 17 # The .ruby-version is used by rbenv and now rvm. 18 ruby_version=$(cat "$current_file") 19 ruby_prefix="ruby-" 20 RUBY_VERSION=${ruby_version/#$ruby_prefix} 21 fi 22 23 echo "$RUBY_VERSION" 24 } 25 26 get_legacy_version "$1"