Commit 545f4a5a authored by Evan Read's avatar Evan Read

Merge branch 'docs-multiproject-pipelines-tiers' into 'master'

Update docs for multi-project pipelines

Closes #209041

See merge request gitlab-org/gitlab!26560
parents 9e990d4b b5bfc6b2
...@@ -2,26 +2,18 @@ ...@@ -2,26 +2,18 @@
type: reference type: reference
--- ---
# Multi-project pipelines **(PREMIUM)** # Multi-project pipelines
> [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/2121) in > - [Introduced](https://about.gitlab.com/releases/2015/08/22/gitlab-7-14-released/#build-triggers-api-gitlab-ci) in GitLab 7.14, as Build Triggers.
[GitLab Premium 9.3](https://about.gitlab.com/releases/2017/06/22/gitlab-9-3-released/#multi-project-pipeline-graphs). > - [Made available](https://gitlab.com/gitlab-org/gitlab/issues/199224) in all tiers in GitLab 12.8.
When you set up [GitLab CI/CD](README.md) across multiple projects, you can visualize You can set up [GitLab CI/CD](README.md) across multiple projects, so that a pipeline
the entire pipeline, including all cross-project inter-dependencies. in one project can trigger a pipeline in another project.
## Overview ## Overview
GitLab CI/CD is a powerful continuous integration tool that works not only per project, but also across projects. When you GitLab CI/CD is a powerful continuous integration tool that works not only per project,
configure GitLab CI for your project, you can visualize the stages but also across projects with multi-project pipelines.
of your [jobs](pipelines.md#configuring-pipelines) on a [pipeline graph](pipelines.md#visualizing-pipelines).
![Multi-project pipeline graph](img/multi_project_pipeline_graph.png)
In the Merge Request Widget, multi-project pipeline mini-graphs are displayed,
and when hovering or tapping (on touchscreen devices) they will expand and be shown adjacent to each other.
![Multi-project mini graph](img/multi_pipeline_mini_graph.gif)
Multi-project pipelines are useful for larger products that require cross-project inter-dependencies, such as those Multi-project pipelines are useful for larger products that require cross-project inter-dependencies, such as those
adopting a [microservices architecture](https://about.gitlab.com/blog/2016/08/16/trends-in-version-control-land-microservices/). adopting a [microservices architecture](https://about.gitlab.com/blog/2016/08/16/trends-in-version-control-land-microservices/).
...@@ -30,6 +22,9 @@ For a demonstration of how cross-functional development teams can use cross-pipe ...@@ -30,6 +22,9 @@ For a demonstration of how cross-functional development teams can use cross-pipe
triggering to trigger multiple pipelines for different microservices projects, see triggering to trigger multiple pipelines for different microservices projects, see
[Cross-project Pipeline Triggering and Visualization](https://about.gitlab.com/handbook/marketing/product-marketing/demo/#cross-project-pipeline-triggering-and-visualization-may-2019---1110). [Cross-project Pipeline Triggering and Visualization](https://about.gitlab.com/handbook/marketing/product-marketing/demo/#cross-project-pipeline-triggering-and-visualization-may-2019---1110).
Additionally, it's possible to visualize the entire pipeline, including all cross-project
inter-dependencies. **(PREMIUM)**
## Use cases ## Use cases
Let's assume you deploy your web app from different projects in GitLab: Let's assume you deploy your web app from different projects in GitLab:
...@@ -40,8 +35,25 @@ Let's assume you deploy your web app from different projects in GitLab: ...@@ -40,8 +35,25 @@ Let's assume you deploy your web app from different projects in GitLab:
With Multi-Project Pipelines you can visualize the entire pipeline, including all build and test stages for the three projects. With Multi-Project Pipelines you can visualize the entire pipeline, including all build and test stages for the three projects.
## Multi-project pipeline visualization **(PREMIUM)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/2121) in [GitLab Premium 9.3](https://about.gitlab.com/releases/2017/06/22/gitlab-9-3-released/#multi-project-pipeline-graphs).
When you configure GitLab CI for your project, you can visualize the stages of your
[jobs](pipelines.md#configuring-pipelines) on a [pipeline graph](pipelines.md#visualizing-pipelines).
![Multi-project pipeline graph](img/multi_project_pipeline_graph.png)
In the Merge Request Widget, multi-project pipeline mini-graphs are displayed,
and when hovering or tapping (on touchscreen devices) they will expand and be shown adjacent to each other.
![Multi-project mini graph](img/multi_pipeline_mini_graph.gif)
## Triggering multi-project pipelines through API ## Triggering multi-project pipelines through API
> - Use of `CI_JOB_TOKEN` for multi-project pipelines was [introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/2017) in [GitLab Premium][ee] 9.3.
> - Use of `CI_JOB_TOKEN` for multi-project pipelines was [made available](https://gitlab.com/gitlab-org/gitlab/issues/31573) in all tiers in GitLab 12.4.
When you use the [`CI_JOB_TOKEN` to trigger pipelines](triggers/README.md#ci-job-token), GitLab When you use the [`CI_JOB_TOKEN` to trigger pipelines](triggers/README.md#ci-job-token), GitLab
recognizes the source of the job token, and thus internally ties these pipelines recognizes the source of the job token, and thus internally ties these pipelines
together, allowing you to visualize their relationships on pipeline graphs. together, allowing you to visualize their relationships on pipeline graphs.
...@@ -52,7 +64,7 @@ outbound connections for upstream and downstream pipeline dependencies. ...@@ -52,7 +64,7 @@ outbound connections for upstream and downstream pipeline dependencies.
## Creating multi-project pipelines from `.gitlab-ci.yml` ## Creating multi-project pipelines from `.gitlab-ci.yml`
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/8997) in [GitLab Premium](https://about.gitlab.com/pricing/) 11.8. > - [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/8997) in [GitLab Premium](https://about.gitlab.com/pricing/) 11.8.
> - [Moved](https://gitlab.com/gitlab-org/gitlab/issues/199224) to GitLab Core in 12.8. > - [Made available](https://gitlab.com/gitlab-org/gitlab/issues/199224) in all tiers in 12.8.
### Triggering a downstream pipeline using a bridge job ### Triggering a downstream pipeline using a bridge job
......
...@@ -299,11 +299,12 @@ Pipeline status and test coverage report badges are available and configurable f ...@@ -299,11 +299,12 @@ Pipeline status and test coverage report badges are available and configurable f
For information on adding pipeline badges to projects, see [Pipeline badges](../user/project/pipelines/settings.md#pipeline-badges). For information on adding pipeline badges to projects, see [Pipeline badges](../user/project/pipelines/settings.md#pipeline-badges).
## Multi-project pipelines **(PREMIUM)** ## Multi-project pipelines
Pipelines for different projects can be combined and visualized together. Pipelines for different projects can be combined together into [Multi-project pipelines](multi_project_pipelines.md).
For more information, see [Multi-project pipelines](multi_project_pipelines.md). [Multi-project pipeline graphs](multi_project_pipelines.md#multi-project-pipeline-visualization-premium) help
you visualize the entire pipeline, including all cross-project inter-dependencies. **(PREMIUM)**
## Parent-child pipelines ## Parent-child pipelines
......
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