Repository navigation
fix(ark): set the image entrypoint (the server never started) + manage CurseForge mods - #14
Merged
Merged
Conversation
ARK: Survival Ascended declared no capabilities.mods at all, so it had no Mods tab — correct at the time, because ASA has no mods directory and no mods env. Its only hook is a -mods=<curseforge-id>,... flag on the launch string, which also carries the user's own params, so the file-drop model never fitted. Gameplane now has mods-by-ID: the operator projects the selected mod ids into a template-declared env. ARK declares it in append mode against ASA_START_PARAMS, so the ids are appended to whatever launch params the user set — they never type -mods= themselves. With no mods selected nothing is appended (a bare -mods= would break the server). Adds the CurseForge registry provider for in-app browse (ASA's mod platform). No install/allowedHosts block: the game downloads the mods itself, so the agent never fetches anything here. Signed-off-by: valgulnecron <39313199+ValgulNecron@users.noreply.github.com>
The image declares no ENTRYPOINT and its CMD is /bin/bash. With no TTY the container got a non-interactive bash, which read EOF on stdin and exited 0 immediately: the pod restart-looped forever with an EMPTY log and a 'Completed' exit status, which looks nothing like a crash and is why this went unnoticed. Caught on the test cluster after 22 restarts. The image's own docker-compose sets entrypoint: /usr/bin/start_server. Declaring it makes the server actually boot — verified on the cluster: the container now runs, fetches Proton and proceeds to the SteamCMD install. ARK could never have started since the module was written. Signed-off-by: valgulnecron <39313199+ValgulNecron@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ARK declared no
capabilities.modsat all, so it had no Mods tab. That was correct at the time: ASA has no mods directory and no mods env — its only hook is a-mods=<curseforge-id>,...flag on the launch string, which also carries the user's own params. The file-drop mod model simply doesn't fit.Gameplane now has mods-by-ID (Gameplane#122): the operator projects the selected mod ids into a template-declared env. ARK declares it in append mode against
ASA_START_PARAMS, so the ids are appended onto whatever launch params the user set — they never type-mods=themselves. With no mods selected, nothing is appended (a bare-mods=would break the server).Also adds the CurseForge registry provider for in-app browse — ASA's mod platform. Deliberately no
install/allowedHostsblock: the game downloads the mods, so the agent never fetches anything for this template.Requires Gameplane#122 (CRD + operator) and the mods-by-ID API route.