This allows us to run Make in a predictable environemnt without having to install all the perl dependencies. It should work both locally and during build in the pipeline.
Requirements
chordproghostscriptzola(optional)
The makefile uses Docker with the official iamge chordpro/chordpro:latest.
It can be seamlesly integrated with a shell alias in case you want to use
chordpro directly in your shell outside of make:
alias chordpro="docker run -ti --rm --env HOME=\$HOME --env USER=\$USER --workdir \$(pwd) --volume \$HOME:\$HOME chordpro/chordpro:latest chordpro"
Building
make defaults to all which builds individual PDF and HTML files for
all songs. It also builds one complete PDF songbook with all songs.
Available targets: all, pdf, html, clean
You can also build PDF for a specific page with:
chordpro --config=chordpro.json path/to/song.cho
or build HTML output with:
chordpro --config=chordpro.json -o path/to/song.html path/to/song.cho
Static website output
Futhermore, the project is ready to be compiled into a static webpage using Zola.
zola build
This is done by default during the deploy pipeline.
Song management
The manage shell script lets you do basic song management and saves you some
manual labour. Simply run the script itself or invoke help to get a list of
all available commands.