aws codepipeline / 当前取消 运行 新提交的管道

aws codepipeline / cancel currently running pipeline on new commits

codepipeline 新手;

user A pushes, pipeline `run A` is starting.  

1 min. later, user B pushes, `run A` in progress, \
new pipeline `run B` is stacked pending, until `run A` is done.

是否可以进行配置,以便在堆叠新的 运行(提交)时自动取消 运行ning 管道?

'Translating' 上面的例子::

user A pushes, pipeline `run A` is starting.  

1 min. later, user B pushes, `run A` is cancelled,
`run B` starts right away

TL;DR CodePipeline 没有开箱即用的执行中断,但您可以自己实现。

Pipeline executions work 通过应用三个规则:

  1. 处理执行时锁定阶段
  2. 后续执行等待关卡解锁
  3. 等待的执行被最近的执行所取代

处决耐心等待轮到他们。 CLI 和 SDK 具有 stop an execution and get info about executions 的 API。您可以通过 运行 在每次新执行开始时使用这些 API 的一些业务逻辑自己实现执行中断。

可以,但是应该吗? 1:1 提交与成功的管道执行之间的对应关系确保您始终拥有干净、经过测试的回滚状态。