Compare commits

...

9 Commits

Author SHA1 Message Date
Niklas Gerstner
621bafb4f2 Download paper.yml and bukkit.yml (#3217) 2024-12-31 08:46:33 -06:00
Geoff Bourne
9a20ab7b48 Download default spigot.yml for PaperMC to top-level directory (#3216) 2024-12-30 19:02:43 -06:00
Geoff Bourne
6514ed85a0 Cache CF search API calls and better handle CURSEFORGE_FILES rate limit (#3215) 2024-12-29 13:57:36 -06:00
EmilyxFox
6391be5251 added cf new exclusions (#3214) 2024-12-29 08:35:44 -06:00
Prabhjot
2d1a35dba8 fix vault hunters example (#3213) 2024-12-28 17:20:56 -06:00
Liz Fransen
236ed74295 Add an Example of Setting Up GregTech: New Horizons (#3212) 2024-12-27 11:42:24 -06:00
dependabot[bot]
05cbbfc9e3 build(deps): bump docker/setup-buildx-action from 3.7.1 to 3.8.0 in the updates group (#3202) 2024-12-24 16:18:07 -06:00
Geoff Bourne
678dda5d4a docs: clarify curseforge listing file and GetBukkit limitation (#3205) 2024-12-23 14:07:14 -06:00
dependabot[bot]
c3e96f6ac6 build(deps): bump mkdocs-material from 9.5.48 to 9.5.49 in /docs in the patches group (#3203)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-23 09:05:47 -06:00
14 changed files with 97 additions and 32 deletions

View File

@@ -128,7 +128,7 @@ jobs:
org.opencontainers.image.authors=Geoff Bourne <itzgeoff@gmail.com>
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3.7.1
uses: docker/setup-buildx-action@v3.8.0
- name: Set up QEMU
uses: docker/setup-qemu-action@v3.2.0

View File

@@ -53,7 +53,7 @@ jobs:
fetch-depth: 0
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3.7.1
uses: docker/setup-buildx-action@v3.8.0
- name: Confirm multi-arch build
uses: docker/build-push-action@v6.10.0

View File

@@ -50,7 +50,7 @@ RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
--var version=${MC_SERVER_RUNNER_VERSION} --var app=mc-server-runner --file {{.app}} \
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
ARG MC_HELPER_VERSION=1.40.6
ARG MC_HELPER_VERSION=1.40.7
ARG MC_HELPER_BASE_URL=${GITHUB_BASEURL}/itzg/mc-image-helper/releases/download/${MC_HELPER_VERSION}
# used for cache busting local copy of mc-image-helper
ARG MC_HELPER_REV=1

View File

@@ -1,4 +1,4 @@
FROM python:3.8
FROM python:3.9
RUN pip install --upgrade pip

View File

@@ -22,22 +22,27 @@ The following formats are supported in the list of project-file references:
- Project ID, such as `238222`. _The newest applicable file will be automatically selected._
- Project slug or ID, `:`, and a file ID, such as `jei:4593548` or `238222:4593548`
- Project slug or ID, `@`, and a partial filename, such as `jei@10.2.1.1005`. This option is useful to refer to a version of the mod/plugin rather than looking up the file ID.
- An `@` followed by the **container path** to a listing file
An `@` followed by the container path to a listing file can also be provided as a project-file reference. Each line is processed as a reference where blank lines and comments that start with `#` are ignored.
!!! info "More about listing files"
For example, `CURSEFORGE_FILES` can be set to "@/extras/cf-mods.txt" where the container file `/extras/cf-mods.txt` contains
Each line in the listing file is processed as one of the references above; however, blank lines and comments that start with `#` are ignored.
Make sure to place the listing file in a mounted directory/volume or declare an appropriate mount for it.
For example, `CURSEFORGE_FILES` can be set to "@/extras/cf-mods.txt", assuming "/extras" has been added to `volumes` section, where the container file `/extras/cf-mods.txt` contains
```text
# This comment is ignored
jei:10.2.1.1005
# This and previous blank line are ignore
geckolib
aquaculture
naturalist
```
```text
# This comment is ignored
jei:10.2.1.1005
# This and previous blank line are ignore
geckolib
aquaculture
naturalist
```
!!! tip "Docker Compose"
!!! tip "Multi-line values in Docker Compose"
Making use of the space delimited option, compose file declarations can be organized nicely with a [multi-line string](https://yaml-multiline.info/), such as

View File

@@ -1,4 +1,4 @@
mkdocs-material == 9.5.48
mkdocs-material == 9.5.49
mkdocs-autorefs == 1.2.0
mkdocstrings == 0.27.0
mkdocs-literate-nav == 0.6.1

View File

@@ -1,5 +1,9 @@
# Bukkit/Spigot
!!! failure "GetBukkit site no longer supports automated downloads"
The downloads provider <https://getbukkit.org> seems to no longer support automated downloads. As such, it is highly recommended to switch to [Paper](paper.md) instead since it is actively maintained and fully compatible with Bukkit/Spigot plugins.
Run a Bukkit/Spigot server type by setting the environment variable `TYPE` to "BUKKIT" or "SPIGOT".
!!! example

View File

@@ -0,0 +1,23 @@
services:
mc:
# make sure this java version matches with pack java version
image: itzg/minecraft-server:java21
tty: true
stdin_open: true
ports:
- "25565:25565"
environment:
EULA: "TRUE"
TYPE: CUSTOM
GENERIC_PACKS: GT_New_Horizons_2.7.1_Server_Java_17-21
GENERIC_PACKS_SUFFIX: .zip
GENERIC_PACKS_PREFIX: https://downloads.gtnewhorizons.com/ServerPacks/
# if this isn't true, then the container tries to download the modpack every run
: "true"
# Make sure that this matches what is in your pack's startserver bash file
CUSTOM_JAR_EXEC: "-Xms6G -Xmx6G -Dfml.readTimeout=180 @java9args.txt -jar lwjgl3ify-forgePatches.jar nogui"
volumes:
# attach the relative directory 'data' to the container's /data path
- mc-data:/data
volumes:
mc-data:

View File

@@ -14,11 +14,8 @@ services:
#CF_FILENAME_MATCHER: "0.2.34"
CF_EXCLUDE_MODS: |
controlling
craftpresence
creative-core
default-options
equipment-compare
item-borders
itemphysic-lite
konkrete
oauth

View File

@@ -1,17 +1,18 @@
services:
mc:
image: itzg/minecraft-server
image: itzg/minecraft-server:java17
ports:
- "25565:25565"
environment:
EULA: "true"
MODPACK_PLATFORM: AUTO_CURSEFORGE
CF_API_KEY: # allocate from https://console.curseforge.com/
# allocate from https://console.curseforge.com/
CF_API_KEY: ${CF_API_KEY}
CF_SLUG: vault-hunters-1-18-2
CF_FILENAME_MATCHER: "Update-10.0.0"
MOTD: "§4----- §2 Vault Hunters: 1.18.2u10.0.0 §4 -----§r\\n §4------ §e vaulthunters.gg §4------"
MOTD: "§4----- §2 Vault Hunters: 1.18.2 §4 -----§r\\n §4------ §e vaulthunters.gg §4------"
MEMORY: 6G # 4G for base server + 2G per player
CF_EXCLUDE_MODS: reauth
CF_EXCLUDE_MODS: |
reauth
ALLOW_FLIGHT: true
ENABLE_COMMAND_BLOCK: true
DIFFICULTY: hard
@@ -19,4 +20,4 @@ services:
- mc-data:/data
volumes:
mc-data: {}
mc-data: {}

View File

@@ -26,6 +26,7 @@
"clickable-advancements",
"configured",
"controlling",
"craftpresence",
"ctm",
"custom-main-menu",
"dark-mode-everywhere",
@@ -44,6 +45,7 @@
"entity-collision-fps-fix",
"entity-texture-features-fabric",
"entityculling",
"equipment-compare",
"extreme-sound-muffler",
"ezzoom",
"fading-night-vision",
@@ -61,6 +63,8 @@
"inmisaddon",
"iris-flywheel-compat",
"irisshaders",
"item-borders",
"item-highlighter",
"item-obliterator",
"itemphysic-lite",
"itemzoom",
@@ -125,6 +129,7 @@
"vanillafix",
"visuality",
"waila-harvestability",
"wawla",
"xaeroplus",
"yungs-menu-tweaks",
"zume"

View File

@@ -42,11 +42,18 @@ else
applyResultsFile ${resultsFile}
fi
# Download default configs to allow for consistent patching
for c in paper-global.yml paper-world-defaults.yml spigot.yml; do
DOWNLOAD_DEFAULT_CONFIGS+=",${PAPER_CONFIG_DEFAULTS_REPO}/${VERSION}/$c"
done
export DOWNLOAD_DEFAULT_CONFIGS
defaultTopLevelConfigs="bukkit.yml spigot.yml"
if versionLessThan 1.19; then
defaultTopLevelConfigs+=" paper.yml"
else
# Download default configs to allow for consistent patching
DOWNLOAD_DEFAULT_CONFIGS=$(buildDownloadList "$PAPER_CONFIG_DEFAULTS_REPO" "$VERSION" paper-global.yml paper-world-defaults.yml)
export DOWNLOAD_DEFAULT_CONFIGS
fi
# Download top-level configs to allow for consistent patching
DOWNLOAD_DEFAULTS=$(buildDownloadList "$PAPER_CONFIG_DEFAULTS_REPO" "$VERSION" $defaultTopLevelConfigs)
export DOWNLOAD_DEFAULTS
# Normalize on Spigot for downstream operations
export FAMILY=SPIGOT

View File

@@ -36,6 +36,15 @@ if [[ $DOWNLOAD_DEFAULT_CONFIGS ]]; then
logWarning "One or more default config files were not available from $DOWNLOAD_DEFAULT_CONFIGS"
fi
fi
if [[ $DOWNLOAD_DEFAULTS ]]; then
log "Downloading default top-level configs, if needed"
if ! mc-image-helper mcopy \
--to /data \
--skip-existing --skip-up-to-date=false \
"$DOWNLOAD_DEFAULTS" 2> /dev/null; then
logWarning "One or more default files were not available from $DOWNLOAD_DEFAULTS"
fi
fi
if [[ ${PATCH_DEFINITIONS} ]]; then
log "Applying patch definitions from ${PATCH_DEFINITIONS}"

View File

@@ -513,3 +513,17 @@ function ensureRemoveAllModsOff() {
REMOVE_OLD_MODS=false
fi
}
function buildDownloadList() {
repoUrl=${1?}
version=${2?}
shift 2
result=
for c in "${@}"; do
if [[ $result ]]; then
result+=","
fi
result+="${repoUrl}/${version}/$c"
done
echo "$result"
}