From b1bb3f38f3be858dfbf27062ec6704d0ef250998 Mon Sep 17 00:00:00 2001 From: Geoff Bourne Date: Sat, 24 Apr 2021 14:06:31 -0500 Subject: [PATCH 1/2] Allowed combining of REMOVE_OLD_MODS and SPIGET_RESOURCES with /plugins mount #834 --- start-finalSetupModpack | 17 ++--------------- start-spiget | 12 ++++++++---- 2 files changed, 10 insertions(+), 19 deletions(-) diff --git a/start-finalSetupModpack b/start-finalSetupModpack index 3e4416ee..9cd3b5c5 100644 --- a/start-finalSetupModpack +++ b/start-finalSetupModpack @@ -11,21 +11,8 @@ fi CURSE_URL_BASE=${CURSE_URL_BASE:-https://minecraft.curseforge.com/projects} # Remove old mods/plugins -if isTrue ${REMOVE_OLD_MODS}; then - remove_mods_dest="/data/mods" - case ${TYPE} in - SPIGOT|BUKKIT|PAPER) - remove_mods_dest="/data/plugins" - ;; - esac - - # only try to remove existing mods dir - if [ -d "$remove_mods_dest" ]; then - log "Removing old mods in $remove_mods_dest..." - find $remove_mods_dest -mindepth 1 -maxdepth ${REMOVE_OLD_MODS_DEPTH:-16} -wholename "${REMOVE_OLD_MODS_INCLUDE:-*}" -not -wholename "${REMOVE_OLD_MODS_EXCLUDE}" -delete - else - log "Directory $remove_mods_dest does not exist; removing nothing." - fi +if isTrue ${REMOVE_OLD_MODS:-false}; then + find /data/mods /data/plugins -mindepth 1 -maxdepth ${REMOVE_OLD_MODS_DEPTH:-16} -wholename "${REMOVE_OLD_MODS_INCLUDE:-*}" -not -wholename "${REMOVE_OLD_MODS_EXCLUDE}" -delete fi # If supplied with a URL for a modpack (simple zip of jars), download it and unpack diff --git a/start-spiget b/start-spiget index c3ca5f41..d1902c09 100644 --- a/start-spiget +++ b/start-spiget @@ -16,7 +16,7 @@ containsJars() { if [[ $line =~ $pat ]]; then return 0 fi - done <<< $(unzip -l "$file") + done <<<$(unzip -l "$file") return 1 } @@ -46,10 +46,14 @@ getResourceFromSpiget() { } if [[ ${SPIGET_RESOURCES} ]]; then + if isTrue ${REMOVE_OLD_MODS:-false}; then + rm -rf /data/plugins + REMOVE_OLD_MODS=false + fi + log "Getting plugins via Spiget" - IFS=',' read -r -a resources <<< "${SPIGET_RESOURCES}" - for resource in "${resources[@]}" - do + IFS=',' read -r -a resources <<<"${SPIGET_RESOURCES}" + for resource in "${resources[@]}"; do getResourceFromSpiget "${resource}" done fi From cfb2739cd98f79bc92d9c4d4fd48bb6d3b3ec028 Mon Sep 17 00:00:00 2001 From: Geoff Bourne Date: Mon, 26 Apr 2021 08:19:50 -0500 Subject: [PATCH 2/2] Normalized on TYPE=CURSEFORGE for server properties logic, etc #843 --- start-deployCF | 2 +- start-finalSetupServerProperties | 2 +- start-finalSetupWorld | 2 +- start-minecraftFinalSetup | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/start-deployCF b/start-deployCF index 848ad389..52e6b6eb 100644 --- a/start-deployCF +++ b/start-deployCF @@ -27,7 +27,7 @@ isDebugging && set -x export FTB_BASE_DIR legacyJavaFixerUrl=https://ftb.forgecdn.net/FTB2/maven/net/minecraftforge/lex/legacyjavafixer/1.0/legacyjavafixer-1.0.jar -export TYPE=FEED-THE-BEAST +export TYPE=CURSEFORGE FTB_SERVER_MOD=${FTB_SERVER_MOD:-$CF_SERVER_MOD} diff --git a/start-finalSetupServerProperties b/start-finalSetupServerProperties index 7b644199..382ff5bd 100644 --- a/start-finalSetupServerProperties +++ b/start-finalSetupServerProperties @@ -181,7 +181,7 @@ function customizeServerProps { } # Deploy server.properties file -if [[ ${TYPE} == "FEED-THE-BEAST" ]]; then +if [[ ${TYPE} == "CURSEFORGE" ]]; then export SERVER_PROPERTIES="${FTB_DIR}/server.properties" log "detected FTB, changing properties path to ${SERVER_PROPERTIES}" fi diff --git a/start-finalSetupWorld b/start-finalSetupWorld index cfbd4ad0..e8ac56cc 100644 --- a/start-finalSetupWorld +++ b/start-finalSetupWorld @@ -7,7 +7,7 @@ isDebugging && set -x : ${LEVEL:=world} export LEVEL -if [ $TYPE = "FEED-THE-BEAST" ]; then +if [ $TYPE = "CURSEFORGE" ]; then worldDest=$FTB_DIR/$LEVEL else worldDest=/data/$LEVEL diff --git a/start-minecraftFinalSetup b/start-minecraftFinalSetup index 392c5f89..75cfcf21 100644 --- a/start-minecraftFinalSetup +++ b/start-minecraftFinalSetup @@ -180,7 +180,7 @@ if [[ ${TYPE} == "CURSE_INSTANCE" ]]; then exec mc-server-runner ${mcServerRunnerArgs} \ --cf-instance-file "${CURSE_INSTANCE_JSON}" \ java $JVM_XX_OPTS $JVM_OPTS $expandedDOpts -jar _SERVERJAR_ "$@" $EXTRA_ARGS -elif [[ ${TYPE} == "FEED-THE-BEAST" && "${SERVER}" ]]; then +elif [[ ${TYPE} == "CURSEFORGE" && "${SERVER}" ]]; then copyFilesForCurseForge cd "${FTB_DIR}" @@ -189,7 +189,7 @@ elif [[ ${TYPE} == "FEED-THE-BEAST" && "${SERVER}" ]]; then set -x fi exec mc-server-runner ${bootstrapArgs} ${mcServerRunnerArgs} java $JVM_XX_OPTS $JVM_OPTS $expandedDOpts -jar $(basename "${SERVER}") "$@" $EXTRA_ARGS -elif [[ ${TYPE} == "FEED-THE-BEAST" ]]; then +elif [[ ${TYPE} == "CURSEFORGE" ]]; then mcServerRunnerArgs="${mcServerRunnerArgs} --shell bash" copyFilesForCurseForge