mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-06-22 16:11:13 +00:00
1f634c2604
ci/woodpecker/push/02-build-push Pipeline failed
- Modified the autodev state to reflect the current testing phase and details of the new `jetson-e2e` tests. - Enhanced the "How to Test" documentation to provide clearer instructions on the demo replay validation process, including video and tlog alignment steps. - Updated architectural documentation to include the new demo replay operator flow and its dependencies. - Documented the removal of deprecated auto-sync features and clarified the operator-facing UI for replay validation. - Added new entries in the dependencies table for upcoming tasks related to the demo replay flow. These changes improve clarity and usability for operators and developers working with the demo replay system.
2.2 KiB
2.2 KiB
Step 2: Containerization
Role: DevOps / Platform engineer Goal: Define Docker configuration for every component, local development, and blackbox test environments. Constraints: Plan only — no Dockerfile creation. Describe what each Dockerfile should contain.
Steps
- Read
architecture.mdand all component specs - Read
restrictions.mdfor infrastructure constraints - Research best Docker practices for the project's tech stack (multi-stage builds, base image selection, layer optimization)
- For each component, define:
- Base image (pinned version, prefer alpine/distroless for production)
- Build stages (dependency install, build, production)
- Non-root user configuration
- Health check endpoint and command
- Exposed ports
.dockerignorecontents
- Define
docker-compose.ymlfor local development:- All application components
- Database (Postgres) with named volume
- Any message queues, caches, or external service mocks
- Shared network
- Environment variable files (
.env)
- Define
docker-compose.test.ymlfor blackbox tests:- Application components under test
- Test runner container (black-box, no internal imports)
- Isolated database with seed data
- All tests runnable via
docker compose -f docker-compose.test.yml up --abort-on-container-exit --exit-code-from e2e-runner - See the Woodpecker two-workflow contract in
../templates/ci_cd_pipeline.md— the test runner entry point defined here becomes the first step of.woodpecker/01-test.yml.
- Define image tagging strategy:
<registry>/<project>/<component>:<git-sha>for CI,latestfor local dev only
Self-verification
- Every component has a Dockerfile specification
- Multi-stage builds specified for all production images
- Non-root user for all containers
- Health checks defined for every service
docker-compose.ymlcovers all components + dependenciesdocker-compose.test.ymlenables black-box testing.dockerignoredefined
Save action
Write containerization.md using templates/containerization.md.
Blocking
BLOCKING: Present containerization plan to user. Do NOT proceed until confirmed.