Skip to content

CI l3build tests

CI l3build tests #184

Workflow file for this run

# Based on:
# https://github.com/josephwright/siunitx/blob/main/.github/workflows/main.yaml
# https://github.com/zauguin/install-texlive
# https://github.com/moewew/biblatex-ext/blob/dev/.github/workflows/l3build.yml
# https://github.com/CTeX-org/ctex-kit/blob/master/.github/workflows/test.yml
# See also:
# https://github.com/gusbrs/zref-clever/issues/20
# https://github.com/gusbrs/zref-clever/pull/15
name: CI l3build tests
on:
push:
pull_request:
schedule:
- cron: "0 12 * * 5" # Every Friday at 12:00 UTC
env:
ZC_PACKAGE_LIST: |
# The test framework
l3build
# Build formats
latex
latex-bin
luatex
luatexbase
xetex
# Fonts
metafont
mfware
ec
# Dependencies
alphalph
amsfonts
amsmath
babel-french
babel-german
babel-portuges
babel-spanish
booktabs
carlisle
colortbl
csquotes
ec
enumitem
etexcmds
fancyvrb
hologo
hypdoc
hyperref
infwarerr
intcalc
kvdefinekeys
kvsetkeys
ltxcmds
makeindex
oberdiek
psnfss
tools
underscore
zref
jobs:
check:
name: Regression tests
runs-on: ubuntu-latest
steps:
- name: Install TeX Live
uses: zauguin/install-texlive@v3
with:
packages: ${{ env.ZC_PACKAGE_LIST }}
- name: Checkout repository
uses: actions/checkout@v4
- name: Run tests
run: l3build check -q
- name: Archive failed test output
if: failure()
uses: actions/upload-artifact@v4
with:
name: test-logs-diff-files
path: |
build/test*/*.diff
build/test*/*.log
retention-days: 5
doc:
name: Documentation
runs-on: ubuntu-latest
steps:
# avoid clash in simultaneous attempts to update TeXLive on the same cache
- run: sleep 90s
- name: Install TeX Live
uses: zauguin/install-texlive@v3
with:
packages: ${{ env.ZC_PACKAGE_LIST }}
- name: Checkout repository
uses: actions/checkout@v4
- name: Compile documentation
run: l3build doc -q -H
- name: Archive documentation
if: success()
uses: actions/upload-artifact@v4
with:
name: documentation
path: build/doc/*.pdf
- name: Archive failed doc logs
if: failure()
uses: actions/upload-artifact@v4
with:
name: doc-logs
path: build/doc/*.log
retention-days: 5