Use symlinks instead of copies #66
Workflow file for this run
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
# Github workflow to test compositions | |
name: build | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
env: | |
LILYPOND_VERSION: 2.25.16 | |
PANG_COMMIT: d7e9d9e7dc13a9ee5bd3e0dbc5bc30eada8f44bd | |
PANG_PATH: /tmp/pang | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: [ "3.12" ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install LilyPond | |
run: | | |
lilypond_archive=lilypond-${LILYPOND_VERSION}-linux-x86_64.tar.gz | |
lilypond_url=https://gitlab.com/lilypond/lilypond/-/releases | |
lilypond_url=${lilypond_url}/v${LILYPOND_VERSION}/downloads/${lilypond_archive} | |
echo ${lilypond_url} | |
cd /tmp | |
wget -q ${lilypond_url} | |
tar -xf ${lilypond_archive} | |
- name: Upgrade pip | |
run: | | |
python -m pip install --upgrade pip coverage | |
- name: Log environment variable(s) | |
run: | | |
echo $PATH | |
- name: Install Pang | |
run: | | |
git clone https://github.com/nivlekp/pang.git ${PANG_PATH} | |
cd ${PANG_PATH} | |
git checkout ${PANG_COMMIT} | |
pip install ${PANG_PATH} | |
- name: Install dependencies | |
run: | | |
export PATH=/tmp/lilypond-${LILYPOND_VERSION}/bin:/home/runner/bin:$PATH | |
python -m pip install -e .[test] | |
import_abjad_ily | |
black --version | |
flake8 --version | |
isort --version | |
pip --version | |
pytest --version | |
lilypond --version | |
- name: Checks and Tests | |
run: | | |
export PATH=/tmp/lilypond-${LILYPOND_VERSION}/bin:/home/runner/bin:$PATH | |
make black-check | |
make flake8 | |
make isort-check | |
make pytest | |
make mypy | |
- name: Install LuaLaTeX | |
run: | | |
sudo apt update | |
sudo apt install -y texlive-latex-base texlive-fonts-recommended | |
sudo apt install -y texlive texlive-latex-extra texlive-luatex | |
sudo apt install -y texlive-lang-cjk texlive-xetex | |
lualatex --version | |
- name: Test Segments | |
run: | | |
export PATH=/tmp/lilypond-${LILYPOND_VERSION}/bin:/home/runner/bin:$PATH | |
export PANG_PATH=${PANG_PATH} | |
make test-sections | |
- name: Test Score | |
run: | | |
export PATH=/tmp/lilypond-${LILYPOND_VERSION}/bin:/home/runner/bin:$PATH | |
export PANG_PATH=${PANG_PATH} | |
make test-score | |
make full-score | |
- name: Upload Full Score | |
uses: actions/upload-artifact@v4 | |
with: | |
name: full-score | |
path: minamidera/builds/score/score.pdf | |
compression-level: 0 |