This commit is contained in:
Harald Reingruber 2024-01-15 07:01:07 -08:00 committed by GitHub
commit 769b552c4b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 30 additions and 22 deletions

View file

@ -135,17 +135,21 @@ else
echo "SUCCESS: Rust is up to date"
fi
Path=${1:-rustlings/}
echo "Cloning Rustlings at $Path..."
git clone -q https://github.com/rust-lang/rustlings "$Path"
cd "$Path"
Version=$(curl -s https://api.github.com/repos/rust-lang/rustlings/releases/latest | ${PY} -c "import json,sys;obj=json.load(sys.stdin);print(obj['tag_name']) if 'tag_name' in obj else sys.exit(f\"Error: {obj['message']}\");")
CargoBin="${CARGO_HOME:-$HOME/.cargo}/bin"
if [[ -z ${Version} ]]
# We don't need to clone if installing in Gitpod.io environment
if [[ -z ${GITPOD_WORKSPACE_ID} ]]
then
Path=${1:-rustlings/}
echo "Cloning Rustlings at $Path..."
git clone -q https://github.com/rust-lang/rustlings "$Path"
cd "$Path"
Version=$(curl -s https://api.github.com/repos/rust-lang/rustlings/releases/latest | ${PY} -c "import json,sys;obj=json.load(sys.stdin);print(obj['tag_name']) if 'tag_name' in obj else sys.exit(f\"Error: {obj['message']}\");")
CargoBin="${CARGO_HOME:-$HOME/.cargo}/bin"
if [[ -z ${Version} ]]
then
echo "The latest tag version could not be fetched remotely."
echo "Using the local git repository..."
Version=$(ls -tr .git/refs/tags/ | tail -1)
@ -157,12 +161,15 @@ then
else
Version="tags/${Version}"
fi
else
else
Version="tags/${Version}"
fi
fi
echo "Checking out version $Version..."
git checkout -q ${Version}
echo "Checking out version $Version..."
git checkout -q ${Version}
else
echo "GITPOD_WORKSPACE_ID found. Skipping git clone and git checkout."
fi
echo "Installing the 'rustlings' executable..."
cargo install --force --path .

1
rustlings Submodule

@ -0,0 +1 @@
Subproject commit 9a743f80c57cc6bf27819589a8ddb5a5579ab1a4