48 lines
1.3 KiB
YAML
48 lines
1.3 KiB
YAML
name: build-latex
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: docker
|
|
|
|
steps:
|
|
- name: checkout repository
|
|
uses: https://code.forgejo.org/actions/checkout@v4
|
|
|
|
- name: restore cached apt lists
|
|
uses: https://code.forgejo.org/actions/cache/restore@v4
|
|
with:
|
|
path: /var/lib/apt/lists
|
|
key: ${{ runner.os }}-texlive-full
|
|
|
|
- name: install full TeX Live
|
|
run: |
|
|
apt-get update
|
|
apt-get install -y texlive-full
|
|
|
|
- name: compile LaTeX document
|
|
run: |
|
|
pdflatex -interaction=nonstopmode main.tex || true
|
|
pdflatex -interaction=nonstopmode main.tex || true
|
|
if [ ! -f main.pdf ]; then
|
|
echo "PDF was not generated."
|
|
exit 1
|
|
fi
|
|
|
|
- name: capture PDF artifact
|
|
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
|
with:
|
|
name: main-pdf.zip
|
|
path: main.pdf
|
|
if-no-files-found: error
|
|
|
|
- name: cache apt lists
|
|
if: ${{ github.ref_name == github.event.repository.default_branch }}
|
|
uses: https://code.forgejo.org/actions/cache/save@v4
|
|
with:
|
|
path: /var/lib/apt/lists
|
|
key: ${{ runner.os }}-texlive-full
|