Skip to content

Commit

Permalink
ci: add core Apache Cloudberry (incubating) build and test workflow (a…
Browse files Browse the repository at this point in the history
…pache#714)

Introduces foundational GitHub Actions workflow for Apache
Cloudberry (incubating) CI:

- Multi-stage build pipeline with skip detection
- Rocky Linux 9 containerized build environment
- RPM packaging and source tarball generation
- Installation verification
- Test matrix for core regression tests
  (subset starting point)
- Detailed test result parsing and reporting
- Comprehensive artifact management

The workflow provides:
- Clean build environment for each run
- Consistent test execution framework
- Automated installation testing
- Test result aggregation
- Clear job dependencies and progression
- Flexible CI skip mechanisms

Due to inconsistent test runs, disable the following from
greenplum_schedule:
- cbdb_parallel
- instr_in_shmem_verify

This commit establishes the initial CI pipeline for Apache Cloudberry
(incubating) with future test matrix expansion planned.
  • Loading branch information
edespino authored Nov 20, 2024
1 parent 2818d83 commit 22856f4
Show file tree
Hide file tree
Showing 5 changed files with 1,150 additions and 416 deletions.
63 changes: 37 additions & 26 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,49 @@
<!--Thank you for contributing!-->
<!--In case of an existing issue or discussions, please reference it-->
fix #ISSUE_Number
<!--Remove this section if no corresponding issue.-->
<!-- Thank you for your contribution to Apache Cloudberry (incubating)! -->

---

### Change logs
Fixes #ISSUE_Number

_Describe your change clearly, including what problem is being solved or what feature is being added._
### What does this PR do?
<!-- Brief overview of the changes, including any major features or fixes -->

_If it has some breaking backward or forward compatibility, please clary._
### Type of Change
- [ ] Bug fix (non-breaking change)
- [ ] New feature (non-breaking change)
- [ ] Breaking change (fix or feature with breaking changes)
- [ ] Documentation update

### Why are the changes needed?
### Breaking Changes
<!-- Remove if not applicable. If yes, explain impact and migration path -->

_Describe why the changes are necessary._
### Test Plan
<!-- How did you test these changes? -->
- [ ] Unit tests added/updated
- [ ] Integration tests added/updated
- [ ] Passed `make installcheck`
- [ ] Passed `make -C src/test installcheck-cbdb-parallel`

### Does this PR introduce any user-facing change?
### Impact
<!-- Remove sections that don't apply -->
**Performance:**
<!-- Any performance implications? -->

_If yes, please clarify the previous behavior and the change this PR proposes._
**User-facing changes:**
<!-- Any changes visible to users? -->

### How was this patch tested?
**Dependencies:**
<!-- New dependencies or version changes? -->

_Please detail how the changes were tested, including manual tests and any relevant unit or integration tests._
### Checklist
- [ ] Followed [contribution guide](https://cloudberry.apache.org/contribute/code)
- [ ] Added/updated documentation
- [ ] Reviewed code for security implications
- [ ] Requested review from [cloudberry committers](https://github.com/orgs/apache/teams/cloudberry-committers)

### Contributor's Checklist
### Additional Context
<!-- Any other information that would help reviewers? Remove if none -->

Here are some reminders and checklists before/when submitting your pull request, please check them:
⚠️ **To skip CI:** Add `[skip ci]` to your PR title. Only use when necessary! ⚠️

- [ ] Make sure your Pull Request has a clear title and commit message. You can take [git-commit](https://github.com/cloudberrydb/cloudberrydb/blob/main/.gitmessage) template as a reference.
- [ ] Sign the Contributor License Agreement as prompted for your first-time contribution(*One-time setup*).
- [ ] Learn the [coding contribution guide](https://cloudberrydb.org/contribute/code), including our code conventions, workflow and more.
- [ ] List your communication in the [GitHub Issues](https://github.com/cloudberrydb/cloudberrydb/issues) or [Discussions](https://github.com/orgs/cloudberrydb/discussions) (if has or needed).
- [ ] Document changes.
- [ ] Add tests for the change
- [ ] Pass `make installcheck`
- [ ] Pass `make -C src/test installcheck-cbdb-parallel`
- [ ] Feel free to request `cloudberrydb/dev` team for review and approval when your PR is ready🥳
---
<!-- Join our community:
- Mailing list: [[email protected]](https://lists.apache.org/[email protected]) (subscribe: [email protected])
- Discussions: https://github.com/apache/cloudberry/discussions -->
Loading

0 comments on commit 22856f4

Please sign in to comment.