File: build_docs.yml

package info (click to toggle)
dolfinx-mpc 0.10.0-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 1,268 kB
  • sloc: python: 7,901; cpp: 5,525; makefile: 69; sh: 4
file content (57 lines) | stat: -rw-r--r-- 1,586 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
name: Build docs

on:
  workflow_dispatch:
  workflow_call:
  pull_request:
    branches:
      - release

jobs:
  build:
    runs-on: ubuntu-24.04
    container: ghcr.io/fenics/dolfinx/dev-env:current-mpich
    env:
      # Directory that will be published on github pages
      PUBLISH_DIR: ./_build/html
      PETSC_ARCH: "linux-gnu-real64-32"
      PYVISTA_OFF_SCREEN: false
      PYVISTA_JUPYTER_BACKEND: "html"
  
    steps:
      - uses: actions/checkout@v5
        with:
          ref: release

      - name: Install libbost for backwards compatibility
        run: |
          apt-get update
          apt-get install -y libboost-dev libboost-timer-dev libgl1-mesa-dev mesa-utils curl

      - name: Install DOLFINx
        uses: jorgensd/actions/install-dolfinx@v0.4
        with:
          dolfinx: v0.10.0
          ufl: 2025.2.0
          ffcx: v0.10.0
          basix: v0.10.0
          petsc_arch: ${PETSC_ARCH}

      - name: Install DOLFINx-MPC (C++)
        run: |
          cmake -G Ninja -B build-dir -DCMAKE_BUILD_TYPE=Release -S cpp/
          cmake --build build-dir --parallel 3
          cmake --install build-dir

      - name: Install DOLFINx-MPC (Python)
        run: python3 -m pip -v install --config-settings=cmake.build-type="Release" --no-build-isolation  ./python/[docs,test,optional]

      - name: Build docs
        run: jupyter book build .

      - name: Upload documentation as artifact
        uses: actions/upload-artifact@v4
        with:
          name: documentation
          path: ${{ env.PUBLISH_DIR }}
          if-no-files-found: error