- java-builder
- mininet
+- project:
+ name: throttle-ci-jobs
+ jobs:
+ - "{project-name}-ci-jobs"
+
+ throttle-enabled: true
+ throttle_categories:
+ - 'cat1'
+ - 'cat2'
+ throttle-max-per-node: 3
+ throttle-max-total: 2
+ throttle-option: 'category'
+
+ project-name: throttle-ciman
+
- project:
name: ci-jobs-view
views:
(default: true)
:submodule-timeout: Timeout (in minutes) for checkout operation.
(default: 10)
+ :throttle_categories: List of categories to throttle by.
+ :throttle-enabled: Whether or not to enable throttling on the job.
+ (default: true)
+ :throttle-max-per-node: Max jobs to run on the same node. (default: 1)
+ :throttle-max-total: Max jobs to run across the entire project. - 0
+ means 'unlimited' (default: 0)
+ :throttle-option: Throttle by the project or by list of categories
+ defined in the throttle plugin configuration. (options: 'project',
+ 'category'; default: project)
:gerrit_verify_triggers: Override Gerrit Triggers.
:gerrit_trigger_file_paths: Override file paths which can be used to
stream: master
submodule-recursive: true
submodule-timeout: 10
+ throttle_categories: []
+ throttle-enabled: false
+ throttle-max-per-node: 1
+ throttle-max-total: 0
+ throttle-option: 'project'
gerrit_trigger_file_paths:
- compare-type: REG_EXP
- lf-infra-properties:
project: '{project}'
build-days-to-keep: 7
+ - throttle:
+ categories: '{obj:throttle_categories}'
+ enabled: '{throttle-enabled}'
+ max-per-node: '{throttle-max-per-node}'
+ max-total: '{throttle-max-total}'
+ option: '{throttle-option}'
parameters:
- lf-infra-parameters:
--- /dev/null
+---
+features:
+ - |
+ Support for the `Throttle Plugin`_ is added to JJB jobs so static
+ build servers can restrict the number of concurrent JJB jobs ran at
+ the same time.
+
+ This must be explicitly enabled by setting `throttle-enabled` on the
+ jobs.
+
+ .. _Throttle Plugin: https://plugins.jenkins.io/throttle-concurrents