Skip to content
Snippets Groups Projects
Unverified Commit d61df11c authored by Ritesh Raj Sarraf's avatar Ritesh Raj Sarraf
Browse files

Add section about FORCE_SKIP_JOB


FORCE_SKIP_JOB is a very handy feature allowing users to skip certain
jobs in the pipeline

Signed-off-by: default avatarRitesh Raj Sarraf <ritesh.sarraf@collabora.com>
parent 4f6d03c1
No related branches found
No related tags found
1 merge request!364Release Branching Automation through CI Pipeline - T8136
......@@ -79,7 +79,7 @@ At a higher level, **Release Branching** includes the following steps which need
## Release Branching through Gitlab CI
The release process has been semi-automated with the Gitlab CI framework. The following screenshots/notes will give a run through of the steps, to make a release.
The release process has been semi-automated with the [Gitlab CI framework](https://gitlab.apertis.org/infrastructure/apertis-infrastructure/-/pipelines). The following screenshots/notes will give a run through of the steps, to make a release.
Some terms in regard to *release branching*:
......@@ -115,7 +115,7 @@ This example highlights the dependency in action. A job is only run *after* its
![500px|thumb|Manual Job Overview](/images/Manual_Job_Summary.png)
This example highlights *Manual Jobs* and their dependencies. *Manual Jobs* are differentiated with the *Play* Button. A *Manual Job* is to be run manually by a user. In the context of this document, a manual job constitues of certain commands that the user is expected to run by hand on respective servers. Most manual jobs, in this case, are to be run on the **OBS Backend** server. For each manual job, the exact commands will be displayed in the job's console view.
This example highlights *Manual Jobs* and their dependencies. *Manual Jobs* are differentiated with the *Play* Button. A *Manual Job* is to be run manually by a user. In the context of this document, a manual job constitutes of certain commands that the user is expected to run by hand on respective servers. Most manual jobs, in this case, are to be run on the **OBS Backend** server. For each manual job, the exact commands will be displayed in the job's console view.
![500px|thumb|Manual Job Run Detail](/images/Manual_Job_Run_Detail.png)
......@@ -127,6 +127,19 @@ Most manual jobs are made dependent on other job. This is to ensure that steps a
The above example complete the *semi-automated* aspect of the **Release Branching** steps.
### Skipping jobs
There can be scenarios during the *Release Branching* wherein the user would be required to re-run the entire pipeline. Under such situation, it can be desired to have certain specific jobs to be skipped from the consecutive pipeline run. For example, in first run, `branch-create-mass-branches` was run and it created all the branches in respect to the `NEXT_RELEASE`. For such cases, on consecutive run, it is desired to skip the `branch-create-mass-branches` job. Below is an example on how to invoke the pipeline while defining a set of jobs to be skipped.
![500px|thumb|FORCE_SKIP_JOB_INVOKE](/images/FORCE_SKIP_JOB_INVOKE.png)
In the above example screenshot, we specify that the `branch-create-mass-branches` and `branch-update-tests-projects` jobs be skipped. The important bit is to pass the `FORCE_SKIP_JOB` variable with the required values.
![500px|thumb|FORCE_SKIP_JOB](/images/FORCE_SKIP_JOB.png)
As was specified in the previous job invocaton, this example pipeline job run has the `branch-create-mass-branches` and `branch-update-tests-projects` skipped.
## Post CI Manual Steps
After the completion of the **Release Branching** CI Jobs, a certain set of manual steps need to be performed, which are outlined below.
......
static/images/FORCE_SKIP_JOB.png

327 KiB

static/images/FORCE_SKIP_JOB_INVOKE.png

198 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment