Files
openstreetmap-mod_tile-pyth…/.github/workflows/coverage.yml
Hummeltech c31d526441 Cleaning up CTest tests (#393)
* Improve service startup "tests"
* Address intermittent download test failure
  * Caused by load exceeding threshold
* Add more missing bad HTTPD config tests
* Allow for newer `libpng` with Docker tests
  * Also test more image/file types
2024-02-20 19:52:57 -07:00

82 lines
2.0 KiB
YAML

---
name: Coverage
on:
pull_request:
push:
branches:
- develop
- master
- "*CI"
jobs:
Coverage:
name: >-
Build, Test & Report Coverage
${{ matrix.mapnik_latest && '(Latest Mapnik)' || '' }}
runs-on: ubuntu-latest
env:
BUILD_TYPE: Debug
CFLAGS: --coverage
CXXFLAGS: --coverage
strategy:
matrix:
compiler:
- GNU
mapnik_latest:
- false
- true
fail-fast: false
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install dependencies
uses: ./.github/actions/dependencies/install
with:
ubuntu-mapnik-latest-build-dependencies: >-
cmake
git
libboost-program-options-dev
libboost-regex-dev
libfreetype6-dev
libgdal-dev
libharfbuzz-dev
libicu-dev
libjpeg-dev
libpq-dev
libproj-dev
libsqlite3-dev
libtiff-dev
libwebp-dev
libxml2-dev
- name: Stop `memcached` service
run: |
sudo systemctl stop memcached
- name: Build `mod_tile`
uses: ./.github/actions/cmake/build
- name: Test `mod_tile`
uses: ./.github/actions/cmake/test
- name: Process & Report `mod_tile` coverage results
uses: ./.github/actions/coverage
- name: Write coverage summary to `$GITHUB_STEP_SUMMARY`
run: lcov --summary build/coverage.info | sed 's/^ /* /g' >> ${GITHUB_STEP_SUMMARY}
- name: Generate `mod_tile` coverage results artifact
run: |
genhtml coverage.info --output-directory coverage
working-directory: build
- name: Upload `mod_tile` coverage results artifact
uses: actions/upload-artifact@v4
with:
name: Coverage Results - ${{ matrix.mapnik_latest && 'mapnik_latest' || 'mapnik' }}
path: |
build/coverage
build/coverage.info