qubes-doc/developer/general/continuous-integration.rst

42 lines
1.7 KiB
ReStructuredText
Raw Normal View History

2024-05-21 14:59:46 -04:00
===========================
Continuous integration (CI)
===========================
This page explains the `continuous integration (CI) <https://en.wikipedia.org/wiki/Continuous_integration>`__
infrastructure that the Qubes OS Project uses.
Website and documentation
-------------------------
The following commands may be useful as a way to interact with our CI
infrastructure on website
(`qubesos.github.io <https://github.com/QubesOS/qubesos.github.io>`__)
and documentation (`qubes-doc <https://github.com/QubesOS/qubes-doc>`__)
pull requests (PRs). Note that special permissions may be required to
use some of these commands. These commands are generally issued by
adding a comment to a PR containing only the command.
- ``PipelineRetry``: Attempts to run the entire build pipeline over
again. This can be useful if CI incorrectly uses a stale branch
instead of testing the PR as if it were merged into ``master``.
- ``PipelineRetryFailed``: Retry just failed CI jobs. Do not update the
branch.
- ``PipelineRefresh``: Like ``PipelineRetry``, except it only fetches
the job status from GitLab. It doesnt schedule a new build.
- ``TestDeploy``: Deploys a test website, which is a live version of
the Qubes website as if this PR had been merged. This can be useful
for previewing a PR on a live public website. **Note:** You must wait
for the site to finish building before issuing this command, or else
it will deploy an empty website. To find the URL of the test website,
look for text similar to “This branch was successfully deployed” and
a button named something like “View deployment.” Note that there are
two different testing sites: ``wwwtest`` is manually updated, whereas
``wwwpreview`` is managed by the ``TestDeploy`` command.