Build and Check #176
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently t
6B41
han what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and Check | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
schedule: | |
- cron: '0 0 * * 5' | |
jobs: | |
build_and_test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
pg_version: [10, 11, 12, 13, 14, 15, 16, 17] | |
use_healpix: [0, 1] | |
name: PostgreSQL ${{ matrix.pg_version }} - USE_HEALPIX=${{ matrix.use_healpix }} | |
steps: | |
- name: Install dependencies | |
run: | | |
sudo apt update && sudo apt install -y \ | |
postgresql-common \ | |
libhealpix-cxx-dev \ | |
docbook-xml \ | |
docbook-xsl \ | |
libxml2-utils \ | |
xsltproc \ | |
fop | |
- name: Install PostgreSQL | |
run: sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh -p -v ${{ matrix.pg_version }} -i | |
- name: Clone pgSphere | |
uses: actions/checkout@v4 | |
- name: Set MAKE_CMD variable | |
run: echo "MAKE_CMD=make --keep-going -j$(nproc) -l$(nproc) -O" >> $GITHUB_ENV | |
- name: Build pgSphere | |
run: ${MAKE_CMD} PROFILE="-Werror -Wall" USE_HEALPIX=${{ matrix.use_healpix }} | |
- name: make test | |
run: pg_virtualenv ${MAKE_CMD} USE_HEALPIX=${{ matrix.use_healpix }} test | |
- name: Show test regression.diffs | |
if: ${{ failure() }} | |
run: cat regression.diffs | |
- name: Install pgSphere | |
run: sudo ${MAKE_CMD} USE_HEALPIX=${{ matrix.use_healpix }} install | |
- name: make installcheck | |
run: pg_virtualenv ${MAKE_CMD} USE_HEALPIX=${{ matrix.use_healpix }} installcheck | |
- name: Show installcheck regression.diffs | |
if: ${{ failure() }} | |
run: cat regression.diffs | |
- name: make crushtest | |
run: pg_virtualenv ${MAKE_CMD} USE_HEALPIX=${{ matrix.use_healpix }} crushtest | |
- name: Show crushtest regression.diffs | |
if: ${{ failure() }} | |
run: cat regression.diffs | |
- name: Build docs | |
run: ${MAKE_CMD} -C doc | |
- name: Inject slug/short variables | |
uses: rlespinasse/github-slug-action@v4 | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v4 | |
if: success() || failure() | |
with: | |
name: ${{ env.GITHUB_REF_SLUG_URL }}-pg${{ matrix.pg_version }}-use-healpix-${{ matrix.use_healpix }}-${{ github.run_id }} | |
if-no-files-found: ignore | |
path: | | |
./**/*.log | |
./**/*.diffs |