Trigger CI on branches containing "/" #111
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Automated testing | |
# Currently we run in two situations: | |
on: | |
# Whenever someone pushes to a branch in our repo | |
push: | |
branches: | |
- "**" | |
# Whenever a pull request is opened, reopened or gets new commits. | |
pull_request: | |
# This implies that for every push to a local branch in our repo for which a | |
# pull request is open this runs twice. But it's important to ensure that pull | |
# requests get tested even if their branch comes from a fork. | |
# Also the PR check runs on the merged commit, not on the unmerged branch. | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
# The l3build job contains the actual work. We misuse the matrix mechanism to | |
# create three jobs which only differ in minimal elements. | |
# For tags we do not run this since we run the release job instead. | |
l3build: | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
# include indicates that we want to set explicitly these combinations | |
# and don't want full matrix testing. | |
# "name" is just to make the output more readable. | |
# "l3build_cmd" is the actual command to run | |
# "artifact_name" is which artifact might get generated by this step. | |
# IMPORTANT: artifact_name == "Documentation" is used as a trigger to | |
# generate the artifact from PDF files and not the build directory and | |
# to generate the artifact when the run is successful, not when it fails. | |
include: | |
- name: "Tests: LuaTeX" | |
l3build_cmd: l3build check -H -e luatex -q --show-log-on-error | |
artifact_name: testfiles | |
- name: "Tests: XeTeX" | |
l3build_cmd: l3build check -H -e xetex -q --show-log-on-error | |
artifact_name: testfiles | |
name: ${{ matrix.name }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Install TeX Live | |
uses: zauguin/install-texlive@v3 | |
with: | |
package_file: .github/tl_packages | |
- name: Checkout fonts for testing | |
uses: actions/checkout@v4 | |
with: | |
repository: wspr/fontspec-test-fonts | |
path: fontspec-test-fonts | |
- name: Install fonts for testing | |
run: ./fontspec-test-fonts/install.sh | |
- name: Run l3build | |
run: ${{ matrix.l3build_cmd }} | |
- name: Archive failed test output | |
if: ${{ always() }} | |
uses: zauguin/l3build-failure-artifacts@v1 | |
with: | |
name: ${{ matrix.artifact_name }} | |
# Decide how long to keep the test output artifact: | |
retention-days: 3 |