我对同样的效果很感兴趣,而且在管道运行之前阶段 id 似乎是不可预测的(https://stackoverflow.com/a/33402876/6943587),因为我假设它们取决于阶段配置,阶段计数、并行化、嵌套等。但是,我注意到阶段的 id 在相同或几乎相同的管道运行之间是一致的。
例如,如果您创建一个触发管道运行的 PR (#22)。然后稍后您将新提交推送到该分支,触发另一个管道运行。这两个运行之间的阶段 id 将是相同的,前提是它们具有相似的(如果不相同的话)管道流(即它们都触发/跳过了相同的阶段)。那么每个阶段的网址之间的唯一区别就是BUILD_ID
.
因此,两个 s 的第一阶段和第二阶段的 urlBUILD_ID
将是......
BUILD_ID
= 1
# Stage 1
https://<jenkins-host>.com/blue/organizations/jenkins/<repo>/detail/PR-22/1/pipeline/15`
# Stage 2
https://<jenkins-host>.com/blue/organizations/jenkins/<repo>/detail/PR-22/1/pipeline/45
BUILD_ID
= 2
# Stage 1
https://<jenkins-host>.com/blue/organizations/jenkins/<repo>/detail/PR-22/2/pipeline/15`
# Stage 2
https://<jenkins-host>.com/blue/organizations/jenkins/<repo>/detail/PR-22/2/pipeline/45
当然,这并不理想,因为它需要验证和更新阶段 id 以对管道进行重大更改,并且不适合高度可变的管道流。但它对我有用,所以我想我会分享。