mirror of
https://github.com/itzg/docker-minecraft-server.git
synced 2026-08-04 06:32:16 +00:00
Add support for Canyon server for b1.7.3 (#879)
This commit is contained in:
@@ -483,6 +483,20 @@ A [Catserver](http://catserver.moe/) type server can be used with
|
|||||||
|
|
||||||
> **NOTE** Catserver only provides a single release stream, so `VERSION` is ignored
|
> **NOTE** Catserver only provides a single release stream, so `VERSION` is ignored
|
||||||
|
|
||||||
|
### Running an Canyon server
|
||||||
|
|
||||||
|
[Canyon](https://github.com/canyonmodded/canyon) is a fork of CraftBukkit for Minecraft Beta 1.7.3. It includes multiple enhancements whilst also retaining compatibility with old Bukkit plugins and mods as much as possible.
|
||||||
|
|
||||||
|
-e VERSION=b1.7.3 -e TYPE=CANYON
|
||||||
|
|
||||||
|
> **NOTE** only `VERSION=b1.7.3` is supported
|
||||||
|
|
||||||
|
> **NOTE** only Java 8 is supported
|
||||||
|
|
||||||
|
By default the latest build will be used; however, a specific build number can be selected by setting `CANYON_BUILD`, such as
|
||||||
|
|
||||||
|
-e CANYON_BUILD=11
|
||||||
|
|
||||||
### Running a SpongeVanilla server
|
### Running a SpongeVanilla server
|
||||||
|
|
||||||
Enable SpongeVanilla server mode by adding a `-e TYPE=SPONGEVANILLA` to your command-line.
|
Enable SpongeVanilla server mode by adding a `-e TYPE=SPONGEVANILLA` to your command-line.
|
||||||
|
|||||||
+6
-2
@@ -164,15 +164,19 @@ case "${TYPE^^}" in
|
|||||||
exec ${SCRIPTS:-/}start-deployYatopia "$@"
|
exec ${SCRIPTS:-/}start-deployYatopia "$@"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
AIRPLANE)
|
AIRPLANE)
|
||||||
exec ${SCRIPTS:-/}start-deployAirplane "$@"
|
exec ${SCRIPTS:-/}start-deployAirplane "$@"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
CANYON)
|
||||||
|
exec ${SCRIPTS:-/}start-deployCanyon "$@"
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
log "Invalid type: '$TYPE'"
|
log "Invalid type: '$TYPE'"
|
||||||
log "Must be: VANILLA, FORGE, BUKKIT, SPIGOT, PAPER, FTBA (multiarch-only),"
|
log "Must be: VANILLA, FORGE, BUKKIT, SPIGOT, PAPER, FTBA (multiarch-only),"
|
||||||
log " CURSE_INSTANCE, CURSEFORGE, SPONGEVANILLA, TUINITY, PURPUR"
|
log " CURSE_INSTANCE, CURSEFORGE, SPONGEVANILLA, TUINITY, PURPUR"
|
||||||
log " CUSTOM, MAGMA, MOHIST, CATSERVER, YATOPIA, AIRPLANE"
|
log " CUSTOM, MAGMA, MOHIST, CATSERVER, YATOPIA, AIRPLANE, CANYON"
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,54 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
|
IFS=$'\n\t'
|
||||||
|
|
||||||
|
. ${SCRIPTS:-/}start-utils
|
||||||
|
isDebugging && set -x
|
||||||
|
|
||||||
|
: ${CANYON_BUILD:=lastSuccessfulBuild}
|
||||||
|
JAVA_VER=$(java -version 2>&1 | head -1 | cut -d'"' -f2 | sed '/^1\./s///' | cut -d'.' -f1)
|
||||||
|
|
||||||
|
if [ "${JAVA_VER}" != "8" ]; then
|
||||||
|
log "ERROR: Canyon server type only supports Java version 8"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${VERSION}" != "b1.7.3" ]; then
|
||||||
|
log "ERROR: Canyon server type only supports VERSION=b1.7.3"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
canyonJob="https://ci.velocitypowered.com/job/Canyon"
|
||||||
|
|
||||||
|
buildRelPath=$(
|
||||||
|
curl -fsSL "${canyonJob}/${CANYON_BUILD}/api/json" |
|
||||||
|
jq -r '.artifacts[0].relativePath'
|
||||||
|
)
|
||||||
|
buildNumber=$(
|
||||||
|
curl -fsSL "${canyonJob}/${CANYON_BUILD}/api/json" |
|
||||||
|
jq -r '.number'
|
||||||
|
)
|
||||||
|
baseName=$(basename "${buildRelPath}")
|
||||||
|
|
||||||
|
# Add build tag to non-tagged builds for version detection
|
||||||
|
if [ ${baseName%.*} = 'canyon-server' ]; then
|
||||||
|
export SERVER=${baseName%.*}_build${buildNumber}.jar
|
||||||
|
else
|
||||||
|
export SERVER="${baseName}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f "$SERVER" ]; then
|
||||||
|
downloadUrl="${canyonJob}/${CANYON_BUILD}/artifact/${buildRelPath}"
|
||||||
|
log "Downloading Canyon build ${buildNumber} from $downloadUrl ..."
|
||||||
|
curl -fsSL -o "$SERVER" "$downloadUrl"
|
||||||
|
if [ ! -f "$SERVER" ]; then
|
||||||
|
log "ERROR: failed to download from $downloadUrl (status=$?)"
|
||||||
|
exit 3
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Normalize on Spigot for later operations
|
||||||
|
export TYPE=SPIGOT
|
||||||
|
export SKIP_LOG4J_CONFIG=true
|
||||||
|
|
||||||
|
exec ${SCRIPTS:-/}start-spiget "$@"
|
||||||
Reference in New Issue
Block a user