1+ name : Test Build Workflow
2+
3+ on :
4+ schedule :
5+ - cron : ' 0 0 * * *'
6+ push :
7+ branches :
8+ - ' *'
9+ workflow_dispatch :
10+
11+ jobs :
12+ build-translation :
13+ runs-on : ubuntu-latest
14+ strategy :
15+ fail-fast : false
16+ matrix :
17+ version : [ '3.14', '3.13', '3.12' ]
18+ format : [ html, latex ]
19+ steps :
20+ - uses : actions/setup-python@master
21+ with :
22+ python-version : 3.12 # pinned for Sphinx 3.4.3 to build 3.10
23+ - uses : actions/checkout@master
24+ with :
25+ repository : python/cpython
26+ ref : ${{ matrix.version }}
27+ - run : make venv
28+ working-directory : ./Doc
29+ - uses : actions/checkout@master
30+ with :
31+ ref : ${{ matrix.version }}
32+ path : Doc/locales/XX/LC_MESSAGES
33+ - run : git pull
34+ working-directory : ./Doc/locales/XX/LC_MESSAGES
35+ -
uses :
sphinx-doc/[email protected] 36+ - run : make -e SPHINXOPTS="--color -D language='XX' -W --keep-going" ${{ matrix.format }}
37+ working-directory : ./Doc
38+ - uses : actions/upload-artifact@master
39+ if : success() || failure()
40+ with :
41+ name : build-${{ matrix.version }}-${{ matrix.format }}
42+ path : Doc/build/${{ matrix.format }}
43+
44+ output-pdf :
45+ runs-on : ubuntu-latest
46+ strategy :
47+ matrix :
48+ version : [ '3.14', '3.13', '3.12' ]
49+ needs : [ 'build-translation' ]
50+ steps :
51+ - uses : actions/download-artifact@master
52+ with :
53+ name : build-${{ matrix.version }}-latex
54+ - run : sudo apt-get update
55+ - run : sudo apt-get install -y latexmk texlive-xetex fonts-freefont-otf xindy
56+ - run : make
57+ - uses : actions/upload-artifact@master
58+ with :
59+ name : build-${{ matrix.version }}-pdf
60+ path : .
0 commit comments