I'm using Gitlab Pages to host a Doxygen-created API for my project. I also leverage the graphviz project to create dependency graphs. I use the CI script to install the packages and build the documentation:
pages:
stage: build
image: alpine
script:
- apk update && apk add doxygen
- apk add graphviz
- doxygen doxy/dox_config
- mv docs/html/ public/
artifacts:
paths:
- public
only:
- master
dependencies: []
The CI script runs without any errors other than a Doxygen error complaining it can't find LaTeX and dvips, neither of which should affect the graphviz pictures. My graphs look like the following:
I'm not really sure what the problem is or how to fix it. Why are all the characters wrong?
It turns out the issue is with the Docker image used. Alpine doesn't include the correct fonts, but Debian has all the prerequisites. While there is almost definitely a way to install the fonts with Alpine, I just switched to the Debian docker image. Here is a working YML script:
pages:
stage: build
image: ubuntu:trusty
script:
- export DEBIAN_FRONTEND=noninteractive
- apt-get -yq update
- apt-get -yq install graphviz
- apt-get -yq install doxygen
- doxygen doxy/dox_config
- mv docs/html/ public/
artifacts:
paths:
- public