我有一些未设置的作业以“阅读”的方式使用资源A.所有这些工作都可以同时运行。
我也有一份“写”到A的工作。这份工作不能与“读者”工作并行运行。
我如何为Jenkins Pipelines解决这个问题?有没有办法实现简单的“读写锁定”?看起来lock()
只能用于实现独占锁。
有一种方法,用标签创建多个资源,例如'mylabel'(你有很多读者)。我相信数量参数is poorly documented。
读卡器锁
lock(label: 'mylabel', quantity: 1) {
...
作家锁 - 没有数量 - 所以这是默认值,需要全部
lock(label: 'mylabel') {
...