diff options
author | George L. Albany <Megacake1234@gmail.com> | 2023-07-20 21:31:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-20 21:31:05 +0200 |
commit | f3f240853b15a9f9b7cb561dc6626e7f342c5c74 (patch) | |
tree | 73bdffc96980a4b05aa9aa264e137366023456d1 /.github/actions/openvic-env/url-environment.sh | |
parent | e96eeca97fac5a7c5245b99e820b31b4828a27de (diff) | |
parent | 8a8be87279db46c5d50aedcb51b0ef2371c3484d (diff) |
Merge pull request #141 from Spartan322/update/godot4.1.1-stable
Diffstat (limited to '.github/actions/openvic-env/url-environment.sh')
-rwxr-xr-x | .github/actions/openvic-env/url-environment.sh | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/.github/actions/openvic-env/url-environment.sh b/.github/actions/openvic-env/url-environment.sh new file mode 100755 index 0000000..352218b --- /dev/null +++ b/.github/actions/openvic-env/url-environment.sh @@ -0,0 +1,57 @@ +#!/bin/bash + +# $1 = environment name +# $2 = value to set environment +set_var() { + if [[ -z ${!1+set} ]]; then + export $1=$2 + fi +} + +# $1 = left side +# $2 = right side +# returns $1 and $2 joined together with a single '/'' +join_path() { + result=$1 + if [[ $result == *"/" && $2 == "/"* ]]; then + result=${result%/} + fi + if [[ $result != *"/" && $2 != "/"* ]]; then + result="$result/" + fi + echo "$result$2" +} + +# $1 = environment name +set_github_var() { + if [ "${!1}" == "" ]; then + echo "::error::$1 environment variable has not been set." + elif ! curl -o /dev/null --head --silent --fail "${!1}"; then + echo "::error::${!1} does not exist." + else + echo "$1=${!1}" >> $GITHUB_ENV + fi +} + +if [[ $GODOT_BASE_DOWNLOAD_URL == *"downloads.tuxfamily.org/godotengine"* ]]; then + if [[ $GODOT_BASE_DOWNLOAD_URL != *"${GODOT_VERSION}"* ]]; then + GODOT_BASE_DOWNLOAD_URL="$(join_path ${GODOT_BASE_DOWNLOAD_URL} ${GODOT_VERSION})" + fi + if [[ $GODOT_VERSION_TYPE != "stable" ]]; then + GODOT_BASE_DOWNLOAD_URL="$(join_path ${GODOT_BASE_DOWNLOAD_URL} ${GODOT_VERSION_TYPE})" + fi + set_var GODOT_LINUX_URL "$(join_path ${GODOT_BASE_DOWNLOAD_URL} "Godot_v${GODOT_VERSION}-${GODOT_VERSION_TYPE}_linux.x86_64.zip")" + set_var GODOT_TEMPLATE_URL "$(join_path ${GODOT_BASE_DOWNLOAD_URL} "Godot_v${GODOT_VERSION}-${GODOT_VERSION_TYPE}_export_templates.tpz")" +elif [[ $GODOT_BASE_DOWNLOAD_URL == *"github.com/godotengine"* ]]; then + if [[ $GODOT_BASE_DOWNLOAD_URL != *"/releases"* ]]; then + GODOT_BASE_DOWNLOAD_URL=$(join_path $GODOT_BASE_DOWNLOAD_URL "releases") + fi + if [[ $GODOT_BASE_DOWNLOAD_URL != *"/download"* ]]; then + GODOT_BASE_DOWNLOAD_URL=$(join_path $GODOT_BASE_DOWNLOAD_URL "download") + fi + set_var GODOT_LINUX_URL "$(join_path ${GODOT_BASE_DOWNLOAD_URL} "${GODOT_VERSION}-${GODOT_VERSION_TYPE}/Godot_v${GODOT_VERSION}-${GODOT_VERSION_TYPE}_linux.x86_64.zip")" + set_var GODOT_TEMPLATE_URL "$(join_path ${GODOT_BASE_DOWNLOAD_URL} "${GODOT_VERSION}-${GODOT_VERSION_TYPE}/Godot_v${GODOT_VERSION}-${GODOT_VERSION_TYPE}_export_templates.tpz")" +fi + +set_github_var GODOT_LINUX_URL +set_github_var GODOT_TEMPLATE_URL
\ No newline at end of file |