提交 65136b15 编写于 作者: A Akash Manohar J

Support jruby

上级 17b5dbbd
......@@ -4,6 +4,7 @@ install_ruby() {
local install_type=$1
local version=$2
local install_path=$3
local ruby_type=$(get_ruby_type $version)
if [ "$TMPDIR" = "" ]; then
local tmp_download_dir=$(mktemp -d)
......@@ -20,13 +21,17 @@ install_ruby() {
# because we don't want to disturb current working dir
(
cd $(dirname $source_path)
tar zxf $source_path || exit 1
if [ "${ruby_type}" = "jruby" ]; then
tar zxf $source_path -C $(dirname $install_path) || exit 1
exit 0
else
tar zxf $source_path || exit 1
fi
# we use untar path because the extracted dir maybe diff
# ideally should be using tar with --strip-components 1
cd $(untar_path $install_type $version $tmp_download_dir)
if [ "$ASDF_PKG_MISSING" != "" ]; then
echo "WARNING: Might use OS-provided pkgs for the following: $ASDF_PKG_MISSING"
fi
......@@ -119,7 +124,11 @@ download_source() {
local download_path=$3
local download_url=$(get_download_url $install_type $version)
curl -Lo $download_path -C - $download_url
if [ -f $download_path ]; then
rm $download_path
fi
curl -Lo $download_path $download_url
}
......@@ -133,9 +142,9 @@ get_download_file_path() {
if [ "${ruby_type}" = "ruby" ]; then
local pkg_name="ruby-${ruby_version}.tar.gz"
elif [ "${ruby_type}" = "jruby" ]; then
local pkg_name="jruby-bin-${ruby_version}.tar.gz"
fi
# TODO for jruby
# elif [ "${ruby_type}" = "jruby" ]; then
echo "$tmp_download_dir/$pkg_name"
}
......@@ -151,11 +160,10 @@ untar_path() {
if [ "${ruby_type}" = "ruby" ]; then
local dir_name="ruby-${ruby_version}"
elif [ "${ruby_type}" = "jruby" ]; then
local dir_name="jruby-${ruby_version}"
fi
# TODO for jruby
# elif [ "${ruby_type}" = "jruby" ]; then
echo "$tmp_download_dir/$dir_name"
}
......@@ -170,10 +178,9 @@ get_download_url() {
if [ "${ruby_type}" = "ruby" ]; then
local ruby_base_version=$(get_ruby_base_version $ruby_version)
echo "http://cache.ruby-lang.org/pub/ruby/${ruby_base_version}/ruby-${ruby_version}.tar.gz"
elif [ "${ruby_type}" = "jruby" ]; then
echo "https://s3.amazonaws.com/jruby.org/downloads/${ruby_version}/jruby-bin-${ruby_version}.tar.gz"
fi
# TODO for jruby
# elif [ "${ruby_type}" = "jruby" ]; then
}
......@@ -189,8 +196,12 @@ get_ruby_version() {
IFS='-' read -a version_info <<< "$1"
if [ "${version_info[0]}" = "jruby" ]; then
# TODO jruby
echo "${version_info[1]}-${version_info[2]}"
# jruby
if [ "${#version_info[@]}" -eq 2 ]; then
echo "${version_info[1]}"
else
echo "${version_info[1]}-${version_info[2]}"
fi
else
# ruby
if [ "${#version_info[@]}" -eq 1 ]; then
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册