Skip to content

Commit

Permalink
Add CI workflow for PG17
Browse files Browse the repository at this point in the history
  • Loading branch information
artemgavrilov committed Jul 4, 2024
1 parent 04043fb commit 1a80932
Showing 1 changed file with 78 additions and 0 deletions.
78 changes: 78 additions & 0 deletions .github/workflows/postgresql-17-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
name: postgresql-17-build
on: [push]

jobs:
build:
name: pg-17-build-test
runs-on: ubuntu-22.04
steps:
- name: Clone postgres repository
uses: actions/checkout@v4
with:
repository: 'postgres/postgres'
path: postgres
ref: 'REL_17_BETA2'

- name: Install dependencies
run: |
sudo apt-get update
sudo apt purge postgresql-client-common postgresql-common \
postgresql postgresql*
sudo apt-get install -y libreadline6-dev systemtap-sdt-dev \
zlib1g-dev libssl-dev libpam0g-dev bison flex \
libipc-run-perl docbook-xsl docbook-xsl libxml2 libxml2-utils \
libxml2-dev libxslt-dev xsltproc libkrb5-dev libldap2-dev \
libsystemd-dev gettext tcl-dev libperl-dev pkg-config clang-11 \
llvm-11 llvm-11-dev libselinux1-dev python3-dev uuid-dev liblz4-dev
sudo rm -rf /var/lib/postgresql /var/log/postgresql /etc/postgresql \
/usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql \
/etc/postgresql
sudo rm -f /usr/bin/pg_config
- name: Build postgres
run: |
export PATH="/opt/pgsql/bin:$PATH"
./configure \
'--enable-debug' \
'CFLAGS=-O0 -g3' \
--enable-cassert \
--enable-tap-tests \
--without-icu
make -j4
working-directory: postgres

- name: Clone percona_pg_telemetry repository
uses: actions/checkout@v4
with:
path: 'postgres/contrib/percona_pg_telemetry'

- name: Build percona_pg_telemetry
run: |
make
sudo make install
working-directory: postgres/contrib/percona_pg_telemetry

- name: Run percona_pg_telemetry regression
run: |
PT_DEBUG=1 make check
working-directory: postgres/contrib/percona_pg_telemetry

- name: Upload logs on fail
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: Regressions diff and postgresql log
path: |
postgres/contrib/percona_pg_telemetry/regression.diffs
postgres/contrib/percona_pg_telemetry/regression.out
postgres/contrib/percona_pg_telemetry/logfile
postgres/contrib/percona_pg_telemetry/t/results/
postgres/contrib/percona_pg_telemetry/tmp_check/log/
!postgres/contrib/percona_pg_telemetry/tmp_check/**/archives/*
!postgres/contrib/percona_pg_telemetry/tmp_check/**/backup/*
!postgres/contrib/percona_pg_telemetry/tmp_check/**/pgdata/*
!postgres/contrib/percona_pg_telemetry/tmp_check/**/archives/
!postgres/contrib/percona_pg_telemetry/tmp_check/**/backup/
!postgres/contrib/percona_pg_telemetry/tmp_check/**/pgdata/
if-no-files-found: warn
retention-days: 3

0 comments on commit 1a80932

Please sign in to comment.