Preserve management container publishing after the monorepo move #8

Closed
opened 2026-07-17 19:10:10 +00:00 by yuris · 0 comments
Owner

Goal

Keep the existing garage management image and deployment contract working after its source moves to apps/management.

Scope

  • Update the management Dockerfile for the pnpm workspace layout and Next.js standalone output paths.
  • Update .forgejo/workflows/build-publish.yml build context and Dockerfile path.
  • Preserve the existing registry image tags: git.nokopia.com/${{ github.repository }}:latest and the commit SHA tag.
  • Preserve CONTAINER_REGISTRY_TOKEN and NEXT_PUBLIC_BETTER_AUTH_URL handling.
  • Trigger management publication only for changes to management, its shared dependencies, workspace lock/config files, Docker files, or its workflow.
  • Update Docker Compose paths without changing the deployed service contract.
  • Ensure migration scripts, Drizzle migrations, static assets, standalone server files, and required production dependencies are present in the resulting image.

Acceptance criteria

  • Forgejo successfully builds and publishes the management image from the monorepo.
  • The published image starts, runs database migrations, and serves the management application.
  • Store-only changes do not publish a management image.
  • Changes to packages/catalog do publish a management image.
  • Existing deployment configuration can pull the same latest image name without modification.

Non-goals

  • Combining management and store into one image.
  • Turbo remote caching inside Docker.
  • Renaming the existing management container image.
## Goal Keep the existing garage management image and deployment contract working after its source moves to `apps/management`. ## Scope - Update the management Dockerfile for the pnpm workspace layout and Next.js standalone output paths. - Update `.forgejo/workflows/build-publish.yml` build context and Dockerfile path. - Preserve the existing registry image tags: `git.nokopia.com/${{ github.repository }}:latest` and the commit SHA tag. - Preserve `CONTAINER_REGISTRY_TOKEN` and `NEXT_PUBLIC_BETTER_AUTH_URL` handling. - Trigger management publication only for changes to management, its shared dependencies, workspace lock/config files, Docker files, or its workflow. - Update Docker Compose paths without changing the deployed service contract. - Ensure migration scripts, Drizzle migrations, static assets, standalone server files, and required production dependencies are present in the resulting image. ## Acceptance criteria - Forgejo successfully builds and publishes the management image from the monorepo. - The published image starts, runs database migrations, and serves the management application. - Store-only changes do not publish a management image. - Changes to `packages/catalog` do publish a management image. - Existing deployment configuration can pull the same `latest` image name without modification. ## Non-goals - Combining management and store into one image. - Turbo remote caching inside Docker. - Renaming the existing management container image.
yuris closed this issue 2026-07-17 20:25:40 +00:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
yuris/garage#8
No description provided.