[Dune] New website build process

Steffen Müthing steffen.muething at iwr.uni-heidelberg.de
Tue Aug 29 14:54:42 CEST 2017


Hi everyone,

as most of you know, we had quite a lot of problems with the website build process,
as the website often stopped updating without any clear indication as to why.

For non-core developers who aren’t interested in the details but who want to contribute
changes to the website: Jump to the last paragraph!

I got fed up by the problem last weekend and changed the way the process works:
Instead of having an external daemon process that got notified after a push to master,
the GitLab CI pipeline will now automatically deploy the website to our webserver when
it is run on the master branch. As a result, whoever hit the merge button will now get
an email in case of failure, and the results can be easily viewed in the build logs, e.g.

https://gitlab.dune-project.org/infrastructure/dune-website/pipelines/3705

The deploy stage handles the actual upload of the files. Moreover, nightly builds of the
documentation are back - and even appear in the pipeline queue at

https://gitlab.dune-project.org/infrastructure/dune-website/pipelines

As part of the new process, there is also a new tool for building Doxygen and Sphinx
documentation, which you can also run locally (but you need pretty recent versions
of Python and Doxygen):

https://gitlab.dune-project.org/infrastructure/ci-website-builder

When you make changes to the Doxygen or Sphinx documentation, please name the
feature branch feature/doxygen/some-name or feature/sphinx/some-name. By doing
so, GitLab CI will make sure that you didn’t break the documentation part and cause
the next nightly build to fail.


And finally: If you aren’t a core developer, but want to help us out by fixing a typo
or contributing some documentation, you can now fork the repository and create
merge requests, and GitLab CI will run the tests on those merge requests :-)
If you have already forked the repository, just pull the current master from the
original repository and make sure that shared runners are enabled in your forked
project under Settings -> CI/CD.


Cheers
Steffen





More information about the Dune mailing list