Skip to content

WIP: pipeline mode #571

WIP: pipeline mode

WIP: pipeline mode #571

Workflow file for this run

name: Linux
on:
push:
paths-ignore:
- 'README.md'
- 'doc/**'
pull_request:
paths-ignore:
- 'README.md'
- 'doc/**'
jobs:
linux-next:
strategy:
fail-fast: false
matrix:
compiler:
- g++-13
- g++-14
- clang++-16
- clang++-17
- clang++-18
build_type: [Debug, Release]
runs-on: ubuntu-24.04
services:
postgres:
image: postgres:latest
env:
POSTGRES_DB: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
ports:
- 5432:5432
# Set health checks to wait until postgres has started
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
CXX: ${{ matrix.compiler }}
TAOPQ_TEST_DATABASE: host=localhost dbname=postgres user=postgres password=postgres
steps:
- uses: actions/checkout@v4
- run: sudo apt-get update -yq
- run: sudo apt-get install -yq libpq-dev
- run: cmake -E make_directory build
- working-directory: build/
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
- working-directory: build/
run: cmake --build .
- working-directory: build/
run: ctest --output-on-failure
linux-gcc-extra:
strategy:
fail-fast: false
matrix:
flags: ["-D_GLIBCXX_USE_CXX11_ABI=0"]
build_type: [Debug, Release]
runs-on: ubuntu-24.04
services:
postgres:
image: postgres:latest
env:
POSTGRES_DB: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
ports:
- 5432:5432
# Set health checks to wait until postgres has started
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
CXX: g++
TAOPQ_TEST_DATABASE: host=localhost dbname=postgres user=postgres password=postgres
steps:
- uses: actions/checkout@v4
- run: sudo apt-get update -yq
- run: sudo apt-get install -yq libpq-dev
- run: cmake -E make_directory build
- working-directory: build/
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DCMAKE_CXX_FLAGS="${{ matrix.flags }}"
- working-directory: build/
run: cmake --build .
- working-directory: build/
run: ctest --output-on-failure
linux-clang-extra:
strategy:
fail-fast: false
matrix:
flags: ["-stdlib=libc++","-fms-extensions"]
build_type: [Debug, Release]
runs-on: ubuntu-24.04
services:
postgres:
image: postgres:latest
env:
POSTGRES_DB: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
ports:
- 5432:5432
# Set health checks to wait until postgres has started
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
CXX: clang++
TAOPQ_TEST_DATABASE: host=localhost dbname=postgres user=postgres password=postgres
steps:
- uses: actions/checkout@v4
- run: sudo apt-get update -yq
- run: sudo apt-get install -yq libpq-dev libc++-dev
- run: cmake -E make_directory build
- working-directory: build/
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DCMAKE_CXX_FLAGS="${{ matrix.flags }}"
- working-directory: build/
run: cmake --build .
- working-directory: build/
run: ctest --output-on-failure