build(deps): bump JamesIves/github-pages-deploy-action from 4.6.9 to 4.7.2 #641
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: coverage-docs | |
on: | |
push: | |
branches: [main] | |
paths-ignore: | |
- "**/*.ipynb" | |
- ".readthedocs.yaml" | |
pull_request: | |
branches: [main] | |
paths-ignore: | |
- "**/*.ipynb" | |
- ".readthedocs.yaml" | |
jobs: | |
build: | |
env: | |
buildDir: "${{ github.workspace }}/build/" | |
ASAN_OPTIONS: "detect_leaks=0:detect_container_overflow=0" # Not read for this yet.. | |
NWN_ROOT: "${{ github.workspace }}/nwn/" | |
CI_GITHUB_ACTIONS: "1" | |
CCACHE_DIR: "${{ github.workspace }}/ccache/" | |
name: build on linux | |
runs-on: ubuntu-latest | |
steps: | |
- name: Get current date | |
run: | | |
echo "DATE=$(date +'%Y-%m-%d')" >> $GITHUB_ENV | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" # Version range or exact version of a Python version to use, using SemVer's version range syntax | |
architecture: "x64" # optional x64 or x86. Defaults to x64 if not specified | |
- name: Install breathe | |
run: python -m pip install sphinx breathe sphinx_rtd_theme sphinx-tabs enum-tools sphinx-toolbox | |
- name: Install gcc-11 | |
run: | | |
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |
sudo apt update | |
sudo apt install gcc-11 g++-11 lcov doxygen ccache | |
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 110 --slave /usr/bin/g++ g++ /usr/bin/g++-11 --slave /usr/bin/gcov gcov /usr/bin/gcov-11 | |
- name: Set up ccache | |
run: | | |
ccache --set-config=cache_dir=${{ github.workspace }}/ccache | |
ccache --set-config=max_size=500M | |
ccache --set-config=compression=true | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
# Install latest CMake. | |
- uses: lukka/get-cmake@latest | |
- name: cache ccache | |
uses: actions/cache@v4 | |
with: | |
path: | | |
${{ github.workspace }}/ccache | |
key: ${{ runner.os }}-coverage-${{ env.DATE }} | |
restore-keys: | | |
${{ runner.os }}-coverage- | |
- name: cache nwn | |
id: cache-nwn | |
uses: actions/cache@v4 | |
with: | |
path: | | |
${{ github.workspace }}/nwn/ | |
key: cache-nwn-3e02cddcea5d0ae82111a3038f14aef6c14d05d9 | |
- name: Download NWN dedicated server | |
if: steps.cache-nwn.outputs.cache-hit != 'true' | |
run: | | |
curl https://nwn.beamdog.net/downloads/nwnee-dedicated-8193.34.zip -O | |
unzip nwnee-dedicated-8193.34.zip -d ${{ github.workspace }}/nwn/ | |
ls -l ${{ github.workspace }}/nwn/ | |
- name: Configure | |
run: | | |
cmake --preset ci-coverage-docs | |
- name: Build | |
run: | | |
cmake --build --preset default | |
- name: Test | |
run: | | |
ctest --preset default | |
- name: Coverage | |
run: | | |
lcov --directory . --capture --output-file coverage.info | |
lcov --remove coverage.info '/usr/*' "${HOME}"'/.cache/*' '/Library/*' $(pwd)'/tests/*' $(pwd)'/external/*' --output-file coverage.info | |
lcov --list coverage.info | |
bash <(curl -s https://codecov.io/bash) -f coverage.info -t ${{ secrets.CODECOV_TOKEN }} || echo "Codecov did not collect coverage reports" | |
- name: deploy docs to github pages | |
if: github.event_name == 'push' | |
uses: JamesIves/[email protected] | |
with: | |
branch: gh-pages | |
folder: "${{ github.workspace }}/build/docs/sphinx" | |
clean: true |