# This file represents 1 workflow. A workflow has multiple jobs. A job has multiple tasks.
name: Publish PDF

# This workflow runs every push
on: push

# If you'd like it only to run on certain branches:
# on:
#   push:
#     branches: [main, dev]
#   pull_request:
#     branches: [staging, prod]

# Jobs are run in parallel
jobs:
  # This is our one and only job
  publish:
    runs-on: ubuntu-22.04
    steps:
      - uses: actions/checkout@v4
      - name: Extract branch name
        shell: bash
        run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
        id: extract_branch
      - name: Setup tectonic
        run: | 
          apt -y install curl
          curl --proto '=https' --tlsv1.2 -fsSL https://drop-sh.fullyjustified.net |sh
      - name: Compile latex
        run: ./tectonic main.tex
      - name: Rename PDF
        run: mv main.pdf ${{ steps.extract_branch.outputs.branch }}.pdf
      - name: Upload
        uses: VAllens/gitea-publish-generic-packages@v1
        env:
          NODE_OPTIONS: '--experimental-fetch' # if nodejs < 18
        with:
          files: |-
            ${{ steps.extract_branch.outputs.branch }}.pdf