You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/platform/pipelines/pipeline-settings.md
+54Lines changed: 54 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -89,6 +89,60 @@ These concurrency limits are *account wide* and NOT per pipeline.
89
89
90
90
This setting can only be edited in Team and Enterprise plans. You can set it at the account scope only. You can configure the limit anywhere between 2 and the maximum.
91
91
92
+
### Project-Level Pipeline Execution Concurrency
93
+
94
+
:::note
95
+
Currently, this feature is behind the feature flag `PIPE_PROJECT_LEVEL_EXECUTION_CONCURRENCY`. Contact [Harness Support](mailto:[email protected]) to enable the feature.
96
+
:::
97
+
98
+
You can take fine-grained control of how many pipelines run concurrently in each of your projects. By splitting your account-wide concurrency limit into a **High-Priority** and **Low-Priority** partition, you guarantee reserved execution slots for critical projects while preventing any one project from consuming all available capacity.
99
+
100
+
You can configure this at the account scope only. Navigate to **Account Settings** -> **General** -> **Default Settings** -> **Pipeline** -> **CONCURRENCY MANAGEMENT**.
101
+
102
+
#### How to Configure
103
+
104
+
1.**Concurrent Active Pipeline Executions**
105
+
- Enter your account’s **total** concurrency limit (by default, it is `1000`).
106
+
- Click **Restore to Default** to reset to the system default.
107
+
108
+
2.**Pipeline Execution Priority**
109
+
- Select the partition you’re defining: **High** or **Low**.
110
+
- Click **Restore to Default** to revert.
111
+
112
+
3.**Concurrency Limit**
113
+
- Specify how many slots to reserve for the selected partition (must be less than your total).
114
+
- Example: setting `200` reserves 200 slots for High (leaving 800 for Low).
115
+
116
+
4.**Prioritised Projects**
117
+
- Select one or more projects to belong to this partition.
118
+
- All unselected projects automatically fall into the opposite partition.
119
+
120
+
<divalign="center">
121
+
<DocImage path={require('./static/project-concurrency.png')} width="100%" height="100%" title="Click to view full size image" />
122
+
</div>
123
+
124
+
#### How It Works
125
+
126
+
**Partition Approaches**
127
+
You have two options for carving up your total concurrency:
128
+
129
+
1.**High-Priority Partition (Whitelist)**
130
+
- You define a **High** slot count and explicitly specify which projects belong there.
131
+
- All remaining (and any newly created) projects automatically fall into Low-Priority.
132
+
-**When to use**: reserve slots for a handful of critical projects (e.g. security fixes, patch releases), so they always start quickly.
133
+
134
+
2.**Low-Priority Partition (Blacklist)**
135
+
- You define a **Low** slot count and explicitly specify which projects belong there.
136
+
- All remaining (and any newly created) projects automatically fall into High-Priority.
137
+
-**When to use**: throttle noisy or build-heavy projects (e.g. CI pipelines) to free up capacity for everything else.
138
+
139
+
-**Runtime behavior**
140
+
1. When both **High** (200) and **Low** (800) are full, new **High** executions queue—but start immediately as soon as **either** partition frees a slot (allowing High to spill over up to the full 1000 over time).
141
+
2. New **Low** executions consume only the Low partition; if those 800 are full, they queue until a Low slot opens.
142
+
3. On dequeuing mixed queues:
143
+
-**High** pipelines start on the first available slot in **High** or **Low**.
144
+
-**Low** pipelines wait for the next available **Low** slot.
145
+
92
146
### Pipeline Timeout and Stage Timeout (execution time limits)
93
147
94
148
The timeout limit is the maximum allowable time a stage or pipeline can run.
0 commit comments