All checks were successful
Build PDF / make pdf (push) Successful in 3m41s
56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
name: Build PDF
|
|
|
|
on:
|
|
push:
|
|
branches: [ main, master ]
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
pdf:
|
|
name: make pdf
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Go (from go.mod)
|
|
uses: actions/setup-go@v5
|
|
with:
|
|
go-version-file: go.mod
|
|
check-latest: true
|
|
cache: true
|
|
|
|
- name: Install Chrome and tools (no snap)
|
|
run: |
|
|
set -euxo pipefail
|
|
if command -v sudo >/dev/null 2>&1; then SUDO=sudo; else SUDO=; fi
|
|
$SUDO apt-get update
|
|
# Base tools and fonts
|
|
DEBIAN_FRONTEND=noninteractive $SUDO apt-get install -y --no-install-recommends \
|
|
ca-certificates gnupg make fonts-liberation
|
|
|
|
# Add Google's official Chrome APT repo (avoids Ubuntu's snap-only chromium)
|
|
$SUDO install -d -m 0755 /etc/apt/keyrings
|
|
curl -fsSL https://dl.google.com/linux/linux_signing_key.pub | $SUDO gpg --dearmor -o /etc/apt/keyrings/google-linux-signing-keyring.gpg
|
|
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/google-linux-signing-keyring.gpg] https://dl.google.com/linux/chrome/deb/ stable main" | \
|
|
$SUDO tee /etc/apt/sources.list.d/google-chrome.list >/dev/null
|
|
$SUDO apt-get update
|
|
DEBIAN_FRONTEND=noninteractive $SUDO apt-get install -y --no-install-recommends google-chrome-stable
|
|
|
|
# Clean up apt lists to keep image lean
|
|
$SUDO rm -rf /var/lib/apt/lists/*
|
|
|
|
- name: Build PDF
|
|
env:
|
|
# Ensure our tools pick Chrome first if multiple are present
|
|
CHROME_PATH: /usr/bin/google-chrome-stable
|
|
run: make pdf
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: output-pdf
|
|
path: _dist/output.pdf
|
|
if-no-files-found: error
|