-
Bug
-
Resolution: Unresolved
-
Minor
-
None
We have a custom plugin which adds the notion of a "staged" pipeline to Jenkins which we are trying to contribute to Jenkins. Fixing this
defect is the first step in that process. The plugin adds the concept of "controller" and "component" jobs for each stage in the pipeline. One thing we put in was a QueueTaskDispatcher to logically tie the jobs that make up a stage together. We wanted to make it so that while some build was running in a given stage in the pipeline no other build would enter that stage. We did this, and found that our QueueTaskDispatcher and the one implemented in the dependency-queue-plugin are incompatible with each other. In many cases our builds ended up deadlocked in the queue. Unfortunately, many of the plugins we use have a dependency on the dependency-queue-plugin so we could not remove it. We needed a way to disable the plugin.
A while back we created a customized version of the dependency-queue-plugin that allows jobs to disable the behavior. The default is to have things continue to work as they have done in the past, but now an option "Block if upstream jobs are queued" that can be optionally deselected to disable this behavior.
We would like to get that code back into Jenkins so that everyone can benefit from it.
- duplicates
-
JENKINS-30998 Need way to disable DependencyQueueDispatcher
- Closed