Files
Felis/.dockerignore
T
flyemoji d9e866fcdb fix(deploy): make the lobby image actually build
The lobby image had never been built and two defects blocked it: the felis image .dockerignore excluded plugins/* and only re-included limbo/shared, so the lobby Dockerfile's COPY plugins/paper landed empty; and the plugin stage used eclipse-temurin:21-jdk, which ships no gradle (and the tree vendors no wrapper), failing with 'gradle: not found'. Re-include plugins/paper and build the paper plugin on gradle:8.14-jdk21, matching the limbo image. Verified: both images build and boot (limbo /healthz 200 on 25565; lobby reaches 'Done' with felis-paper enabled).
2026-07-03 01:26:15 +09:00

33 lines
1.3 KiB
Plaintext

# Keep the felis image build context lean, but mind the embeds: three trees MUST
# stay in the context or the image build fails. internal/store/migrations/*.sql,
# deploy/bootstrap.sh and deploy/crd/*.yaml are //go:embed-ed by Go packages the
# binary compiles, and internal/panel/static is the panel the Dockerfile panel
# stage builds from panel/. Exclude only build-irrelevant trees below; never add
# panel/, deploy/, or internal/ here without checking `grep -rn go:embed`.
.git
.claude
**/node_modules
# plugins/ is code-only and excluded from the MAIN felis image — EXCEPT the source
# trees the two game images compile: the login-limbo image (deploy/limbo/Dockerfile)
# builds plugins/limbo, the lobby image (deploy/lobby/Dockerfile) builds plugins/paper,
# and both srcDir-include the shared link core (plugins/shared).
# `plugins/*` excludes each sibling module individually (so plugins/ itself is still
# walked and the negations below can re-include), then the build trees are pulled
# back in and their Gradle outputs re-excluded to keep the context lean. The main
# image copies none of plugins/, so carrying these small source dirs is harmless.
plugins/*
!plugins/limbo
!plugins/paper
!plugins/shared
plugins/**/build
plugins/**/.gradle
docs
*.md
Dockerfile
.dockerignore
.gitignore
*.pem
*.key
felis
felis.exe