I know in Jenkins you can avoid duplicate builds from running on top of each other by leaving the “Execute concurrent builds if necessary” checkbox unchecked.
However, the way it determines a concurrent build is just whether the job itself is running. I want it to determine concurrent build based on whether all the parameters that are passed into the job are the same.
So if I have a job in the queue with parameters foo and bar, then queuing one with foo and baz should actually queue, but queuing another with parameters foo and bar should just drop it.
Is this possible?
I believe that Jenkins will automatically kill off a queued job if the PREVIOUSLY queued job has the exact same parameters. If a job is queued with parameters foo and bar, then the same job is queued with foo and bar again, the second instance is dropped.
In your example (first job with foo and bar, second job with foo and baz, third job with foo and bar), I believe that all jobs will be queued.