Skip to content

Update package.py 5.2.0 #389

Update package.py 5.2.0

Update package.py 5.2.0 #389

Workflow file for this run

# This is a CI workflow for the NCEPLIBS-ip project.
#
# This workflow builds with all developer options, including address
# sanitizer and code coverage.
#
# Ed Hartnett, 1/8/23
name: developer
on:
push:
branches:
- develop
pull_request:
branches:
- develop
jobs:
developer:
runs-on: ubuntu-latest
env:
FC: gfortran-13
CC: gcc-13
steps:
- name: Install Dependencies
run: |
sudo apt-get update
sudo apt-get install doxygen libopenblas-dev
python3 -m pip install gcovr==7.2
- name: checkout
uses: actions/checkout@v4
with:
path: ip
- name: Cache test files
uses: actions/cache@v4
with:
path: testfiles.tgz
key: NCEPLIBS-ip-test-files-1
- name: build
run: |
if [ ! -f testfiles.tgz ]; then wget https://ftp.emc.ncep.noaa.gov/static_files/public/NCEPLIBS-ip/ip-test-data-20241230.tgz -O testfiles.tgz ; fi
cmake -S ip -B ip/build -DENABLE_DOCS=YES -DOPENMP=ON -DCMAKE_Fortran_FLAGS="-g -fprofile-abs-path -fprofile-arcs -ftest-coverage -O0 -fsanitize=address" -DCMAKE_C_FLAGS="-g -fprofile-abs-path -fprofile-arcs -ftest-coverage -O0 -fsanitize=address" -DCMAKE_BUILD_TYPE=Debug -DBUILD_SHARED_LIBS=ON -DBUILD_8=ON -DFTP_TEST_FILES=ON -DTEST_FILES_CACHE=$GITHUB_WORKSPACE/testfiles.tgz
cmake --build ip/build --parallel 2 --verbose
- name: test
run: ctest --test-dir ip/build -j2 --verbose --output-on-failure --rerun-failed
- name: run-gcovr
run: gcovr -r ip -v --html-details --exclude ip/tests --exclude ip/build/CMakeFiles --print-summary -o test-coverage.html
- name: upload-test-coverage
uses: actions/upload-artifact@v4
with:
name: ip-test-coverage
path: |
*.html
*.css
- uses: actions/upload-artifact@v4
with:
name: docs
path: |
ip/build/docs/html