Skip to content

Workflow file for this run

name: Docs - Build & Deploy
on:
push:
# branches: ["main"]
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
packages: read
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
build:
# runs-on: ubuntu-latest
runs-on: self-hosted
container:
image: ghcr.io/${{ github.repository }}/tt-forge-ubuntu-22-04:latest
options: --user root
env:
MDBOOK_VERSION: 0.4.36
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history and tags
- name: Build TT-Forge
shell: bash
run: |
git config --global --add safe.directory /__w/tt-forge/tt-forge
# export CMAKE_C_COMPILER=/usr/bin/clang-17
# export CMAKE_CXX_COMPILER=/usr/bin/clang++-17
update-alternatives --install /usr/bin/clang clang /usr/bin/clang-17 100
update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-17 100
source env/activate
git submodule update --init --recursive -f
cmake -G Ninja -B build .
cmake --build build
# cmake -B build -S ${{ github.workspace }}
- name: Install mdBook
shell: bash
run: |
source env/activate
apt install cargo -y
cargo install --version ${MDBOOK_VERSION} mdbook
# export PATH="/localdev/nvukobrat/.cargo/bin:$PATH"
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5
- name: Build Docs
shell: bash
run: |
cmake --build build -- docs
# cmake --build build -- doxygen
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ./build/docs/book
# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4