Test LaTeX Template #195
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: "Test LaTeX Template" | |
on: | |
pull_request: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
schedule: | |
- cron: "0 13 * * 1" | |
jobs: | |
pre-commit: | |
name: Check linting | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
- uses: pre-commit/[email protected] | |
nix-test: | |
name: Test template sheets against pre-compiled examples | |
needs: pre-commit | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out code | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 | |
- name: Set up Nix | |
uses: cachix/install-nix-action@ba0dd844c9180cbf77aa72a116d6fbc515d0e87b # v27 | |
with: | |
github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build test sheets | |
id: build-sheets-test | |
run: make test_ci | |
- name: Copy test output to archive directory | |
if: always() && steps.build-sheets-test.conclusion == 'success' | |
run: | | |
mkdir archive | |
cp -rL ./result/* ./archive | |
- name: Install Imagemagick | |
uses: mfinelli/setup-imagemagick@v5 | |
- name: Install Ghostscript | |
id: install-ghostscript | |
run: | | |
sudo apt-get update -y | |
sudo apt-get install ghostscript -y | |
- name: Compare test sheets with reference | |
if: always() && steps.install-ghostscript.conclusion == 'success' | |
id: build-sheets-validation | |
run: make validate_test | |
- name: Copy difference output to archive directory | |
if: always() && steps.build-sheets-validation.conclusion == 'success' | |
run: | | |
cp difference* ./archive | |
- name: Archive build artifacts | |
if: always() && steps.build-sheets-test.conclusion == 'success' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: test_result | |
path: archive | |
nix-run: | |
name: Build repo character sheets | |
needs: nix-test | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out code | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 | |
- name: Set up NixOS | |
uses: cachix/install-nix-action@ba0dd844c9180cbf77aa72a116d6fbc515d0e87b # v27 | |
with: | |
github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Run nix flake check | |
run: make check | |
- name: Run nix build | |
run: make build_ci | |
- name: Copy output to archive directory | |
run: | | |
mkdir archive | |
cp -r ./result/* ./archive | |
- name: Archive build artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: result | |
path: archive |