Commit bbb217d4 authored by Marcel Amirault's avatar Marcel Amirault

Merge branch 'selhorn-mrpipelines1' into 'master'

Added Enable instructions to pipelines for MR docs

See merge request gitlab-org/gitlab!29284
parents 249d54e4 d33336b6
...@@ -904,7 +904,7 @@ The new pipeline can be: ...@@ -904,7 +904,7 @@ The new pipeline can be:
- A detached merge request pipeline. - A detached merge request pipeline.
- A [pipeline for merged results](../ci/merge_request_pipelines/pipelines_for_merged_results/index.md) - A [pipeline for merged results](../ci/merge_request_pipelines/pipelines_for_merged_results/index.md)
if the [project setting is enabled](../ci/merge_request_pipelines/pipelines_for_merged_results/index.md#enabling-pipelines-for-merged-results). if the [project setting is enabled](../ci/merge_request_pipelines/pipelines_for_merged_results/index.md#enable-pipelines-for-merged-results).
```plaintext ```plaintext
POST /projects/:id/merge_requests/:merge_request_iid/pipelines POST /projects/:id/merge_requests/:merge_request_iid/pipelines
......
...@@ -7,9 +7,8 @@ last_update: 2019-07-03 ...@@ -7,9 +7,8 @@ last_update: 2019-07-03
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/issues/15310) in GitLab 11.6. > [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/issues/15310) in GitLab 11.6.
In a [basic configuration](../pipelines/pipeline_architectures.md), GitLab runs a pipeline each time In a [basic configuration](../pipelines/pipeline_architectures.md#basic-pipelines), GitLab runs a pipeline each time
changes are pushed to a branch. The settings in the [`.gitlab-ci.yml`](../yaml/README.md) changes are pushed to a branch.
file, including `rules`, `only`, and `except`, determine which jobs are added to a pipeline.
If you want the pipeline to run jobs **only** when merge requests are created or updated, If you want the pipeline to run jobs **only** when merge requests are created or updated,
you can use *pipelines for merge requests*. you can use *pipelines for merge requests*.
...@@ -28,7 +27,7 @@ A few notes: ...@@ -28,7 +27,7 @@ A few notes:
## Configuring pipelines for merge requests ## Configuring pipelines for merge requests
To configure pipelines for merge requests, configure your CI yaml file. To configure pipelines for merge requests, configure your [CI/CD configuration file](../yaml/README.md).
There are a few different ways to do this. There are a few different ways to do this.
### Enable pipelines for merge requests for all jobs ### Enable pipelines for merge requests for all jobs
......
...@@ -36,31 +36,41 @@ again run against the merged results. ...@@ -36,31 +36,41 @@ again run against the merged results.
## Requirements and limitations ## Requirements and limitations
Pipelines for merged results require a [GitLab Runner][runner] 11.9 or newer. Pipelines for merged results have the following requirements and limitations:
[runner]: https://gitlab.com/gitlab-org/gitlab-runner
In addition, pipelines for merged results have the following limitations:
- Pipelines for merged results require [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner) 11.9 or newer.
- Forking/cross-repo workflows are not currently supported. To follow progress, - Forking/cross-repo workflows are not currently supported. To follow progress,
see [#11934](https://gitlab.com/gitlab-org/gitlab/issues/11934). see [#11934](https://gitlab.com/gitlab-org/gitlab/issues/11934).
- This feature is not available for - This feature is not available for
[fast forward merges](../../../user/project/merge_requests/fast_forward_merge.md) yet. [fast forward merges](../../../user/project/merge_requests/fast_forward_merge.md) yet.
To follow progress, see [#58226](https://gitlab.com/gitlab-org/gitlab/-/issues/26996). To follow progress, see [#58226](https://gitlab.com/gitlab-org/gitlab/-/issues/26996).
## Enabling Pipelines for Merged Results ## Enable pipelines for merged results
To enable pipelines on merged results at the project level: To enable pipelines for merged results for your project:
1. [Configure your CI/CD configuration file](../index.md#configuring-pipelines-for-merge-requests)
so that the pipeline or individual jobs run for merge requests.
1. Visit your project's **Settings > General** and expand **Merge requests**. 1. Visit your project's **Settings > General** and expand **Merge requests**.
1. Check **Merge pipelines will try to validate the post-merge result prior to merging**. 1. Check **Merge pipelines will try to validate the post-merge result prior to merging**.
1. Click **Save changes** button. 1. Click **Save changes**.
CAUTION: **Caution:**
If you select the check box but don't configure your CI/CD to use
pipelines for merge requests, your merge requests may become stuck in an
unresolved state or your pipelines may be dropped.
## Using Merge Trains
![Merge request pipeline config](img/merge_request_pipeline_config.png) When you enable [Pipelines for merged results](#pipelines-for-merged-results-premium),
GitLab [automatically displays](merge_trains/index.md#add-a-merge-request-to-a-merge-train)
a **Start/Add Merge Train button**.
CAUTION: **Warning:** Generally, this is a safer option than merging merge requests immediately, because your
Make sure your `gitlab-ci.yml` file is [configured properly for pipelines for merge requests](../index.md#configuring-pipelines-for-merge-requests), merge request will be evaluated with an expected post-merge result before the actual
otherwise pipelines for merged results won't run and your merge requests will be stuck in an unresolved state. merge happens.
For more information, read the [documentation on Merge Trains](merge_trains/index.md).
## Automatic pipeline cancelation ## Automatic pipeline cancelation
...@@ -118,15 +128,3 @@ which indicates that the checkout-SHA is not found in the merge ref. ...@@ -118,15 +128,3 @@ which indicates that the checkout-SHA is not found in the merge ref.
This behavior was improved at GitLab 12.4 by introducing [Persistent pipeline refs](../../pipelines/index.md#troubleshooting-fatal-reference-is-not-a-tree). This behavior was improved at GitLab 12.4 by introducing [Persistent pipeline refs](../../pipelines/index.md#troubleshooting-fatal-reference-is-not-a-tree).
You should be able to create pipelines at any timings without concerning the error. You should be able to create pipelines at any timings without concerning the error.
## Using Merge Trains **(PREMIUM)**
By enabling [Pipelines for merged results](#pipelines-for-merged-results-premium),
GitLab will [automatically display](merge_trains/index.md#how-to-add-a-merge-request-to-a-merge-train)
a **Start/Add Merge Train button** as the most recommended merge strategy.
Generally, this is a safer option than merging merge requests immediately as your
merge request will be evaluated with an expected post-merge result before the actual
merge happens.
For more information, read the [documentation on Merge Trains](merge_trains/index.md).
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment