ci: Add GitHub Actions based CI Cirrus CI, which the project used for CI until now, has shut down on June 1, 2026. Replace it with GitHub Actions. GitHub Actions was selected because it has unlimited runner time for public repositories.
The GitHub Actions based CI currently covers: - SanityCheck - Linux - Autoconf - Linux - Meson, (32-bit and 64-bit) - macOS - Meson - Windows (Visual Studio + Meson and MinGW + Meson) - CompilerWarnings BSD coverage is left for later, as it requires more work. Note that, for performance reasons, use of address sanitizer was moved to the Linux - Meson (64-bit) task. While Actions workflows in new forks are disabled by default, existing forks that pull new changes into the repository will automatically start running CI. That may not be desired. There however is no way native to Actions to prevent this. To avoid that, each repository that wants real CI to run needs to explicitly opt into doing so, by creating the 'PG_CI_ENABLED' repository variable with the value 1. To make that less confusing, emit a summary whenever we skip running CI, with a message explaining how to enable CI. The remaining cirrus-ci support will be removed in a subsequent commit, to make review easier. Back-branches will be updated later, after being sure that workflow runs correctly on master. Author: Nazir Bilal Yavuz <[email protected]> Author: Andres Freund <[email protected]> Author: Jelte Fennema-Nio <[email protected]> Reviewed-by: Jacob Champion <[email protected]> Reviewed-by: Peter Eisentraut <[email protected]> Reviewed-by: Andres Freund <[email protected]> Reviewed-by: Zsolt Parragi <[email protected]> Discussion: https://postgr.es/m/3ydjipcr7kbss57nvi67noplncqhesl5eyb6wgol4ccjxynspv%40yatlykpribmm Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/9c126063b19adc53a0ce15ac1ae1a70979e3c12e Modified Files -------------- .github/workflows/pg-ci.yml | 1217 ++++++++++++++++++++++++++++++++++ src/tools/ci/README | 92 ++- src/tools/ci/ci_macports_packages.sh | 22 +- 3 files changed, 1272 insertions(+), 59 deletions(-)
