summaryrefslogtreecommitdiff
path: root/Help
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2020-06-08 09:48:11 -0400
committerBrad King <brad.king@kitware.com>2020-06-09 07:54:22 -0400
commit855ed801113998eb3a4c95cc78bb9488239d75bc (patch)
tree6b4763413189f2f9bc91b5456c67e6b8c7a98a7e /Help
parentd1f30ccab5adc69a29fe1978d95157ea41ce508d (diff)
downloadcmake-855ed801113998eb3a4c95cc78bb9488239d75bc.tar.gz
Help/dev: Update CMake Review Process document for GitLab CI
We have replaced use of `buildbot` with GitLab CI. Update the relevant section of our review process documentation.
Diffstat (limited to 'Help')
-rw-r--r--Help/dev/review.rst65
1 files changed, 31 insertions, 34 deletions
diff --git a/Help/dev/review.rst b/Help/dev/review.rst
index ad0bb225f1..e430fbbc11 100644
--- a/Help/dev/review.rst
+++ b/Help/dev/review.rst
@@ -278,42 +278,39 @@ merging.
Topic Testing
=============
-CMake has a `buildbot`_ instance watching for merge requests to test.
-`CMake GitLab Project Developers`_ may activate buildbot on a MR by
-adding a comment with a command among the `comment trailing lines`_::
+CMake uses `GitLab CI`_ to test merge requests, configured by the top-level
+``.gitlab-ci.yml`` file. Results may be seen both on the merge request's
+pipeline page and on the `CMake CDash Page`_. Filtered CDash results
+showing just the pipeline's jobs can be reached by selecting the ``cdash``
+job in the ``External`` stage of the pipeline.
- Do: test
+Lint and documentation build jobs run automatically after every push.
+Heavier jobs require a manual trigger to run:
-``@kwrobot`` will add an award emoji to the comment to indicate that it
-was processed and also inform buildbot about the request. The buildbot
-user (``@buildbot``) will schedule builds and respond with a comment
-linking to the `CMake CDash Page`_ with a filter for results associated
-with the topic test request. If the MR topic branch is updated by a
-push a new ``Do: test`` command is needed to activate testing again.
-
-The ``Do: test`` command accepts the following arguments:
-
-* ``--stop``: clear the list of commands for the merge request
-* ``--clear``: clear previous commands before adding this command
-* ``--regex-include <arg>`` or ``-i <arg>``: only build on builders
- matching ``<arg>`` (a Python regular expression)
-* ``--regex-exclude <arg>`` or ``-e <arg>``: exclude builds on builders
- matching ``<arg>`` (a Python regular expression)
-
-Builder names follow the pattern ``project-host-os-buildtype-generator``:
-
-* ``project``: always ``cmake`` for CMake builds
-* ``host``: the buildbot host
-* ``os``: one of ``windows``, ``osx``, or ``linux``
-* ``buildtype``: ``release`` or ``debug``
-* ``generator``: ``ninja``, ``makefiles``, ``vs<year>``,
- or ``lint-iwyu-tidy``
-
-The special ``lint-<tools>`` generator name is a builder that builds
-CMake using lint tools but does not run the test suite (so the actual
-generator does not matter).
-
-.. _`buildbot`: http://buildbot.net
+* Merge request authors may visit their merge request's pipeline and click the
+ "Play" button on one or more jobs manually. If the merge request has the
+ "Allow commits from members who can merge to the target branch" check box
+ enabled, CMake maintainers may use the "Play" button too.
+
+* `CMake GitLab Project Developers`_ may trigger CI on a merge request by
+ adding a comment with a command among the `comment trailing lines`_::
+
+ Do: test
+
+ ``@kwrobot`` will add an award emoji to the comment to indicate that it
+ was processed and also trigger all manual jobs in the merge request's
+ pipeline.
+
+ The ``Do: test`` command accepts the following arguments:
+
+ * ``--named <regex>``, ``-n <regex>``: Trigger jobs matching ``<regex>``
+ anywhere in their name. Job names may be seen on the merge request's
+ pipeline page.
+
+If the merge request topic branch is updated by a push, a new manual trigger
+using one of the above methods is needed to start CI again.
+
+.. _`GitLab CI`: https://gitlab.kitware.com/help/ci/README.md
.. _`CMake CDash Page`: https://open.cdash.org/index.php?project=CMake
Integration Testing