Merge pull request #226 from trails-cool/fix/dockerfile-jobs-package

Fix Dockerfiles: add jobs package for pg-boss resolution
This commit is contained in:
Ullrich Schäfer 2026-04-14 12:18:32 +02:00 committed by GitHub
commit a3e97be662
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 40 additions and 0 deletions

View file

@ -38,6 +38,13 @@ jobs:
run: pnpm audit --audit-level=high
continue-on-error: true
dockerfile-check:
name: Dockerfile Package Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- run: bash scripts/check-dockerfiles.sh
typecheck:
name: Typecheck
runs-on: ubuntu-latest

View file

@ -14,6 +14,7 @@ COPY packages/i18n/package.json packages/i18n/
COPY packages/api/package.json packages/api/
COPY packages/map-core/package.json packages/map-core/
COPY packages/db/package.json packages/db/
COPY packages/jobs/package.json packages/jobs/
RUN pnpm install --frozen-lockfile
FROM base AS build
@ -32,6 +33,7 @@ COPY --from=deps /app/apps/journal/node_modules ./apps/journal/node_modules
COPY --from=build /app/apps/journal/build ./apps/journal/build
COPY --from=build /app/apps/journal/server.ts ./apps/journal/server.ts
COPY --from=build /app/apps/journal/app/lib ./apps/journal/app/lib
COPY --from=build /app/apps/journal/app/jobs ./apps/journal/app/jobs
COPY --from=build /app/apps/journal/package.json ./apps/journal/package.json
COPY --from=build /app/packages ./packages

View file

@ -11,7 +11,10 @@ COPY packages/ui/package.json packages/ui/
COPY packages/map/package.json packages/map/
COPY packages/gpx/package.json packages/gpx/
COPY packages/i18n/package.json packages/i18n/
COPY packages/api/package.json packages/api/
COPY packages/map-core/package.json packages/map-core/
COPY packages/db/package.json packages/db/
COPY packages/jobs/package.json packages/jobs/
RUN pnpm install --frozen-lockfile
FROM base AS build
@ -30,6 +33,7 @@ COPY --from=deps /app/apps/planner/node_modules ./apps/planner/node_modules
COPY --from=build /app/apps/planner/build ./apps/planner/build
COPY --from=build /app/apps/planner/server.ts ./apps/planner/server.ts
COPY --from=build /app/apps/planner/app/lib ./apps/planner/app/lib
COPY --from=build /app/apps/planner/app/jobs ./apps/planner/app/jobs
COPY --from=build /app/apps/planner/package.json ./apps/planner/package.json
COPY --from=build /app/packages ./packages

27
scripts/check-dockerfiles.sh Executable file
View file

@ -0,0 +1,27 @@
#!/usr/bin/env bash
# Verify all workspace packages are listed in Dockerfiles.
# Run in CI to catch missing COPY lines when new packages are added.
set -euo pipefail
errors=0
for pkg_json in packages/*/package.json; do
pkg_dir=$(dirname "$pkg_json") # e.g. packages/jobs
pkg_name=$(basename "$pkg_dir") # e.g. jobs
for dockerfile in apps/*/Dockerfile; do
app=$(basename "$(dirname "$dockerfile")")
if ! grep -q "COPY ${pkg_dir}/package.json" "$dockerfile"; then
echo "ERROR: $dockerfile is missing COPY for $pkg_dir/package.json"
errors=$((errors + 1))
fi
done
done
if [ "$errors" -gt 0 ]; then
echo ""
echo "$errors missing package(s) in Dockerfiles. Add COPY lines to the deps stage."
exit 1
fi
echo "All workspace packages present in all Dockerfiles."