Skip to content

Add Python bindings for FileSaveOptions #3228

Add Python bindings for FileSaveOptions

Add Python bindings for FileSaveOptions #3228

name: Publish Website
on:
push:
paths:
- "momentum/website/**"
- "momentum/Doxyfile"
- "pymomentum/**"
- ".github/workflows/publish_website.yml"
pull_request:
paths:
- "momentum/website/**"
- "momentum/Doxyfile"
- "pymomentum/**"
- ".github/workflows/publish_website.yml"
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build_docs_job:
runs-on: ubuntu-latest
steps:
# 0) Clean up disk
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
root-reserve-mb: 32768
remove-dotnet: true
remove-android: true
remove-haskell: true
remove-codeql: true
remove-docker-images: true
# 1) Check out the repository
- name: Checkout
uses: actions/checkout@v5
# 2) Build Docusaurus site with C++ docs (using Doxygen)
- uses: actions/setup-node@v6
with:
node-version: 20
cache: yarn
cache-dependency-path: ./momentum/website/yarn.lock
- name: Install Doxygen
run: sudo apt-get install doxygen
- name: Build the Website
working-directory: momentum/website
run: |
yarn install --frozen-lockfile
yarn run build
# 3) Build Python API docs
- name: Set up pixi
uses: prefix-dev/[email protected]
with:
cache: true
- name: Build Python API Documentation
run: |
MOMENTUM_BUILD_WITH_FBXSDK=ON \
pixi run doc_py
# 4) Copy Python API Documentation to Docusaurus
- name: Copy Python API Documentation
run: |
cp -R build/python_api_doc momentum/website/build/python_api_doc
# 5) Upload the built website as an artifact
- name: Upload Built Website
uses: actions/upload-artifact@v5
with:
name: built-website
path: momentum/website/build
# 6) Deploy Docusaurus folder to GitHub Pages
- name: Deploy to GiHub Pages
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
uses: JamesIves/github-pages-deploy-action@releases/v4
with:
ACCESS_TOKEN: ${{ secrets.BYPASS_TOKEN }}
BRANCH: gh-pages
FOLDER: momentum/website/build