File tree Expand file tree Collapse file tree 1 file changed +52
-0
lines changed Expand file tree Collapse file tree 1 file changed +52
-0
lines changed Original file line number Diff line number Diff line change
1
+ name : Build and Release Slides
2
+
3
+ on :
4
+ push :
5
+ tags :
6
+ - " slides_*_*" # ex: slides_intro_2025-09-01
7
+
8
+ jobs :
9
+ build-and-release :
10
+ runs-on : ubuntu-latest
11
+ permissions :
12
+ contents : write
13
+
14
+ steps :
15
+ - uses : actions/checkout@v4
16
+
17
+ - name : Extract subject and version
18
+ shell : bash
19
+ run : |
20
+ REF="${GITHUB_REF#refs/tags/}" # slides_intro_2025-09-01
21
+ SUBJECT="${REF#slides_}"; SUBJECT="${SUBJECT%%_*}" # intro
22
+ VERSION="${REF#slides_${SUBJECT}_}" # 2025-09-01
23
+ case "$SUBJECT" in intro|git|latex|unix|machine-code) ;;
24
+ *) echo "Unsupported subject: $SUBJECT"; exit 1;;
25
+ esac
26
+ echo "SUBJECT=$SUBJECT" >> $GITHUB_ENV
27
+ echo "VERSION=$VERSION" >> $GITHUB_ENV
28
+
29
+ - name : Compile LaTeX
30
+ uses : xu-cheng/latex-action@v3
31
+ with :
32
+ latexmk_use_xelatex : true
33
+ work_in_root_file_dir : true
34
+ root_file : " lectures/${{ env.SUBJECT }}/slides_handout.tex"
35
+ env :
36
+ TEXINPUTS : " .:../latex-support//:./latex-support//:"
37
+
38
+ - name : Rename output PDF
39
+ run : |
40
+ SRC="lectures/${{ env.SUBJECT }}/slides_handout.pdf"
41
+ DST="lectures/${{ env.SUBJECT }}/slides_${{ env.SUBJECT }}_${{ env.VERSION }}.pdf"
42
+ mv "$SRC" "$DST"
43
+ echo "ASSET=$DST" >> $GITHUB_ENV
44
+
45
+ - name : Create GitHub Release
46
+ uses : softprops/action-gh-release@v2
47
+ with :
48
+ files : ${{ env.ASSET }}
49
+ name : " Slides (${{ env.SUBJECT }}) ${{ env.VERSION }}"
50
+ tag_name : ${{ github.ref_name }}
51
+ draft : false
52
+ prerelease : false
You can’t perform that action at this time.
0 commit comments