CDK Pipeline is a clever construct that makes continuously deploying your application and infrastructure super easy. The pipeline even has the ability to update itself or “mutate” if your commits include changes to the pipeline itself. This behavior is controlled by selfMutation
property of the pipeline constructor and is true
by default. Once the pipeline updates itself – it also restarts itself, so that new changes can take effect.
But if you create your CDK pipeline with regular AWS Pipeline as a base e.g.
const rawPipeline = new Pipeline(this, 'RawPipeline', { ... }); const pipeline = new CodePipeline(this, 'Pipeline', { codePipeline: rawPipeline, ... });
suddenly the pipeline won’t auto-restart after the mutation. What is happening? Continue reading →