PolyPaper/polypaper/.github/workflows/build.yml

32 lines
1.4 KiB
YAML
Executable File

name: Build PolyPaper
on: [push, pull_request, workflow_dispatch]
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix: { venue: [arxiv, ieee, elsevier, acm] }
steps:
- uses: actions/checkout@v4
- name: Build Docker image
run: docker build -f Dockerfile.full -t polypaper:full .
- name: Validate metadata (in container)
run: docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'chmod +x scripts/check_metadata.py && scripts/check_metadata.py'
- name: Build PDFs and HTML (${{ matrix.venue }})
run: |
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make VENUE=${{ matrix.venue }}'
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make supplement VENUE=${{ matrix.venue }}'
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make camera-ready VENUE=${{ matrix.venue }}'
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make site VENUE=${{ matrix.venue }}'
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: polypaper-${{ matrix.venue }}
path: |
paper-${{ matrix.venue }}.pdf
paper-supplement-${{ matrix.venue }}.pdf
paper-camera-ready-${{ matrix.venue }}.pdf
public/paper.html