PG-477: Install perl modules in PGSM-PG12 Build workflow. (#292)

Perl tap tests dependencies were missing, those are being installed now.
Furthermore, workflow required some changes to enable logs to be available in
in case of a tap tests failure(s).
pull/294/head
Naeem Akhter 2022-08-18 14:50:43 +05:00 committed by GitHub
parent 63bc740a20
commit 2069139795
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 78 additions and 9 deletions

View File

@ -27,6 +27,9 @@ jobs:
/usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql \ /usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql \
/etc/postgresql /etc/postgresql
sudo rm -f /usr/bin/pg_config sudo rm -f /usr/bin/pg_config
sudo /usr/bin/perl -MCPAN -e 'install IPC::RUN'
sudo /usr/bin/perl -MCPAN -e 'install String::Util'
sudo /usr/bin/perl -MCPAN -e 'install Data::Str2Num'
- name: Create pgsql dir - name: Create pgsql dir
run: mkdir -p /opt/pgsql run: mkdir -p /opt/pgsql
@ -95,20 +98,38 @@ jobs:
make installcheck make installcheck
working-directory: src/pg_stat_monitor working-directory: src/pg_stat_monitor
- name: Report on pg_stat_monitor test fail - name: Change dir permissions on fail
uses: actions/upload-artifact@v2
if: ${{ failure() }} if: ${{ failure() }}
run: |
sudo chmod -R ugo+rwx t
sudo chmod -R ugo+rwx tmp_check
exit 2 # regenerate error so that we can upload files in next step
working-directory: src/pg_stat_monitor
- name: Upload logs on fail
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with: with:
name: Regressions diff and postgresql log name: Regressions diff and postgresql log
path: | path: |
src/pg_stat_monitor/regression.diffs src/pg_stat_monitor/regression.diffs
src/pg_stat_monitor/regression.out
src/pg_stat_monitor/logfile src/pg_stat_monitor/logfile
retention-days: 1 src/pg_stat_monitor/t/results/
src/pg_stat_monitor/tmp_check/log/
!src/pg_stat_monitor/tmp_check/**/archives/*
!src/pg_stat_monitor/tmp_check/**/backup/*
!src/pg_stat_monitor/tmp_check/**/pgdata/*
!src/pg_stat_monitor/tmp_check/**/archives/
!src/pg_stat_monitor/tmp_check/**/backup/
!src/pg_stat_monitor/tmp_check/**/pgdata/
if-no-files-found: warn
retention-days: 3
- name: Start Server installcheck-world tests - name: Start Server installcheck-world tests
run: | run: |
make installcheck-world make installcheck-world
- name: Report on installcheck-world test suites fail - name: Report on installcheck-world test suites fail
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
if: ${{ failure() }} if: ${{ failure() }}
@ -118,4 +139,4 @@ jobs:
**/regression.diffs **/regression.diffs
**/regression.out **/regression.out
src/pg_stat_monitor/logfile src/pg_stat_monitor/logfile
retention-days: 3 retention-days: 3

View File

@ -16,10 +16,16 @@ jobs:
sudo apt-get update sudo apt-get update
sudo apt purge postgresql-client-common postgresql-common \ sudo apt purge postgresql-client-common postgresql-common \
postgresql postgresql* postgresql postgresql*
sudo apt-get install -y libreadline6-dev systemtap-sdt-dev \
zlib1g-dev libssl-dev libpam0g-dev python3-dev bison flex \
libipc-run-perl wget -y
sudo rm -rf /var/lib/postgresql /var/log/postgresql /etc/postgresql \ sudo rm -rf /var/lib/postgresql /var/log/postgresql /etc/postgresql \
/usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql \ /usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql \
/etc/postgresql /etc/postgresql
sudo rm -f /usr/bin/pg_config sudo rm -f /usr/bin/pg_config
sudo /usr/bin/perl -MCPAN -e 'install IPC::RUN'
sudo /usr/bin/perl -MCPAN -e 'install String::Util'
sudo /usr/bin/perl -MCPAN -e 'install Data::Str2Num'
- name: Install PG Distribution Postgresql 12 - name: Install PG Distribution Postgresql 12
run: | run: |
@ -51,12 +57,30 @@ jobs:
sudo -u postgres bash -c 'make installcheck USE_PGXS=1' sudo -u postgres bash -c 'make installcheck USE_PGXS=1'
working-directory: src/pg_stat_monitor working-directory: src/pg_stat_monitor
- name: Report on test fail - name: Change dir permissions on fail
uses: actions/upload-artifact@v2
if: ${{ failure() }} if: ${{ failure() }}
run: |
sudo chmod -R ugo+rwx t
sudo chmod -R ugo+rwx tmp_check
exit 2 # regenerate error so that we can upload files in next step
working-directory: src/pg_stat_monitor
- name: Upload logs on fail
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with: with:
name: Regressions diff and postgresql log name: Regressions diff and postgresql log
path: | path: |
src/pg_stat_monitor/regression.diffs src/pg_stat_monitor/regression.diffs
src/pg_stat_monitor/regression.out
src/pg_stat_monitor/logfile src/pg_stat_monitor/logfile
src/pg_stat_monitor/t/results/
src/pg_stat_monitor/tmp_check/log/
!src/pg_stat_monitor/tmp_check/**/archives/*
!src/pg_stat_monitor/tmp_check/**/backup/*
!src/pg_stat_monitor/tmp_check/**/pgdata/*
!src/pg_stat_monitor/tmp_check/**/archives/
!src/pg_stat_monitor/tmp_check/**/backup/
!src/pg_stat_monitor/tmp_check/**/pgdata/
if-no-files-found: warn
retention-days: 3 retention-days: 3

View File

@ -19,10 +19,16 @@ jobs:
sudo apt-get install -y libreadline6-dev systemtap-sdt-dev \ sudo apt-get install -y libreadline6-dev systemtap-sdt-dev \
zlib1g-dev libssl-dev libpam0g-dev python3-dev bison flex \ zlib1g-dev libssl-dev libpam0g-dev python3-dev bison flex \
libipc-run-perl wget libipc-run-perl wget
sudo apt-get install -y libreadline6-dev systemtap-sdt-dev \
zlib1g-dev libssl-dev libpam0g-dev python3-dev bison flex \
libipc-run-perl wget
sudo rm -rf /var/lib/postgresql /var/log/postgresql /etc/postgresql \ sudo rm -rf /var/lib/postgresql /var/log/postgresql /etc/postgresql \
/usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql \ /usr/lib/postgresql /usr/include/postgresql /usr/share/postgresql \
/etc/postgresql /etc/postgresql
sudo rm -f /usr/bin/pg_config sudo rm -f /usr/bin/pg_config
sudo /usr/bin/perl -MCPAN -e 'install IPC::RUN'
sudo /usr/bin/perl -MCPAN -e 'install String::Util'
sudo /usr/bin/perl -MCPAN -e 'install Data::Str2Num'
- name: Install percona-release script - name: Install percona-release script
run: | run: |
@ -60,12 +66,30 @@ jobs:
sudo -u postgres bash -c 'make installcheck USE_PGXS=1' sudo -u postgres bash -c 'make installcheck USE_PGXS=1'
working-directory: src/pg_stat_monitor working-directory: src/pg_stat_monitor
- name: Report on test fail - name: Change dir permissions on fail
uses: actions/upload-artifact@v2
if: ${{ failure() }} if: ${{ failure() }}
run: |
sudo chmod -R ugo+rwx t
sudo chmod -R ugo+rwx tmp_check
exit 2 # regenerate error so that we can upload files in next step
working-directory: src/pg_stat_monitor
- name: Upload logs on fail
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with: with:
name: Regressions diff and postgresql log name: Regressions diff and postgresql log
path: | path: |
src/pg_stat_monitor/regression.diffs src/pg_stat_monitor/regression.diffs
src/pg_stat_monitor/regression.out
src/pg_stat_monitor/logfile src/pg_stat_monitor/logfile
src/pg_stat_monitor/t/results/
src/pg_stat_monitor/tmp_check/log/
!src/pg_stat_monitor/tmp_check/**/archives/*
!src/pg_stat_monitor/tmp_check/**/backup/*
!src/pg_stat_monitor/tmp_check/**/pgdata/*
!src/pg_stat_monitor/tmp_check/**/archives/
!src/pg_stat_monitor/tmp_check/**/backup/
!src/pg_stat_monitor/tmp_check/**/pgdata/
if-no-files-found: warn
retention-days: 3 retention-days: 3