KlasseC update #156
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: deploy | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
build-and-deploy-book: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.11' | |
- name: Install dependencies | |
run: | | |
pip install -r .github/requirements-Book.txt | |
sudo add-apt-repository universe | |
sudo apt update | |
sudo apt-get install texlive-xetex texlive-latex-recommended texlive-fonts-recommended texlive-fonts-extra texlive-latex-extra latexmk imagemagick | |
- name: Build the Jupyterbook websites | |
run: | | |
python common/prepareBook.py | |
jb build CursusIndex/ | |
jb build ToegepasteAnalogeElektronica/ | |
jb build AnalogeElektronica2/ | |
jb build AnalogDesignTechniques/ | |
jb build MicroEnNanoTechnologie/ | |
python common/recoverBook.py | |
- name: Build the Jupyterbook pdfs | |
run: | | |
python common/preparePDF.py | |
mv ToegepasteAnalogeElektronica/_toc.yml ToegepasteAnalogeElektronica/_tochtml.yml | |
mv ToegepasteAnalogeElektronica/_tocpdf.yml ToegepasteAnalogeElektronica/_toc.yml | |
jb build ToegepasteAnalogeElektronica/ --builder pdflatex | |
mv ToegepasteAnalogeElektronica/_toc.yml ToegepasteAnalogeElektronica/_tocpdf.yml | |
mv ToegepasteAnalogeElektronica/_tochtml.yml ToegepasteAnalogeElektronica/_toc.yml | |
mv ToegepasteAnalogeElektronica/_build/latex/python.pdf ToegepasteAnalogeElektronica/_build/html/ToegepasteAnalogeElektronica.pdf | |
mv AnalogeElektronica2/_toc.yml AnalogeElektronica2/_tochtml.yml | |
mv AnalogeElektronica2/_tocpdf.yml AnalogeElektronica2/_toc.yml | |
jb build AnalogeElektronica2/ --builder pdflatex | |
mv AnalogeElektronica2/_toc.yml AnalogeElektronica2/_tocpdf.yml | |
mv AnalogeElektronica2/_tochtml.yml AnalogeElektronica2/_toc.yml | |
mv AnalogeElektronica2/_build/latex/python.pdf AnalogeElektronica2/_build/html/AnalogeElektronica2.pdf | |
jb build AnalogDesignTechniques/ --builder pdflatex | |
mv AnalogDesignTechniques/_build/latex/python.pdf AnalogDesignTechniques/_build/html/AnalogDesignTechniques.pdf | |
jb build MicroEnNanoTechnologie/ --builder pdflatex | |
mv MicroEnNanoTechnologie/_build/latex/python.pdf MicroEnNanoTechnologie/_build/html/MicroEnNanoTechnologie.pdf | |
python common/recoverPDF.py | |
- name: Build the Reveal slides | |
run: | | |
jupyter nbconvert ToegepasteAnalogeElektronica/*.ipynb --to KULeuven --no-prompt --no-input --output-dir=ToegepasteAnalogeElektronica/_build/html/slides | |
sed -i -- 's:<img src="./images:<img src="../_images:g' ToegepasteAnalogeElektronica/_build/html/slides/* | |
jupyter nbconvert AnalogeElektronica2/*.ipynb --to KULeuven --no-prompt --no-input --output-dir=AnalogeElektronica2/_build/html/slides | |
sed -i -- 's:<img src="./images:<img src="../_images:g' AnalogeElektronica2/_build/html/slides/* | |
jupyter nbconvert AnalogDesignTechniques/*.ipynb --to KULeuven --no-prompt --no-input --output-dir=AnalogDesignTechniques/_build/html/slides | |
sed -i -- 's:<img src="./images:<img src="../_images:g' AnalogDesignTechniques/_build/html/slides/* | |
jupyter nbconvert MicroEnNanoTechnologie/*.ipynb --to KULeuven --no-prompt --no-input --output-dir=MicroEnNanoTechnologie/_build/html/slides | |
sed -i -- 's:<img src="./images:<img src="../_images:g' MicroEnNanoTechnologie/_build/html/slides/* | |
- name: Install the dependencies for Lite | |
run: | | |
pip install -r .github/requirements-Lite.txt | |
- name: Copy common files | |
run: | | |
cp common/cursusdef_ToegepasteAnalogeElektronica_Lite.py ToegepasteAnalogeElektronica/cursusdef.py | |
cp common/cursusdef_AnalogeElektronica2_Lite.py AnalogeElektronica2/cursusdef.py | |
cp common/cursusdef_AnalogDesignTechniques_Lite.py AnalogDesignTechniques/cursusdef.py | |
# cp common/cursusdef_MicroEnNanoTechnologie_Lite.py MicroEnNanoTechnologie/cursusdef.py | |
- name: Build the JupyterLite site | |
run: | | |
jupyter lite build --lite-dir Lite --contents ToegepasteAnalogeElektronica --output-dir ToegepasteAnalogeElektronica/_build/html/Lite/ | |
jupyter lite build --lite-dir Lite --contents AnalogeElektronica2 --output-dir AnalogeElektronica2/_build/html/Lite/ | |
jupyter lite build --lite-dir Lite --contents AnalogDesignTechniques --output-dir AnalogDesignTechniques/_build/html/Lite/ | |
jupyter lite build --lite-dir Lite --contents MicroEnNanoTechnologie --output-dir MicroEnNanoTechnologie/_build/html/Lite/ | |
- name: convert to deck | |
run: python common/convert-to-deck.py | |
shell: sh | |
- name: Build the JupyterLite deck site | |
run: | | |
jupyter lite build --lite-dir LiteDeck --contents ToegepasteAnalogeElektronica --output-dir ToegepasteAnalogeElektronica/_build/html/Deck/ | |
jupyter lite build --lite-dir LiteDeck --contents AnalogeElektronica2 --output-dir AnalogeElektronica2/_build/html/Deck/ | |
jupyter lite build --lite-dir LiteDeck --contents AnalogDesignTechniques --output-dir AnalogDesignTechniques/_build/html/Deck/ | |
jupyter lite build --lite-dir LiteDeck --contents MicroEnNanoTechnologie --output-dir MicroEnNanoTechnologie/_build/html/Deck/ | |
# - name: Install the dependencies for PowerPoint building | |
# run: | | |
# pip install -r .github/requirements-PowerPoint.txt | |
# - name: Build PowerPoint in /_build/html/PowerPoint/ | |
# run: | | |
# | |
- name: Move all to CursusIndex | |
run: | | |
mv ToegepasteAnalogeElektronica/_build/html/ CursusIndex/_build/html/ToegepasteAnalogeElektronica | |
mv AnalogeElektronica2/_build/html/ CursusIndex/_build/html/AnalogeElektronica2/ | |
mv AnalogDesignTechniques/_build/html/ CursusIndex/_build/html/AnalogDesignTechniques | |
mv MicroEnNanoTechnologie/_build/html/ CursusIndex/_build/html/MicroEnNanoTechnologie/ | |
- name: GitHub Pages action book | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: CursusIndex/_build/html | |