Improved handling of latest PaperMC version

Fixes #563
This commit is contained in:
Geoff Bourne
2020-08-25 21:44:36 -05:00
parent 42f90c8806
commit 9ea675bc89
+26 -10
View File
@@ -12,16 +12,32 @@ fi
downloadUrl=${PAPER_DOWNLOAD_URL:-https://papermc.io/api/v1/paper/${VANILLA_VERSION}/${PAPERBUILD}/download} downloadUrl=${PAPER_DOWNLOAD_URL:-https://papermc.io/api/v1/paper/${VANILLA_VERSION}/${PAPERBUILD}/download}
log "Downloading Paper $VANILLA_VERSION (build $PAPERBUILD) from $downloadUrl ..." log "Downloading Paper $VANILLA_VERSION (build $PAPERBUILD) from $downloadUrl ..."
if ! curl -fsSL -o "$SERVER" $zarg "$downloadUrl" 2> /dev/null; then out=$(curl -fsSL -o "$SERVER" $zarg "$downloadUrl" 2>&1)
if versions=$(curl -fsSL https://papermc.io/api/v1/paper 2> /dev/null | jq -r '.versions | join(", ")'); then case $? in
log "ERROR: ${VANILLA_VERSION} is not (yet) published by PaperMC" 0)
log " Set VERSION to one of the following: " ;;
log " ${versions}" 22) # = 404 HTTP status
else if versions=$(curl -fsSL https://papermc.io/api/v1/paper 2> /dev/null); then
log "ERROR: failed to contact PaperMC at https://papermc.io/api/v1/paper" if [[ $VERSION = LATEST ]]; then
fi VANILLA_VERSION=$(echo $versions | jq -r '.versions[0]')
exit 3 log "WARN: using ${VANILLA_VERSION} since that's the latest provided by PaperMC"
fi # re-execute the current script with the newly computed version
exec $0 "$@"
fi
log "ERROR: ${VANILLA_VERSION} is not (yet) published by PaperMC"
log " Set VERSION to one of the following: "
log " $(echo $versions | jq -r '.versions | join(", ")')"
else
log "ERROR: failed to retrieve versions from https://papermc.io/api/v1/paper"
fi
exit 3
;;
*)
log "ERROR: failed to contact PaperMC at $downloadUrl"
log " $out"
exit 3
;;
esac
# Normalize on Spigot for downstream operations # Normalize on Spigot for downstream operations
export TYPE=SPIGOT export TYPE=SPIGOT