mirror of
https://github.com/makeplane/plane.git
synced 2026-08-29 10:08:51 +02:00
Every image in Branch Build CE now builds one platform per job on a runner native to that architecture, pushes an untagged manifest addressed by digest, and is stitched into the tagged multi-arch index by a paired merge job. arm64 was previously produced either under QEMU emulation or on the shared makeplane/plane-dev Docker Build Cloud builder. Both paths are gone: the buildx driver is pinned to the local docker-container driver, since a leg building its own architecture natively gains nothing from a remote builder. Notable details: - cache-scope-suffix is set per architecture. The registry cache manifest is not platform-indexed, so both legs writing :buildcache would overwrite each other and roughly half the legs would go cold every run. - The merge asserts the platform set. A merge that produced a single-platform index still exits 0, so it is checked rather than assumed. - AIO asset generation is split into its own job. Run inside a matrix, both legs would collide on the aio-assets-dist artifact name and could embed different generated content under a single manifest tag. - Jobs that consume an image by tag (AIO, upload_build_assets, publish_release) now depend on the merge jobs. The tags do not exist until the merge runs. Nothing externally visible changes: the images carry the same names and the same tags. Claude-Session: https://claude.ai/code/session_01U45dsLe5GFmTsfpifuNcGQ