forged-eggs/java/spongevanilla/egg-sponge.yaml

161 lines
23 KiB
YAML
Raw Normal View History

_comment: 'DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL'
meta:
version: PLCN_v3
update_url: 'https://raw.githubusercontent.com/pelican-eggs/minecraft/refs/heads/main/java/spongevanilla/egg-sponge.yaml'
exported_at: '2026-04-21T18:31:16+00:00'
name: Sponge
author: panel@example.com
uuid: f0d2f88f-1ff3-42a0-b03f-ac44c5571e6d
description: 'A community-driven open source Minecraft: Java Edition modding platform.'
image: 'data:image/png;base64,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
tags:
- minecraft
features:
- eula
- java_version
- pid_limit
docker_images:
'Java 25': 'ghcr.io/pelican-eggs/yolks:java_25'
'Java 21': 'ghcr.io/pelican-eggs/yolks:java_21'
'Java 17': 'ghcr.io/pelican-eggs/yolks:java_17'
'Java 16': 'ghcr.io/pelican-eggs/yolks:java_16'
'Java 11': 'ghcr.io/pelican-eggs/yolks:java_11'
'Java 8': 'ghcr.io/pelican-eggs/yolks:java_8'
file_denylist: { }
startup_commands:
Default: 'java -Xms128M -XX:MaxRAMPercentage=95.0 -jar {{SERVER_JARFILE}}'
config:
files:
server.properties:
parser: properties
find:
server-ip: ''
server-port: '{{server.allocations.default.port}}'
query.port: '{{server.allocations.default.port}}'
startup:
done: ')! For help, type '
logs: { }
stop: stop
scripts:
installation:
script: |-
#!/bin/ash
# Sponge Installation Script
#
# Server Files: /mnt/server
cd /mnt/server
if [ $MINECRAFT_VERSION = 'latest' ] || [ -z $MINECRAFT_VERSION ]; then
TARGET_VERSION_JSON=$(curl -sSL https://dl-api.spongepowered.org/v2/groups/org.spongepowered/artifacts/${SPONGE_TYPE}/latest?recommended=true)
if [ -z "${TARGET_VERSION_JSON}" ]; then
echo -e "Failed to find latest recommended version!"
exit 1
fi
echo -e "Found latest version for ${SPONGE_TYPE}"
else
if [ $SPONGE_TYPE = 'spongevanilla' ]; then
VERSIONS_JSON=$(curl -sSL https://dl-api.spongepowered.org/v2/groups/org.spongepowered/artifacts/${SPONGE_TYPE}/versions?tags=,minecraft:${MINECRAFT_VERSION}&offset=0&limit=1)
else
FORGETAG='forge'
if [ $SPONGE_TYPE = 'spongeneo' ]; then
FORGETAG='neoforge'
fi
VERSIONS_JSON=$(curl -sSL https://dl-api.spongepowered.org/v2/groups/org.spongepowered/artifacts/${SPONGE_TYPE}/versions?tags=,minecraft:${MINECRAFT_VERSION},${FORGETAG}:${FORGE_VERSION}&offset=0&limit=1)
fi
if [ -z "${VERSIONS_JSON}" ]; then
echo -e "Failed to find recommended ${MINECRAFT_VERSION} version for ${SPONGE_TYPE} ${FORGE_VERSION}!"
exit 1
fi
VERSION_KEY=$(echo $VERSIONS_JSON | jq -r '.artifacts | to_entries[0].key')
TARGET_VERSION_JSON=$(curl -sSL https://dl-api.spongepowered.org/v2/groups/org.spongepowered/artifacts/${SPONGE_TYPE}/versions/${VERSION_KEY})
if [ -z "${TARGET_VERSION_JSON}" ]; then
echo -e "Failed to find ${VERSION_KEY} for ${SPONGE_TYPE} ${FORGE_VERSION}!"
exit 1
fi
echo -e "Found ${MINECRAFT_VERSION} for ${SPONGE_TYPE}"
fi
TARGET_VERSION=`echo $TARGET_VERSION_JSON | jq '.assets[] | select(.classifier == "universal")'`
if [ -z "${TARGET_VERSION}" ]; then
TARGET_VERSION=`echo $TARGET_VERSION_JSON | jq '.assets[] | select(.classifier == "" and .extension == "jar")'`
fi
if [ -z "${TARGET_VERSION}" ]; then
echo -e "Failed to get download url data from the selected version"
exit 1
fi
SPONGE_URL=$(echo $TARGET_VERSION | jq -r '.downloadUrl')
CHECKSUM=$(echo $TARGET_VERSION | jq -r '.md5')
echo -e "Found file at ${SPONGE_URL} with checksum ${CHECKSUM}"
echo -e "running: curl -o ${SERVER_JARFILE} ${SPONGE_URL}"
curl -o ${SERVER_JARFILE} ${SPONGE_URL}
if [ $(basename $(md5sum ${SERVER_JARFILE})) = ${CHECKSUM} ] ; then
echo "Checksum passed"
else
echo "Checksum failed"
fi
echo -e "Install Complete"
container: 'ghcr.io/pelican-eggs/installers:alpine'
entrypoint: ash
variables:
-
name: 'Forge/Neoforge Version'
description: |-
The modding api target version if set to `spongeforge` or `spongeneo`. Leave blank if using
`spongevanilla`
env_variable: FORGE_VERSION
default_value: ''
user_viewable: true
user_editable: true
rules:
- string
sort: 3
-
name: 'Minecraft Version'
description: |-
The version of Minecraft to target. Use "latest" to install the latest version. Go to Settings >
Reinstall Server to apply.
env_variable: MINECRAFT_VERSION
default_value: latest
user_viewable: true
user_editable: true
rules:
- required
- string
- 'between:3,15'
sort: 1
-
name: 'Server Jar File'
description: 'The name of the Jarfile to use when running Sponge.'
env_variable: SERVER_JARFILE
default_value: server.jar
user_viewable: true
user_editable: true
rules:
- required
- 'regex:/^([\w\d._-]+)(\.jar)$/'
sort: 4
-
name: 'Sponge Type'
description: |-
SpongeVanilla if you are only using Sponge plugins.
SpongeForge when using Forge mods and Sponge plugins.
SpongeNeo when using NeoForge mods and Sponge plugins.
env_variable: SPONGE_TYPE
default_value: spongevanilla
user_viewable: true
user_editable: true
rules:
- required
- 'in:spongevanilla,spongeforge,spongeneo'
sort: 2