CI: consolidate Rocky 8/9/10 workflows into single matrix-driven file#1857
CI: consolidate Rocky 8/9/10 workflows into single matrix-driven file#1857tuhaihe wants to merge 4 commits into
Conversation
Replace three separate Rocky Linux CI workflow files with one
matrix-driven workflow that runs build + test across Rocky 8, 9, 10.
Key changes:
- New file: .github/workflows/build-cloudberry-rocky.yml
- Remove: build-cloudberry.yml (Rocky 9), build-cloudberry-rocky8.yml,
build-cloudberry-rocky10.yml
- PR trigger: all three Rocky versions now run on every PR (was only
Rocky 9 before; Rocky 8/10 only triggered on push to main)
- Remove scheduled cron trigger (push + PR coverage is sufficient)
- Test matrix: union of all test suites across versions; every test
now runs on every Rocky version, including ic-recovery, ic-diskquota,
ic-orca-parallel, and gp_relsizes_stats
- Container images and --releasever now resolved dynamically via
matrix.rocky_version
- Artifact names consistently suffixed with -rocky${{ version }}
See: http://github.com/apache/cloudberry/discussions/1696
Assisted-by: Deepseek
|
Now it's ready to be reviewed. It will take a similar amount of time to run all tests compared to Rocky 8, 9, and 10 separately, but it will exceed ~10 minutes if some tests fail. I think it's not too long, so we can accept. cc @leborchuk PTAL. |
There was a problem hiding this comment.
Pull request overview
This PR updates the Rocky Linux CI to run build + install + test across Rocky 8/9/10 using a matrix approach, reducing duplication from having separate per-version workflow files.
Changes:
- Expands the existing Rocky workflow to run
build,rpm-install-test, andteston Rocky 8/9/10 via matrix-driven container images anddnf --releasever. - Builds a cross-joined test matrix so each test suite runs on each selected Rocky version.
- Removes the dedicated Rocky 8 and Rocky 10 workflow files.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| .github/workflows/build-cloudberry.yml | Consolidates Rocky 8/9/10 execution into a single workflow with per-version matrices and updated artifact naming. |
| .github/workflows/build-cloudberry-rocky8.yml | Deleted in favor of the consolidated Rocky workflow. |
| .github/workflows/build-cloudberry-rocky10.yml | Deleted in favor of the consolidated Rocky workflow. |
Comments suppressed due to low confidence (1)
.github/workflows/build-cloudberry.yml:787
- Same issue as the build job:
rocky_version: [8, 9, 10]defines numeric values, but the job name expression comparesmatrix.rocky_versionto the string'9', so the conditional name won’t trigger.
strategy:
fail-fast: false
matrix:
rocky_version: [8, 9, 10]
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Is it possible to write step names in the same format? I mean I see in CI But want to see I understand that |
Oh, see it for match with '.asf.yaml' settings - let's stay it as-is |
leborchuk
left a comment
There was a problem hiding this comment.
LGTM
See the overall status like
[Build RPM (Rocky 8) summary](https://github.com/apache/cloudberry/actions/runs/29888943375#summary-88825366080)
Build Job Summary (Rocky 8)
Environment
Start Time: 2026-07-22 03:40:13 UTC
ENABLE_DEBUG: false
OS Version: Rocky Linux release 8.10 (Green Obsidian)
GCC Version: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28)
Build Results
End Time: 2026-07-22 03:50:48 UTC
[Job summary generated at run-time](https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary)
[Build Apache Cloudberry RPM summary](https://github.com/apache/cloudberry/actions/runs/29888943375#summary-88825366052)
Build Job Summary (Rocky 9)
Environment
Start Time: 2026-07-22 03:43:42 UTC
ENABLE_DEBUG: false
OS Version: Rocky Linux release 9.7 (Blue Onyx)
GCC Version: gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-11)
Build Results
End Time: 2026-07-22 03:52:37 UTC
[Job summary generated at run-time](https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary)
[Build RPM (Rocky 10) summary](https://github.com/apache/cloudberry/actions/runs/29888943375#summary-88825366076)
Build Job Summary (Rocky 10)
Environment
Start Time: 2026-07-22 03:41:17 UTC
ENABLE_DEBUG: false
OS Version: Rocky Linux release 10.1 (Red Quartz)
GCC Version: gcc (GCC) 14.3.1 20250617 (Red Hat 14.3.1-2)
Build Results
End Time: 2026-07-22 03:54:12 UTC
Replace three separate Rocky Linux CI workflow files with one matrix-driven workflow that runs build + test across Rocky 8, 9, 10.
Key changes:
See: http://github.com/apache/cloudberry/discussions/1696
Assisted-by: Deepseek
Fixes #ISSUE_Number
What does this PR do?
Type of Change
Breaking Changes
Test Plan
make installcheckmake -C src/test installcheck-cbdb-parallelImpact
Performance:
User-facing changes:
Dependencies:
Checklist
Additional Context
CI Skip Instructions