CDK CI/CD Wrapper
The CDK CI/CD Wrapper is a comprehensive solution that streamlines the delivery of your AWS Cloud Development Kit (CDK) applications. It provides a robust and standardized multi-stage CI/CD pipeline, ensuring high quality and confidence throughout the development and deployment process.
Table of Contents
Introduction
The CDK CI/CD Wrapper builds upon the success of the aws-cdk-cicd-boot-sample and takes it a step further by providing additional tools and features to simplify and standardize the multi-stage CI/CD process for your Infrastructure as Code (IaC) projects.
Features
- Multi-staged CI/CD Pipeline: Seamlessly deploy your CDK applications across multiple stages (e.g., DEV, INT, PROD) and AWS accounts.
- Security Scanning: Perform security scanning on dependencies and codebase, blocking the pipeline in case of CVE findings.
- License Management: Manage licenses for NPM and Python dependencies, ensuring compliance with your organization's policies.
- Private NPM Registry: Securely store and utilize private NPM libraries.
- Customizable Pipeline: Tailor the CI/CD pipeline to your project's specific needs with built-in dependency injection.
- Workbench Deployment: Develop and experiment with your solutions in isolation before introducing them to the delivery pipeline.
- Pre/Post Deploy Hooks: Execute custom scripts before and after deployments in each stage (e.g., unit tests, functional tests, load testing).
- Centralized Compliance Logs: Store compliance logs in pre-configured S3 buckets on a per-stage/environment basis.
- Lambda Layer Support: Build and scan dependencies for Python Lambda Layers.
Getting Started
Prerequisites
Before you begin, ensure that you have the following dependencies installed:
- AWS Account (RES/DEV/INT/PROD)
- macOS or Cloud9 with Ubuntu Server 22.04 LTS Platform in the RES Account
- Bash/ZSH terminal
- Docker version >= 24.0.x
- AWS CLI v2 (installation guide)
- AWS credentials and profiles for each environment in
~/.aws/config(configuration guide) - Node.js >= v18.17._ && NPM >= v10.2._
- jq command-line JSON processor (jq-1.7)
For developing Python Lambdas, you'll also need:
- Python >= 3.11
- Pipenv 2023.* (installation guide)
Installation
-
Clone the CDK CI/CD Wrapper repository:
git clone https://github.com/your-repo/cdk-cicd-wrapper.git cd cdk-cicd-wrapper
-
Install the required dependencies:
npm install
Usage
Defining Stages
The CDK CI/CD Wrapper comes with a default set of stages (DEV, INT, PROD), but you can easily extend or modify these stages to suit your project's needs. Follow the step-by-step guide in the documentation to define your desired stages.
Configuring Stacks
Configure the CDK stacks you want to deploy in each stage. The CDK CI/CD Wrapper allows you to specify which stacks should be deployed in each stage, giving you granular control over your deployment process.
Customizing CI/CD Steps
Tailor the CI/CD pipeline to meet your project's specific requirements. The CDK CI/CD Wrapper provides built-in dependency injection, allowing you to customize the CI/CD steps seamlessly.
Contributing
Contributions to the CDK CI/CD Wrapper are welcome! If you'd like to contribute, please follow the guidelines outlined in the CONTRIBUTING.md file.
License
This project is licensed under the Apache 2.0 License.
Metadata
Release files for cdklabs.cdk-cicd-wrapper 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cdklabs_cdk_cicd_wrapper-1.0.2.tar.gz | 783.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cdklabs_cdk_cicd_wrapper-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.6 MB
Release files / cdklabs_cdk_cicd_wrapper-1.0.2.tar.gz
| Download URL | cdklabs_cdk_cicd_wrapper-1.0.2.tar.gz |
|---|---|
| Size | 783.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6518094b3fccd9856e92bcdcd229841440ac773e53e5df4166048a0b26dcc97a
|
|
BLAKE2b-256 checksum How to use checksums |
e1628e92dfeed43a56edb94ba6cdac09e522c3613f1e93dca4dde14c5968894b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.14.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.
Transparency logRelease files / cdklabs_cdk_cicd_wrapper-1.0.2-py3-none-any.whl
| Download URL | cdklabs_cdk_cicd_wrapper-1.0.2-py3-none-any.whl |
|---|---|
| Size | 782.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c75569dc4ee43fa414cd1708a1d6d91a9bc8bb867e6811cb706571205787195f
|
|
BLAKE2b-256 checksum How to use checksums |
35faec8afb4b26d7db0ace6a978f4c8f347f753c7f3b3897635b11f148fc335e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.14.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 26, 2026.
Transparency log