feat(ci): add container build matrix check. Fixes #119#127
feat(ci): add container build matrix check. Fixes #119#127prachimaskar wants to merge 4 commits intokubeflow:mainfrom
Conversation
Signed-off-by: prachimaskar <prachimaskar184@gmail.com>
Signed-off-by: prachimaskar <prachimaskar184@gmail.com>
Signed-off-by: prachimaskar <prachimaskar184@gmail.com>
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Pull request overview
Adds a CI safeguard to ensure any Containerfile/Dockerfile introduced under the repo’s build roots is represented in the container-build.yml matrix, preventing CI from silently skipping new container builds.
Changes:
- Introduces a Python checker script to discover Containerfile/Dockerfile paths and validate they have matching
contextentries in.github/workflows/container-build.yml. - Adds a repo-root
.container-build-ignoremechanism to exclude intentionally unbuilt contexts. - Adds a dedicated GitHub Actions workflow plus unit tests under
.github/scripts/.
Reviewed changes
Copilot reviewed 4 out of 6 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
.github/workflows/container-build-matrix-check.yml |
New workflow to run the matrix validation and script unit tests on relevant PR changes. |
.github/scripts/check_container_build_matrix/check_container_build_matrix.py |
Core discovery/parsing/checking logic + CLI and output formatting. |
.github/scripts/check_container_build_matrix/tests/test_check_container_build_matrix.py |
Unit/integration tests for discovery, parsing, ignore handling, and check results. |
.container-build-ignore |
New ignore file (initially documented, empty). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
.github/scripts/check_container_build_matrix/tests/test_check_container_build_matrix.py
Show resolved
Hide resolved
.github/scripts/check_container_build_matrix/check_container_build_matrix.py
Show resolved
Hide resolved
.github/scripts/check_container_build_matrix/check_container_build_matrix.py
Show resolved
Hide resolved
.github/scripts/check_container_build_matrix/check_container_build_matrix.py
Show resolved
Hide resolved
|
/ok-to-test |
Signed-off-by: prachimaskar <prachimaskar184@gmail.com>
|
Hi @HumairAK, |
Description of your changes
Implements the CI check proposed in #119.
.github/scripts/check_container_build_matrix/script thatrecursively discovers all Containerfile/Dockerfile paths under
components/,pipelines/, anddocs/examples/, and validateseach has a matching context entry in
container-build.yml.container-build-ignorefile at repo root for excludingpaths not intended to be built by CI (e.g. local-dev only)
.github/workflows/container-build-matrix-check.ymlworkflowthat triggers on PRs touching
**/Containerfile,**/Dockerfile,or
container-build.yml.github/scripts/conventionsChecklist