Skip to content

Improve coverage

Improve coverage #448

Workflow file for this run

name: Linux
on:
push:
paths-ignore:
- 'README.md'
- 'doc/**'
pull_request:
paths-ignore:
- 'README.md'
- 'doc/**'
jobs:
linux:
strategy:
fail-fast: false
matrix:
compiler:
- g++-9
- g++-10
- g++-11
- g++-12
- g++-13
- clang++-13
- clang++-14
- clang++-15
build_type: [Debug, Release]
runs-on: ubuntu-latest
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-old:
strategy:
fail-fast: false
matrix:
compiler:
- g++-8
- clang++-8
- clang++-9
- clang++-10
- clang++-11
- clang++-12
build_type: [Debug, Release]
runs-on: ubuntu-20.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 postgresql-server-dev-all ${{ matrix.compiler }}
- 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-latest
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: ["-fms-extensions"]
build_type: [Debug, Release]
runs-on: ubuntu-latest
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
- 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