diff options
author | Brad King <brad.king@kitware.com> | 2020-06-08 09:48:11 -0400 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2020-06-09 07:54:22 -0400 |
commit | 855ed801113998eb3a4c95cc78bb9488239d75bc (patch) | |
tree | 6b4763413189f2f9bc91b5456c67e6b8c7a98a7e /Help | |
parent | d1f30ccab5adc69a29fe1978d95157ea41ce508d (diff) | |
download | cmake-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.rst | 65 |
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 |