Skip to content

WIP: testing split step workflow for docs #44

WIP: testing split step workflow for docs

WIP: testing split step workflow for docs #44

Workflow file for this run

name: documentation
on: [push, pull_request, workflow_dispatch]
permissions:
contents: write
jobs:
build-source:
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup conda environment
uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: 3.9.1
- name: Create diff_check conda environment
run: |
conda env create -f environment.yml
- name: Update/Restore conda environment cache
uses: actions/cache@v2
with:
path: C:\Miniconda\envs\diff_check
key: ${{ runner.os }}-conda-${{ hashFiles('environment.yml') }}
- name: Cmake Configure
run: |
conda run --name diff_check --no-capture-output cmake -S . -B build -A x64 -DBUILD_PYTHON_MODULE=ON -DBUILD_TESTS=OFF -DRUN_TESTS=OFF
- name: CMake Build
run: conda run --name diff_check --no-capture-output cmake --build build --config Release
# upload artifacts
- name: Move dlls and pyd files to single directories
run: |
mkdir $env:GITHUB_WORKSPACE\artifacts
Get-ChildItem -Path $env:GITHUB_WORKSPACE\build\Release -Filter *.pyd -Recurse | Move-Item -Destination $env:GITHUB_WORKSPACE\artifacts_pyds
Get-ChildItem -Path $env:GITHUB_WORKSPACE\build\bin\Release -Filter *.dll -Recurse | Move-Item -Destination $env:GITHUB_WORKSPACE\artifacts_dlls
shell: pwsh
- name: Upload artifacts - dlls
uses: actions/upload-artifact@v2
with:
name: __build_artifacts_dlls__
path: ${{ github.workspace }}/artifacts_dlls/*
- name: Upload artifacts - pyds
uses: actions/upload-artifact@v2
with:
name: __build_artifacts_pyds__
path: ${{ github.workspace }}/artifacts_pyds/*
build-docs:
runs-on: windows-latest
needs: build-source
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup conda environment
uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: 3.9.1
- name: Restore conda environment cache
uses: actions/cache@v2
with:
path: C:\Miniconda\envs\diff_check
key: ${{ runner.os }}-conda-${{ hashFiles('environment.yml') }}
restore-keys: |
${{ runner.os }}-conda-
- name: Activate diff_check conda environment
run: |
conda activate diff_check
# download artifacts
- name: Download dlls for doc folder
uses: actions/download-artifact@v2
with:
name: __build_artifacts_dlls__
path: ${{github.workspace}}/doc
- name: Download pyds for doc folder
uses: actions/download-artifact@v2
with:
name: __build_artifacts_pyds__
path: ${{github.workspace}}/doc
- name: Download dlls for diffCheck py package
uses: actions/download-artifact@v2
with:
name: __build_artifacts_dlls__
path: ${{github.workspace}}/src/gh/diffCheck/diffCheck/dlls
- name: Download pyds for diffCheck py package
uses: actions/download-artifact@v2
with:
name: __build_artifacts_pyds__
path: ${{github.workspace}}/src/gh/diffCheck/diffCheck
- name: Sphinx build
run: |
conda run --name diff_check --no-capture-output sphinx-build -b html -v doc _build
- name: Upload documentation
uses: actions/upload-artifact@v2
with:
name: __build_sphx_docs__
path: ${{ github.workspace }}/_build
# page-deployement:
# runs-on: windows-latest
## FIXME: we should replace this with the action to deploy to gh-pages
# - name: Deploy to GitHub Pages
# uses: peaceiris/actions-gh-pages@v3
# if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
# with:
# publish_branch: gh-pages
# github_token: ${{ secrets.GITHUB_TOKEN }}
# publish_dir: _build/
# force_orphan: true