Deploy stacks in parallel with AWS CDK Pipelines


The AWS CDK Pipelines is a higher-level construct that creates a customized AWS Codepipeline specifically for deploying CDK stacks on AWS Accounts and automatically manages the following:

  • Stack dependency order.
  • Asset publishing.
  • Keeping the pipeline up-to-date as the CDK apps change.
  • Using stack outputs later on in the pipeline.

The following tutorial from the AWS docs helps you with setting up an AWS CDK Pipeline. The default CDK Pipeline contains example code to deploy a stack on a single stage.

But if you have multiple test accounts, then it would be nice to add them to the same stage in AWS CDK Pipeline.

To do that, you first have to create a stage and add the first account that you want to deploy an application for:

// Create a stage called Test
const testStage = pipeline.addApplicationStage(
  new PipelineStage(this, 'Test', {
    // Deploy to test account
    env: {
      account: process.env.TEST_AWS_ACCOUNT,
      region: process.env.TEST_AWS_REGION,
    },
    vpcCidr: process.env.TEST_VPC_CIDR,
  })
);

For the deployment of the first application, it does two actions in the stage; “prepare” and “deploy”.

These are linked to “RunOrder: 1” and “RunOrder: 2” respectively. Next, we need to add the second application that we want to add to the “Test” stage.

But before we do we need to update the “RunOrder”, otherwise, the actions that are linked to the second application will be triggered sequentially.

// By subtracting nextSequentialRunOrder with -2 we reset the RunOrder back to 1
testStage.nextSequentialRunOrder(-2);
testStage.addApplication(
  new PipelineTGStage(this, 'Test-tgw', {
    // Deploy to test transit gateway
    env: {
      account: process.env.TEST_TG_AWS_ACCOUNT,
      region: process.env.TEST_TG_AWS_REGION,
    },
  })
);

If we commit the code it will update the CDK Pipelines automatically and the updated stage has two simultaneous stack deploys now:

AWS Console Codepipeline stage with multiple actions (stacks)
AWS Console Codepipeline stage with multiple actions (stacks)

Elevate Your AWS CDK App with Expert Review & Guidance

Unlock the full potential of your AWS CDK app with our Expert AWS CDK App Code Review Service, conveniently delivered through AWS IQ.

Gain invaluable insights, minimize risks, and set a clear path forward for your project’s success.



Danny Steenman

A Senior AWS Cloud Engineer with over 9 years of experience migrating workloads from on-premises to AWS Cloud.

I have helped companies of all sizes shape their cloud adoption strategies, optimizing operational efficiency, reducing costs, and improving organizational agility.

Connect with me today to discuss your cloud aspirations, and let’s work together to transform your business by leveraging the power of AWS Cloud.

I need help with..
stacked cubes
Improving or managing my CDK App.Maximize the potential of your AWS CDK app by leveraging the expertise of a seasoned CDK professional.
Reducing AWS Costs.We can start by doing a thorough assessment of your current AWS infrastructure, identifying areas with potential for cost reduction and efficiency improvement.
Verifying if my infrastructure is reliable and efficient.We’ve created a comprehensive AWS Operations Checklist that you can utilize to quickly verify if your AWS Resources are set up reliably and efficiently.