This document describes the setup and tools for auto-publishing of the
Yawg site. We this we achieve "continous publishing" for the Yawg
site.
The Yawg site is hosted through the GitHub
Pages service provided by GitHub.
To publish new content the changes must be commited to the gh-pages
branch of the project. And then pushed to GitHub.
The continuous integration build jobs are under the control of Travis
CI.
We created a tool to perform the actions for publishing the Yawg
site. This tool will be invoked in the build job run by Travis CI.
The Yawg version to be used for baking the Yawg site will be a
previously released version.
The bake and publishing will only occur for merges into the
mainline. This means only commits into the master
branch will
trigger the auto-publishing. Commits into feature branches and
pull-requests will not trigger the auto-publishing.
To ensure the auto-publishing is performed in the right context, it is
important to strictly follow the workflow convention that the mainline
branch (i.e. the master
branch) only receives merges from feature
branches.