Feature: modernize CI/CD with GitHub Actions

Replaced Concourse CI with GitHub Actions and upgraded to Go 1.25.

CI/CD Changes:
- Migrated from Concourse (ci/pipeline.yml) to GitHub Actions
- Added pipeline.yml with matrix strategy for parallel test/build
- Added code-check.yml for lint checks using native Go tools
- Added step summaries with test results and coverage reports
- Configured workflows for main branch and PR events

Go 1.25 Compatibility:
- Updated go.mod, Makefile, and workflows to Go 1.25
- Fixed format string errors in gplog calls with "%s" specifiers
- Fixed timeout test flakiness in cluster_test.go

Linting Improvements:
- Migrated .golangci.yml to v2 format (version, formats map)
- Simplified Makefile to use go install instead of Docker
- Fixed lint issues: errcheck, govet inline, unused symbols
- Aligned linter config with cloudberry-backup project conventions
12 files changed
tree: 62d8aa5340391b8c2ac3e29601e24744a5806461
  1. .github/
  2. cluster/
  3. conv/
  4. dbconn/
  5. gperror/
  6. gplog/
  7. iohelper/
  8. operating/
  9. structmatcher/
  10. testhelper/
  11. .asf.yaml
  12. .gitignore
  13. .golangci.yml
  14. CODE_OF_CONDUCT.md
  15. CONTRIBUTING.md
  16. go.mod
  17. go.sum
  18. LICENSE
  19. Makefile
  20. NOTICE
  21. README.md
  22. SECURITY.md
  23. show_coverage.sh
README.md

go-libs for Apache Cloudberry (Incubating)

Slack Twitter Follow Website


This project is a fork of the Greenplum gp-common-go-libs, which is a dependency for the gpbackup utility in Cloudberry.

Please note that this repository is only maintained for Cloudberry 1.0 and its later versions.

License

Licensed under Apache License Version 2.0. For more details, please refer to the LICENSE.

Acknowledgment

Thanks to all the gp-common-go-libs contributors, more details in its GitHub page.