Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'doc/ci/pipelines/cicd_minutes.md')
-rw-r--r--doc/ci/pipelines/cicd_minutes.md225
1 files changed, 115 insertions, 110 deletions
diff --git a/doc/ci/pipelines/cicd_minutes.md b/doc/ci/pipelines/cicd_minutes.md
index ee3f0d8c539..c29d23cfff7 100644
--- a/doc/ci/pipelines/cicd_minutes.md
+++ b/doc/ci/pipelines/cicd_minutes.md
@@ -5,45 +5,47 @@ info: To determine the technical writer assigned to the Stage/Group associated w
type: reference
---
-# CI/CD minutes quota **(PREMIUM)**
+# Compute quota **(PREMIUM)**
+
+> [Renamed](https://gitlab.com/groups/gitlab-com/-/epics/2150) from "CI/CD minutes" to "compute quota" or "units of compute" in GitLab 16.1.
NOTE:
The term `CI/CD minutes` is being renamed to `units of compute`. During this transition, you might see references in the UI and documentation to `CI/CD minutes`, `CI minutes`, `pipeline minutes`, `CI pipeline minutes`, `pipeline minutes quota`, and `units of compute`. For more information, see [epic 2150](https://gitlab.com/groups/gitlab-com/-/epics/2150).
Administrators can limit the amount of time that projects can use to run jobs on
[shared runners](../runners/runners_scope.md#shared-runners) each month. This limit
-is tracked with a quota of CI/CD minutes.
+is tracked with a compute quota.
By default, one minute of execution time by a single job uses
-one CI/CD minute. The total amount of CI/CD minutes used by a pipeline is
-[the sum of all its jobs' durations](#how-cicd-minute-usage-is-calculated).
-Jobs can run concurrently, so the total CI/CD minute usage can be higher than the
+one unit of compute. The total execution time for a pipeline is
+[the sum of all its jobs' durations](#how-compute-usage-is-calculated).
+Jobs can run concurrently, so the total usage can be higher than the
end-to-end duration of a pipeline.
On GitLab.com:
-- CI/CD minutes quotas are enabled for all projects, but certain
- projects [consume CI/CD minutes at a slower rate](#cost-factor).
-- The base monthly CI/CD minutes quota for a GitLab.com [namespace](../../user/namespace/index.md)
+- Compute quotas are enabled for all projects, but certain
+ projects [consume units of compute at a slower rate](#cost-factor).
+- The base monthly compute quota for a GitLab.com [namespace](../../user/namespace/index.md)
is determined by its [license tier](https://about.gitlab.com/pricing/).
-- You can [purchase additional CI/CD minutes](#purchase-additional-cicd-minutes)
- if you need more than the number of CI/CD minutes in your monthly quota.
+- You can [purchase additional units of compute](#purchase-additional-units-of-compute)
+ if you need more than the amount of compute in your monthly quota.
On self-managed GitLab instances:
-- CI/CD minutes quotas are disabled by default.
-- When enabled, CI/CD minutes quotas apply to private projects only.
-- Administrators can [assign more CI/CD minutes](#set-the-quota-of-cicd-minutes-for-a-specific-namespace)
- if a namespace uses all the CI/CD minutes in its monthly quota.
+- Compute quotas are disabled by default.
+- When enabled, compute quotas apply to private projects only.
+- Administrators can [assign more units of compute](#set-the-compute-quota-for-a-specific-namespace)
+ if a namespace uses all its monthly quota.
-[Project runners](../runners/runners_scope.md#project-runners) are not subject to a quota of CI/CD minutes.
+[Project runners](../runners/runners_scope.md#project-runners) are not subject to a compute quota.
-## Set the quota of CI/CD minutes for all namespaces
+## Set the compute quota for all namespaces
> [Moved](https://about.gitlab.com/blog/2021/01/26/new-gitlab-product-subscription-model/) to GitLab Premium in 13.9.
-By default, GitLab instances do not have a quota of CI/CD minutes.
-The default value for the quota is `0`, which grants unlimited CI/CD minutes.
+By default, GitLab instances do not have a compute quota.
+The default value for the quota is `0`, which is unlimited.
However, you can change this default value.
Prerequisite:
@@ -52,41 +54,43 @@ Prerequisite:
To change the default quota that applies to all namespaces:
-1. On the top bar, select **Main menu > Admin**.
+1. On the left sidebar, expand the top-most chevron (**{chevron-down}**).
+1. Select **Admin Area**.
1. On the left sidebar, select **Settings > CI/CD**.
1. Expand **Continuous Integration and Deployment**.
-1. In the **Quota of CI/CD minutes** box, enter the maximum number of CI/CD minutes.
+1. In the **Compute quota** box, enter a limit.
1. Select **Save changes**.
If a quota is already defined for a specific namespace, this value does not change that quota.
-## Set the quota of CI/CD minutes for a specific namespace
+## Set the compute quota for a specific namespace
> [Moved](https://about.gitlab.com/blog/2021/01/26/new-gitlab-product-subscription-model/) to GitLab Premium in 13.9.
-You can override the global value and set a quota of CI/CD minutes
+You can override the global value and set a compute quota
for a specific namespace.
Prerequisite:
- You must be a GitLab administrator.
-To set a quota of CI/CD minutes for a namespace:
+To set a compute quota for a namespace:
-1. On the top bar, select **Main menu > Admin**.
+1. On the left sidebar, expand the top-most chevron (**{chevron-down}**).
+1. Select **Admin Area**.
1. On the left sidebar, select **Overview > Groups**.
1. For the group you want to update, select **Edit**.
-1. In the **Quota of CI/CD minutes** box, enter the maximum number of CI/CD minutes.
+1. In the **Compute quota** box, enter the maximum number of units of compute.
1. Select **Save changes**.
You can also use the [update group API](../../api/groups.md#update-group) or the
[update user API](../../api/users.md#user-modification) instead.
NOTE:
-You can set a quota of CI/CD minutes for only top-level groups or user namespaces.
+You can set a compute quota for only top-level groups or user namespaces.
If you set a quota for a subgroup, it is not used.
-## View CI/CD minutes
+## View compute usage
Prerequisite:
@@ -101,17 +105,16 @@ Prerequisite:
- You must have the Owner role for the group.
-To view CI/CD minutes being used for your group:
+To view compute usage for your group:
-1. On the top bar, select **Main menu > Groups** and find your group. The group must not be a subgroup.
-1. On the left sidebar, select **Settings > Usage Quotas**.
+1. On the left sidebar, at the top, select **Search GitLab** (**{search}**) to
+ find your group. The group must not be a subgroup.
+1. Select **Settings > Usage Quotas**.
1. Select the **Pipelines** tab.
-![Group CI/CD minutes quota](img/group_cicd_minutes_quota.png)
-
-The projects list shows projects with CI/CD minute usage or shared runners usage
+The projects list shows projects with compute usage or shared runners usage
in the current month only. The list includes all projects in the namespace and its
-subgroups, sorted in descending order of CI/CD minute usage.
+subgroups, sorted in descending order of compute usage.
### View Usage Quota reports for a personal namespace
@@ -121,79 +124,79 @@ Prerequisite:
- The namespace must be your personal namespace.
-You can view the number of CI/CD minutes being used by a personal namespace:
+You can view the compute usage for a personal namespace:
-1. On the top bar, in the upper-right corner, select your avatar.
+1. On the left sidebar, select your avatar.
1. Select **Edit profile**.
1. On the left sidebar, select **Usage Quotas**.
The projects list shows [personal projects](../../user/project/working_with_projects.md#view-personal-projects)
-with CI/CD minutes usage or shared runners usage in the current month only. The list
-is sorted in descending order of CI/CD minute usage.
+with compute usage or shared runners usage in the current month only. The list
+is sorted in descending order of compute usage.
-## Purchase additional CI/CD minutes **(FREE SAAS)**
+## Purchase additional units of compute **(FREE SAAS)**
-If you're using GitLab SaaS, you can purchase additional packs of CI/CD minutes.
-These additional CI/CD minutes:
+If you're using GitLab SaaS, you can purchase additional packs of units of compute.
+These additional units of compute:
- Are used only after the monthly quota included in your subscription runs out.
- Are carried over to the next month, if any remain at the end of the month.
-- Are valid for 12 months from date of purchase or until all minutes are consumed, whichever comes first. Expiry of minutes is not enforced.
+- Are valid for 12 months from date of purchase or until all units of compute are consumed, whichever comes first. Expiry of units of compute is not enforced.
For example, with a GitLab SaaS Premium license:
-- You have `10,000` monthly minutes.
-- You purchase an additional `5,000` minutes.
-- Your total limit is `15,000` minutes.
+- You have `10,000` monthly units of compute.
+- You purchase an additional `5,000` units of compute.
+- Your total limit is `15,000` units of compute.
-If you use `13,000` minutes during the month, the next month your additional minutes become
-`2,000`. If you use `9,000` minutes during the month, your additional minutes remain the same.
+If you use `13,000` units of compute during the month, the next month your additional units of compute become
+`2,000`. If you use `9,000` units of compute during the month, your additional units of compute remain the same.
-If you bought additional CI/CD minutes while on a trial subscription, those minutes are available after the trial ends or you upgrade to a paid plan.
+If you bought additional units of compute while on a trial subscription, those units of compute are available after the trial ends or you upgrade to a paid plan.
-You can find pricing for additional CI/CD minutes on the
+You can find pricing for additional units of compute on the
[GitLab Pricing page](https://about.gitlab.com/pricing/).
-### Purchase CI/CD minutes for a group **(FREE SAAS)**
+### Purchase units of compute for a group **(FREE SAAS)**
Prerequisite:
- You must have the Owner role for the group.
-You can purchase additional CI/CD minutes for your group.
-You cannot transfer purchased CI/CD minutes from one group to another,
+You can purchase additional units of compute for your group.
+You cannot transfer purchased units of compute from one group to another,
so be sure to select the correct group.
-1. On the top bar, select **Main menu > Groups** and find your group.
-1. On the left sidebar, select **Settings > Usage Quotas**.
+1. On the left sidebar, at the top, select **Search GitLab** (**{search}**) to find your group.
+1. Select **Settings > Usage Quotas**.
1. Select **Pipelines**.
-1. Select **Buy additional minutes**.
+1. Select **Buy additional units of compute**.
1. Complete the details of the transaction.
-After your payment is processed, the additional CI/CD minutes are added to your group
+After your payment is processed, the additional units of compute are added to your group
namespace.
-### Purchase CI/CD minutes for a personal namespace **(FREE SAAS)**
+### Purchase units of compute for a personal namespace **(FREE SAAS)**
Prerequisite:
- The namespace must be your personal namespace.
-To purchase additional minutes for your personal namespace:
+To purchase additional units of compute for your personal namespace:
-1. On the top bar, in the upper-right corner, select your avatar.
+1. On the left sidebar, select your avatar.
1. Select **Edit profile**.
1. On the left sidebar, select **Usage Quotas**.
-1. Select **Buy additional minutes**. GitLab redirects you to the Customers Portal.
-1. Locate the subscription card that's linked to your personal namespace on GitLab SaaS, select **Buy more CI minutes**,
+1. Select **Buy additional units of compute**. GitLab redirects you to the Customers Portal.
+1. Locate the subscription card that's linked to your personal namespace on GitLab SaaS, select **Buy more units of compute**,
and complete the details of the transaction.
-After your payment is processed, the additional CI/CD minutes are added to your personal
+After your payment is processed, the additional units of compute are added to your personal
namespace.
-## How CI/CD minute usage is calculated
+## How compute usage is calculated
-GitLab uses this formula to calculate the CI/CD minute usage of a job:
+GitLab uses this formula to calculate the compute usage of a job:
```plaintext
Job duration * Cost factor
@@ -203,18 +206,18 @@ Job duration * Cost factor
not including time spent in the `created` or `pending` statuses.
- [**Cost factor**](#cost-factor): A number based on project visibility.
-The value is transformed into minutes and added to the count of used CI/CD minutes
+The value is transformed into units of compute and added to the count of used units
in the job's top-level namespace.
For example, if a user `alice` runs a pipeline:
-- Under the `gitlab-org` namespace, the CI/CD minutes used by each job in the pipeline are
+- Under the `gitlab-org` namespace, the units of compute used by each job in the pipeline are
added to the overall consumption for the `gitlab-org` namespace, not the `alice` namespace.
-- For one of the personal projects in their namespace, the CI/CD minutes are added
+- For one of the personal projects in their namespace, the units of compute are added
to the overall consumption for the `alice` namespace.
-The CI/CD minutes used by one pipeline is the total CI/CD minutes used by all the jobs
-that ran in the pipeline. Jobs can run concurrently, so the total CI/CD minutes usage
+The compute used by one pipeline is the total units of compute used by all the jobs
+that ran in the pipeline. Jobs can run concurrently, so the total compute usage
can be higher than the end-to-end duration of a pipeline.
### Cost factor
@@ -225,24 +228,24 @@ The cost factors for jobs running on shared runners on GitLab.com are:
- Exceptions for public projects:
- `0.5` for projects in the [GitLab for Open Source program](../../subscriptions/community_programs.md#gitlab-for-open-source).
- `0.008` for forks of projects in the [GitLab for Open Source program](../../subscriptions/community_programs.md#gitlab-for-open-source). For every 125 minutes of job execution time,
- you use 1 CI/CD minute.
+ you use 1 unit of compute.
- Discounted dynamically for [community contributions to GitLab projects](#cost-factor-for-community-contributions-to-gitlab-projects).
The cost factors on self-managed instances are:
-- `0` for public projects, so they do not consume CI/CD minutes.
+- `0` for public projects, so they do not consume units of compute.
- `1` for internal and private projects.
#### Cost factor for community contributions to GitLab projects
Community contributors can use up to 300,000 minutes on shared runners when contributing to open source projects
maintained by GitLab. The maximum of 300,000 minutes would only be possible if contributing exclusively to projects [part of the GitLab product](https://about.gitlab.com/handbook/engineering/metrics/#projects-that-are-part-of-the-product). The total number of minutes available on shared runners
-is reduced by the CI/CD minutes used by pipelines from other projects.
+is reduced by the units of compute used by pipelines from other projects.
The 300,000 minutes applies to all SaaS tiers, and the cost factor calculation is:
-- `Monthly minute quota / 300,000 job duration minutes = Cost factor`
+- `Monthly compute quota / 300,000 job duration minutes = Cost factor`
-For example, with the 10,000 CI/CD minutes per month in the Premium tier:
+For example, with a monthly compute quota of 10,000 in the Premium tier:
- 10,000 / 300,000 = 0.03333333333 cost factor.
@@ -261,44 +264,46 @@ GitLab administrators can add a namespace to the reduced cost factor
GitLab SaaS runners have different cost factors, depending on the runner type (Linux, Windows, macOS) and the virtual machine configuration.
-| GitLab SaaS runner type | Machine Type | CI/CD minutes cost factor |
-| :--------- | :------------------- | :--------- |
-| Linux OS | Small |1|
-| Linux OS | Medium |2|
-| Linux OS | Large |3|
-| Linux OS + GPU-enabled | Medium, GPU Standard |7|
+| GitLab SaaS runner type | Machine Size | Cost factor |
+|:-----------------------------|:---------------------|:------------|
+| Linux OS amd64 | small | 1 |
+| Linux OS amd64 | medium | 2 |
+| Linux OS amd64 | large | 3 |
+| Linux OS amd64 + GPU-enabled | medium, GPU standard | 7 |
+| macOS M1 | Medium | 6 |
+| Windows Server | - | 1 (Beta) |
-### Monthly reset of CI/CD minutes
+### Monthly reset of compute usage
-On the first day of each calendar month, the accumulated usage of CI/CD minutes is reset to `0`
+On the first day of each calendar month, the accumulated compute usage is reset to `0`
for all namespaces that use shared runners. This means your full quota is available, and
calculations start again from `0`.
-For example, if you have a monthly quota of `10,000` CI/CD minutes:
+For example, if you have a monthly quota of `10,000` units of compute:
-- On **April 1**, you have `10,000` minutes.
-- During April, you use only `6,000` of the `10,000` minutes.
-- On **May 1**, the accumulated usage of minutes resets to `0`, and you have `10,000` minutes to use again
+- On **April 1**, you have `10,000` units of compute.
+- During April, you use only `6,000` of the `10,000` units of compute.
+- On **May 1**, the accumulated compute usage resets to `0`, and you have `10,000` units of compute to use again
during May.
Usage data for the previous month is kept to show historical view of the consumption over time.
-### Monthly rollover of purchased CI/CD minutes
+### Monthly rollover of purchased units of compute
-If you purchase additional CI/CD minutes and don't use the full amount, the remaining amount rolls over to
+If you purchase additional units of compute and don't use the full amount, the remaining amount rolls over to
the next month.
For example:
-- On **April 1**, you purchase `5,000` additional CI/CD minutes.
-- During April, you use only `3,000` of the `5,000` additional minutes.
-- On **May 1**, the unused minute roll over, so you have `2,000` additional minutes available for May.
+- On **April 1**, you purchase `5,000` additional units of compute.
+- During April, you use only `3,000` of the `5,000` additional units of compute.
+- On **May 1**, the unused units of compute roll over, so you have `2,000` additional units of compute available for May.
-Additional CI/CD minutes are a one-time purchase and do not renew or refresh each month.
+Additional units of compute are a one-time purchase and do not renew or refresh each month.
## What happens when you exceed the quota
-When the quota of CI/CD minutes is used for the current month, GitLab stops
+When the compute quota is used for the current month, GitLab stops
processing new jobs.
- Any non-running job that should be picked by shared runners is automatically dropped.
@@ -306,29 +311,29 @@ processing new jobs.
- Any running job can be dropped at any point if the overall namespace usage goes over-quota
by a grace period.
-The grace period for running jobs is `1,000` CI/CD minutes.
+The grace period for running jobs is `1,000` units of compute.
-Jobs on project runners are not affected by the quota of CI/CD minutes.
+Jobs on project runners are not affected by the compute quota.
### GitLab SaaS usage notifications
On GitLab SaaS an email notification is sent to the namespace owners when:
-- The available CI/CD minutes are below 30% of the quota.
-- The available CI/CD minutes are below 5% of the quota.
-- All CI/CD minutes have been used.
+- The remaining units of compute is below 30% of the quota.
+- The remaining units of compute is below 5% of the quota.
+- All the compute quota has been used.
### Special quota limits
In some cases, the quota limit is replaced by one of the following labels:
-- **Unlimited minutes**: For namespaces with unlimited CI/CD minutes
-- **Not supported minutes**: For namespaces where active shared runners are not enabled
+- **Unlimited**: For namespaces with unlimited compute quota.
+- **Not supported**: For namespaces where active shared runners are not enabled.
-## Reduce consumption of CI/CD minutes
+## Reduce compute quota usage
-If your project consumes too many CI/CD minutes, there are some strategies you can
-use to reduce your CI/CD minutes usage:
+If your project consumes too much compute quota, there are some strategies you can
+use to reduce your usage:
- If you are using project mirrors, ensure that [pipelines for mirror updates](../../user/project/repository/mirror/pull.md#trigger-pipelines-for-mirror-updates)
is disabled.
@@ -342,23 +347,23 @@ use to reduce your CI/CD minutes usage:
- If you are working from a fork and you submit a merge request to the parent project,
you can ask a maintainer to run a pipeline [in the parent project](merge_request_pipelines.md#run-pipelines-in-the-parent-project).
-If you manage an open source project, these improvements can also reduce CI/CD minutes
+If you manage an open source project, these improvements can also reduce compute quota
consumption for contributor fork projects, enabling more contributions.
See our [pipeline efficiency guide](pipeline_efficiency.md) for more details.
-## Reset CI/CD minutes used **(PREMIUM SELF)**
+## Reset compute usage **(PREMIUM SELF)**
-An administrator can reset the number of minutes used by a namespace for the current month.
+An administrator can reset the compute usage for a namespace for the current month.
-### Reset minutes for a personal namespace
+### Reset usage for a personal namespace
1. Find the [user in the admin area](../../user/admin_area/index.md#administering-users).
1. Select **Edit**.
-1. In **Limits**, select **Reset pipeline minutes**.
+1. In **Limits**, select **Reset compute usage**.
-### Reset minutes for a group namespace
+### Reset usage for a group namespace
1. Find the [group in the admin area](../../user/admin_area/index.md#administering-groups).
1. Select **Edit**.
-1. In **Permissions and group features**, select **Reset pipeline minutes**.
+1. In **Permissions and group features**, select **Reset compute usage**.