Files
docker-minecraft-server/scripts/start-deployMohist

54 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
# shellcheck source=start-utils
. "${SCRIPTS:-$(dirname "$0")}/start-utils"
set -o pipefail
set -e
isDebugging && set -x
resolveVersion
: "${MOHIST_BUILD:=lastSuccessfulBuild}"
# Docs at https://mohistmc.com/mohistmc-api
mohistApiUrl="https://api.mohistmc.com/project/mohist"
mohistDownloadsPage="https://mohistmc.com/downloadSoftware?project=mohist"
if ! get --exists "${mohistApiUrl}/${VERSION}/builds"; then
logError "Mohist builds do not exist for ${VERSION}"
logError " check ${mohistDownloadsPage} for available versions"
logError " and set VERSION accordingly"
exit 1
fi
if [[ "${MOHIST_BUILD}" == "lastSuccessfulBuild" ]]; then
# Get the latest build number from the API
if ! buildNumber=$(
get --json-path '$[0].id' "${mohistApiUrl}/${VERSION}/builds"
); then
logError "failed to list Mohist builds for ${VERSION}"
exit 1
fi
MOHIST_BUILD="${buildNumber}"
fi
downloadUrl="${mohistApiUrl}/${VERSION}/builds/${MOHIST_BUILD}/download"
if [[ -z "${downloadUrl}" ]]; then
logError "Could not find build ${MOHIST_BUILD} for version ${VERSION}"
logError " check ${mohistDownloadsPage} for available versions"
logError " and set VERSION accordingly"
exit 1
fi
SERVER="/data/mohist-${VERSION}-${MOHIST_BUILD}-server.jar"
if [ ! -f "${SERVER}" ]; then
log "Downloading Mohist build ${MOHIST_BUILD} for ${VERSION}"
get -o "${SERVER}" "${downloadUrl}"
fi
export FAMILY=HYBRID
export SERVER
exec "${SCRIPTS:-/}start-spiget" "$@"