Draft: PoC: Use Buildx Bake for build stage images
What does this MR do?
This MR is based on !1422.
It is a PoC for using Buildx Bake as a build tool and HCL-formatted Bake files as the build script for the build stage images, aka builder images.
It removes a significant portion of .gitlab/ci/builder.gitlab-ci.yaml
and use Bake to describe the build logic. It removes multiple build jobs, ie. core:*
and go:*
, and the DAG of build dependencies from builders:build
stage and leverages targeted Bake contexts. It also replaces some parts of the shell scripts with HCL functions and language constructs to make.
Related issues
Checklist
See Definition of done.
For anything in this list which will not be completed, please provide a reason in the MR discussion
Required
-
Merge Request Title, and Description are up to date, accurate, and descriptive -
MR targeting the appropriate branch -
MR has a green pipeline on GitLab.com -
When ready for review, MR is labeled "~workflow::ready for review" per the Distribution MR workflow
Expected (please provide an explanation if not completing)
-
Test plan indicating conditions for success has been posted and passes -
Documentation created/updated -
Integration tests added to GitLab QA -
The impact any change in container size has should be evaluated -
New dependencies are managed with dependencies.io
Edited by Hossein Pursultani