50 lines
1.2 KiB
YAML
50 lines
1.2 KiB
YAML
# .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 |