From 3ab2ed4bf3cf006a863f6464783c1144962a177a Mon Sep 17 00:00:00 2001 From: Edward Hartnett <38856240+edwardhartnett@users.noreply.github.com> Date: Tue, 21 Jan 2025 13:34:39 -0700 Subject: [PATCH] adding docs workflow (#804) * adding docs workflow * adding docs workflow * adding docs workflow * adding docs workflow --- .github/workflows/developer.yml | 8 ++--- .github/workflows/docs.yml | 61 +++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/docs.yml diff --git a/.github/workflows/developer.yml b/.github/workflows/developer.yml index 67e3e047..8dce4ebf 100644 --- a/.github/workflows/developer.yml +++ b/.github/workflows/developer.yml @@ -28,7 +28,7 @@ jobs: strategy: fail-fast: true matrix: - config: ["asan/warning check", "docs/code coverage"] + config: ["asan/warning check", "code coverage"] steps: @@ -72,14 +72,14 @@ jobs: ctest --verbose --output-on-failure --rerun-failed - name: build - if: matrix.config == 'docs/code coverage' + if: matrix.config == 'code coverage' run: | set -x cd g2 mkdir build doxygen --version cd build - cmake -DUSE_G2C_API=ON -DBUILD_UTILS=ON -DUSE_AEC=ON -DFTP_LARGE_TEST_FILES=ON -DENABLE_DOCS=ON -DCMAKE_PREFIX_PATH="$GITHUB_WORKSPACE/nceplibs/jasper;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-bacio;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-w3emc;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-ip;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-g2c" -DCMAKE_Fortran_FLAGS="-g -fprofile-abs-path -fprofile-arcs -ftest-coverage -O0" -DCMAKE_C_FLAGS="-g -fprofile-abs-path -fprofile-arcs -ftest-coverage -O0" -DFTP_TEST_FILES=ON -DTEST_FILE_DIR=/home/runner/data .. + cmake -DUSE_G2C_API=ON -DBUILD_UTILS=ON -DUSE_AEC=ON -DFTP_LARGE_TEST_FILES=ON -DCMAKE_PREFIX_PATH="$GITHUB_WORKSPACE/nceplibs/jasper;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-bacio;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-w3emc;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-ip;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-g2c" -DCMAKE_Fortran_FLAGS="-g -fprofile-abs-path -fprofile-arcs -ftest-coverage -O0" -DCMAKE_C_FLAGS="-g -fprofile-abs-path -fprofile-arcs -ftest-coverage -O0" -DFTP_TEST_FILES=ON -DTEST_FILE_DIR=/home/runner/data .. make -j2 VERBOSE=1 ctest --verbose --output-on-failure --rerun-failed gcovr --root .. -v --html-details --exclude ../tests --exclude CMakeFiles --print-summary -o test-coverage.html &> /dev/null @@ -91,7 +91,7 @@ jobs: cp $GITHUB_WORKSPACE/g2/build/tests/data/* ~/data - name: upload-test-coverage - if: matrix.config == 'docs/code coverage' + if: matrix.config == 'code coverage' uses: actions/upload-artifact@v4 with: name: g2-test-coverage diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 00000000..261b1d2b --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,61 @@ +# This is a GitHub actions workflow for NCEPLIBS-g2. +# +# This builds the develop branch with documentation. +# +# Ed Hartnett, 1/21/25 +name: docs +on: + push: + branches: + - develop + pull_request: + branches: + - develop + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + docs: + runs-on: ubuntu-latest + env: + FC: gfortran + CC: gcc + LD_LIBRARY_PATH: /home/runner/work/NCEPLIBS-g2/NCEPLIBS-g2/nceplibs/jasper/lib/ + + strategy: + fail-fast: true + + steps: + + - name: install-dependencies + run: | + sudo apt-get update + sudo apt-get install libpng-dev zlib1g-dev libjpeg-dev libblas-dev liblapack-dev libaec-dev doxygen + + - name: "Build dependencies" + uses: NOAA-EMC/ci-build-nceplibs@develop + with: + bacio-version: develop + w3emc-version: develop + jasper-version: version-4.0.0 + w3emc-cmake-args: -DBUILD_WITH_BUFR=OFF + ip-version: develop + g2c-version: develop + g2c-cmake-args: -DBUILD_G2C=ON -DUSE_AEC=ON + + - name: checkout + uses: actions/checkout@v4 + with: + path: g2 + + - name: docs + run: | + set -x + cd g2 + mkdir build + cd build + cmake -DENABLE_DOCS=ON -DCMAKE_PREFIX_PATH="$GITHUB_WORKSPACE/nceplibs/jasper;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-bacio;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-w3emc;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-ip;$GITHUB_WORKSPACE/nceplibs/NCEPLIBS-g2c" .. + make -j2 VERBOSE=1 + ctest --verbose --output-on-failure --rerun-failed