Skip to content

[WIP] Surface sampling depth #411

[WIP] Surface sampling depth

[WIP] Surface sampling depth #411

Workflow file for this run

# NOTE: this workflow file is the only one allowed to be run on self-hosted
# runners. don't change its name!
name: Validation
on:
push:
branches:
- main
- "releases/**"
paths-ignore:
- "**.md"
pull_request:
release:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
run_validation:
name: Run validation suite
runs-on: self-hosted # ubuntu-latest
container: docker://legendexp/remage-base:stable
permissions:
contents: read
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
fetch-tags: true
ref: ${{ github.event.pull_request && github.event.pull_request.head.sha || github.ref }}
- name: Build project
shell: bash # make the pipes to tee below propagate errors (pipefail is on by default).
run: |
git config --global --add safe.directory $(pwd) # make git work inside container.
mkdir build
cd build
cmake -DBUILD_TESTING=ON -DRMG_BUILD_DOCS=OFF .. | tee -a build.log
make -j$(nproc) | tee -a build.log
make install | tee -a build.log
- name: Run full test suite
run: |
cd build
ctest --label-regex val --label-exclude mt -j$(nproc) --output-on-failure
ctest --label-regex val --label-regex mt -j1 --output-on-failure
- name: Build validation report
run: |
cd build
cmake -DRMG_BUILD_DOCS=ON ..
make sphinx-validation
- name: Upload validation report to GitHub
if: ${{ always() }}
uses: actions/upload-artifact@v7
with:
name: remage-validation-report-g4flavor-runner
path: build/docs/validation/_build/
deploy_validation_report:
name: Deploy validation report to legend-exp.github.io/remage/validation
if: github.event_name != 'pull_request'
needs: run_validation
runs-on: ubuntu-latest
permissions:
contents: write
pages: write
steps:
- name: Download artifact
uses: actions/download-artifact@v8
with:
name: remage-validation-report-g4flavor-runner
path: output/
- name: Determine target directory
id: target
run: |
if [[ "${{ github.event_name }}" == "release" ]]; then
echo "dir=$(echo '${{ github.event.release.tag_name }}')" >> $GITHUB_ENV
else
echo "dir=latest" >> $GITHUB_ENV
fi
- name: Deploy to gh-pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: gh-pages
publish_dir: output
destination_dir: validation/${{ env.dir }}
# vim: expandtab tabstop=2 shiftwidth=2