Skip to content

Migrate and replace old Docker pipeline with docker-new #7003

@xmfcx

Description

@xmfcx

Summary

Replace the old docker/ pipeline (555-line monolith workflow, 18 component-split images, .env-driven config) with the new docker-new/ pipeline (ansible-first, unified images, HCL bake orchestration). The new pipeline runs side-by-side today and publishes to ghcr.io/autowarefoundation/autoware-new.

Target: 2026-04-18

Phase 1: Land the new pipeline (side-by-side) -- Apr 11-14

New images publish to autoware-new. Old pipeline keeps running.

Phase 2: Migrate consumers to new images -- Apr 15

Consumers inside the autoware repo must switch to new image names before the old pipeline can be removed.

Sub-repos (autoware_core, autoware_universe, autoware_tools, etc.) reference images by registry path from the main autoware repo. They do not need changes -- when the main repo switches to new images, sub-repos pick them up automatically. Test with autoware-new images in throwaway branches for confidence, but do not merge those branches.

  • Dev containers (core-devel, universe-devel, universe-devel-cuda) -- add -jazzy suffix
  • Scenario test CI (.github/workflows/scenario-test.yaml)
  • Decide component images strategy (wait for Move component containers to openadkit repositories #6733, rewrite compose, or drop compose)
  • Update or replace docker/run.sh and docker/build.sh
  • Validation: test autoware_core, autoware_universe, and autoware_tools CI with new images in temporary branches (no merge needed)

Phase 3: Registry cutover -- Apr 16

  • Decide final registry name (autoware-new vs take over autoware)
  • If taking over autoware: update REGISTRY in workflows/HCL, publish deprecation notice for old tag format

Phase 4: Remove old pipeline -- Apr 16

  • Delete docker/ tree (Dockerfiles, bake files, scripts, compose, .env files, README)
  • Delete old CI workflows (docker-build-and-push.yaml, health-check.yaml, keep-build-cache-small.yaml)
  • Check setup-dev-env.sh for remaining dependents, remove if safe
  • Clean up old GHCR packages (autoware, autoware-tools, autoware-buildcache)

Phase 5: Rename docker-new/ to docker/ -- Apr 17

  • Rename docker-new/ to docker/
  • Drop -new suffixes from workflow filenames
  • Update all references

Metadata

Metadata

Assignees

Labels

type:buildTooling and infrastructure around building the Autoware.type:containersDocker containers, containerization of components, or container orchestration.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions