# .gitea/workflows/typst-build.yml name: Build Typst PDFs (Docker) on: push: branches: [ "main" ] pull_request: branches: [ "main" ] # Change this to the folder that contains your .typ files (relative to repo root) env: TYPST_SOURCE_DIR: src BUILD_DIR: build jobs: build-typst: runs-on: ubuntu-latest # Run the whole job inside a Docker container that has Typst installed steps: - name: Checkout repository uses: actions/checkout@v4 with: fetch-depth: 1 submodules: false lfs: false - name: Show Typst & OS versions run: | typst --version || true uname -a - name: Compile all .typ files shell: bash run: docker run --rm \ -v "$PWD":/work \ ghcr.io/typst/typst:latest \ bash -c " TYPST_SOURCE_DIR=\"${TYPST_SOURCE_DIR}\" BUILD_DIR=\"${BUILD_DIR}\" ./compile-all.bash " - name: Upload PDFs if: always() uses: actions/upload-artifact@v4 with: name: typst-pdfs path: ${{ env.BUILD_DIR }}/ if-no-files-found: warn