Skip to content

CI: consolidate Ubuntu 22.04/24.04 workflows into single matrix-drive…#1859

Open
tuhaihe wants to merge 2 commits into
apache:mainfrom
tuhaihe:refactor-ci-ubuntu2607
Open

CI: consolidate Ubuntu 22.04/24.04 workflows into single matrix-drive…#1859
tuhaihe wants to merge 2 commits into
apache:mainfrom
tuhaihe:refactor-ci-ubuntu2607

Conversation

@tuhaihe

@tuhaihe tuhaihe commented Jul 21, 2026

Copy link
Copy Markdown
Member

…n file

Replace two separate Ubuntu DEB CI workflow files with one matrix-driven workflow that runs build + test across Ubuntu 22.04 and 24.04.

Key changes:

  • Rewrite: .github/workflows/build-deb-cloudberry.yml
  • Remove: build-deb-cloudberry-ubuntu24.04.yml
  • PR trigger: both Ubuntu versions now run on every PR (was only 22.04 before; 24.04 only triggered on push to main)
  • Remove scheduled cron trigger (push + PR coverage is sufficient)
  • Build/deb-install-test jobs use strategy.matrix.ubuntu_version ['22.04', '24.04']; test-deb job receives ubuntu_version via prepare-test-matrix-deb cross-product expansion
  • Container images dynamically resolved via matrix.ubuntu_version (cbdb-build-ubuntu${version}-latest)
  • Job naming: Ubuntu 22.04 keeps original names (no suffix) for .asf.yaml compatibility; Ubuntu 24.04 appends "(Ubuntu 24.04)"
  • Artifact names consistently suffixed with -ubuntu${version}
  • Fix: remove broken matrix.name reference in deb-install-test artifact upload (was referencing a non-existent matrix axis)

See: http://github.com/apache/cloudberry/discussions/1696
Assisted-by: DeepSeek

Fixes #ISSUE_Number

What does this PR do?

Type of Change

  • Bug fix (non-breaking change)
  • New feature (non-breaking change)
  • Breaking change (fix or feature with breaking changes)
  • Documentation update

Breaking Changes

Test Plan

  • Unit tests added/updated
  • Integration tests added/updated
  • Passed make installcheck
  • Passed make -C src/test installcheck-cbdb-parallel

Impact

Performance:

User-facing changes:

Dependencies:

Checklist

Additional Context

CI Skip Instructions


@tuhaihe
tuhaihe force-pushed the refactor-ci-ubuntu2607 branch from b657c0d to 1f89492 Compare July 21, 2026 06:49
…n file

Replace two separate Ubuntu DEB CI workflow files with one
matrix-driven workflow that runs build + test across Ubuntu
22.04 and 24.04.

Key changes:
- Rewrite: .github/workflows/build-deb-cloudberry.yml
- Remove: build-deb-cloudberry-ubuntu24.04.yml
- PR trigger: both Ubuntu versions now run on every PR (was only
  22.04 before; 24.04 only triggered on push to main)
- Remove scheduled cron trigger (push + PR coverage is sufficient)
- Build/deb-install-test jobs use strategy.matrix.ubuntu_version
  ['22.04', '24.04']; test-deb job receives ubuntu_version via
  prepare-test-matrix-deb cross-product expansion
- Container images dynamically resolved via
  matrix.ubuntu_version (cbdb-build-ubuntu${version}-latest)
- Job naming: Ubuntu 22.04 keeps original names (no suffix) for
  .asf.yaml compatibility; Ubuntu 24.04 appends "(Ubuntu 24.04)"
- Artifact names consistently suffixed with -ubuntu${version}
- Fix: remove broken matrix.name reference in deb-install-test
  artifact upload (was referencing a non-existent matrix axis)

See: http://github.com/apache/cloudberry/discussions/1696
Assisted-by: DeepSeek
@tuhaihe
tuhaihe force-pushed the refactor-ci-ubuntu2607 branch from 1f89492 to 0205b94 Compare July 21, 2026 07:04
@tuhaihe
tuhaihe marked this pull request as ready for review July 23, 2026 09:24
@tuhaihe

tuhaihe commented Jul 23, 2026

Copy link
Copy Markdown
Member Author

Now it's ready to be reviewed. It will take a similar amount of time to run all tests compared to Ubuntu 22.4/24.04 separately, but it also will exceed ~10 minutes if some tests fail. I think it's not too long, so we can accept.

cc @leborchuk PTAL.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Consolidates the DEB CI workflows for Ubuntu 22.04 and 24.04 into a single matrix-driven GitHub Actions workflow, so both Ubuntu versions run build + install tests + test matrix consistently on PRs and pushes.

Changes:

  • Adds an ubuntu_version workflow_dispatch input and expands the test matrix to cross-join selected tests with selected Ubuntu versions.
  • Converts build-deb, deb-install-test, and test-deb to use strategy.matrix.ubuntu_version and version-suffixed artifact naming.
  • Removes the dedicated Ubuntu 24.04 workflow file.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
.github/workflows/build-deb-cloudberry.yml Converts the DEB CI pipeline to a single workflow using an Ubuntu-version matrix and consistent per-version artifact naming.
.github/workflows/build-deb-cloudberry-ubuntu24.04.yml Removes the standalone Ubuntu 24.04 workflow after consolidating into the matrix workflow.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/build-deb-cloudberry.yml
Comment thread .github/workflows/build-deb-cloudberry.yml
Comment thread .github/workflows/build-deb-cloudberry.yml

@leborchuk leborchuk left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, now we have a single workflow, tests output is

Build Job Summary
Environment
Start Time: 2026-07-21 07:08:13 UTC
ENABLE_DEBUG: false
OS Version: Ubuntu 22.04.5 LTS
GCC Version: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0
Build Results
End Time: 2026-07-21 07:21:13 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 DEB (Ubuntu 24.04) summary](https://github.com/apache/cloudberry/actions/runs/29809085294?pr=1859#summary-88565963850)
Build Job Summary
Environment
Start Time: 2026-07-21 07:07:18 UTC
ENABLE_DEBUG: false
OS Version: Ubuntu 24.04.4 LTS
GCC Version: gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0
Build Results
End Time: 2026-07-21 07:19:46 UTC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants