dev-deploy: fix backend startup in CI #3

Merged
developer merged 2 commits from feature/dev-deploy-followups into development 2026-05-13 22:42:03 +00:00
3 changed files with 19 additions and 3 deletions
Showing only changes of commit 0da360a644 - Show all commits
+3 -2
View File
@@ -100,9 +100,10 @@ jobs:
- name: Bring up the stack - name: Bring up the stack
working-directory: tools/dev-deploy working-directory: tools/dev-deploy
env:
GALAXY_DEV_GAME_STATE_DIR: ${{ env.HOME }}/.galaxy-dev/game-state
run: | run: |
# Resolve in the shell, not in YAML expressions — `env.HOME`
# is empty at the workflow-evaluation stage.
export GALAXY_DEV_GAME_STATE_DIR="$HOME/.galaxy-dev/game-state"
mkdir -p "$GALAXY_DEV_GAME_STATE_DIR" mkdir -p "$GALAXY_DEV_GAME_STATE_DIR"
docker compose up -d --wait --remove-orphans docker compose up -d --wait --remove-orphans
+5 -1
View File
@@ -125,7 +125,11 @@ services:
target: ${GALAXY_DEV_GAME_STATE_DIR} target: ${GALAXY_DEV_GAME_STATE_DIR}
bind: bind:
create_host_path: true create_host_path: true
- ../../pkg/geoip/test-data/test-data/GeoIP2-Country-Test.mmdb:/var/lib/galaxy/geoip.mmdb:ro # The GeoIP database is baked into the backend image (see
# tools/local-dev/backend.Dockerfile); a bind-mount is not used
# here because the source path resolves inside the runner
# workspace volume and the host Docker daemon cannot see it,
# which produced an "is a directory" error in CI.
networks: networks:
- galaxy-internal - galaxy-internal
healthcheck: healthcheck:
+11
View File
@@ -24,6 +24,16 @@ COPY pkg/transcoder/ ./pkg/transcoder/
COPY pkg/util/ ./pkg/util/ COPY pkg/util/ ./pkg/util/
COPY backend/ ./backend/ COPY backend/ ./backend/
# Bake the GeoIP test database into the build context so downstream
# stages can copy it into the runtime image. The path is the
# `MaxMind-DB` git submodule under `pkg/geoip/test-data/`; the file is
# the smallest country DB MaxMind publishes and is what every other
# dev-stack uses. Baking it lets dev-deploy skip the bind-mount that
# fails on runner-workspace volumes the host Docker daemon cannot see.
RUN mkdir -p /out/var/lib/galaxy
COPY pkg/geoip/test-data/test-data/GeoIP2-Country-Test.mmdb \
/out/var/lib/galaxy/geoip.mmdb
RUN <<'EOF' cat > go.work RUN <<'EOF' cat > go.work
go 1.26.2 go 1.26.2
@@ -67,5 +77,6 @@ EXPOSE 8080
EXPOSE 8081 EXPOSE 8081
COPY --from=builder /out/backend /usr/local/bin/backend COPY --from=builder /out/backend /usr/local/bin/backend
COPY --from=builder /out/var/lib/galaxy/geoip.mmdb /var/lib/galaxy/geoip.mmdb
ENTRYPOINT ["/usr/local/bin/backend"] ENTRYPOINT ["/usr/local/bin/backend"]