dev-manual/doxygen.rst
dev-manual/error-handling.rst
dev-manual/formatting.rst
+ dev-manual/gitlab.rst
dev-manual/gmxtree.rst
dev-manual/includestyle.rst
dev-manual/index.rst
+ dev-manual/infrastructure.rst
dev-manual/jenkins.rst
dev-manual/known-issues.rst
dev-manual/language-features.rst
--- /dev/null
+GitLab
+======
+
+|Gromacs| is transitioning to GitLab for source code management, issue tracking,
+and integrated automation for testing and documentation.
+
+The repository contains DockerFiles and GitLab Runner configuration
+files to support automated testing and documentation builds.
+General information on configuring GitLab CI pipelines can be found
+in the official `Gitlab documentation <https://docs.gitlab.com/ee/ci/yaml/>`_.
+
+The GitLab CI configuration entry point is the :file:`.gitlab-ci.yml` file
+at the root of the source tree.
+Configuration templates are found in the files in the
+:file:`admin/ci-templates/` directory.
+
+Docker images used by GitLab Runner are available on `Docker Hub <https://hub.docker.com/u/gromacs>`__.
+Images are (re)built manually from DockerFiles in :file:`admin/dockerfiles`.
+
+This documentation is incomplete, pending resolution of :issue:`3275`.
+
+.. todo:: Expand this documentation to resolve :issue:`3275`
--- /dev/null
+=============================
+Automation and Infrastructure
+=============================
+
+Through the 2020 release, automated testing and documentation builds are
+performed by a Jenkins installation. With the resolution of :issue:`3272`,
+|Gromacs| is transitioning to GitLab and GitLab Runner.
+
+.. toctree::
+ :maxdepth: 2
+
+ jenkins
+ gitlab
Understanding Jenkins builds
============================
-This page documents what different Jenkins builds actually run from the
-|Gromacs| source tree. The purpose is two-fold:
+This page documents what different Jenkins builds actually run at
+http://jenkins.gromacs.org/ from the |Gromacs| source tree.
+The purpose is two-fold:
* Provide information on how to interpret Jenkins failures and how to run the
same tasks locally to diagnose issues (in most cases, referring to the
:hidden:
We are currently switching our build and testing system to use Gitlab
-and the integrated CI system, with information for the general system found
-in the official `Gitlab documentation <https://docs.gitlab.com/ee/ci/yaml/>`_.
-The new configuration for the builds and tests can be found in the file
-``.gitlab-ci.yml``, with the templates for configuring is found in the files in the
-``admin/ci-templates/`` directory. This section is going to be extended
+CI pipelines run on GitLab Runner. This section is going to be extended
with individual build information as it comes available. For now we are
using a combination of building with the previous system on Jenkins
and post-submit verification on Gitlab.
+.. seealso:: :doc:`infrastructure`
+
.. _releng-triggering-builds:
Triggering builds on Gitlab
doxygen
change-management
- jenkins
+ infrastructure
releng/index
gmxtree
code-formatting
All code changes go through a code review system at
http://gerrit.gromacs.org.
-Jenkins
+Build testing
All changes pushed to Gerrit are automatically compiled and otherwise
- checked on various platforms using a continuous integration system at
- http://jenkins.gromacs.org.
- :doc:`jenkins` documents how Jenkins interacts with the build system,
- providing information on how to replicate the builds Jenkins does (e.g., to
+ checked on various platforms.
+ :doc:`infrastructure` documents how builds are automated,
+ providing information on how to replicate the builds (e.g., to
diagnose issues).
:doc:`releng/index` provides more information on the technical implementation
of the builds.