Cho phép sử dụng các open source software development framework để define các resource sẽ sử dụng trên AWS, bằng các ngôn ngữ phổ biến như TypeScript, Python, Java, .Net
- Có thể sử dụng SAM CLI để test CDK app (run command cdk synth)
Constructs
- Các level khởi tạo resource trong CDK, hiểu giống như tạo 1 object mới bằng contructor trong java
- Level 1 (CFN Resource): Tên bắt đầu bằng Cfn, phải chỉ định tất cả các properties mà bắt buộc, như s3 bucket name
- Level 2: các method của Object level 1 return ra object Level 2
- Level 3 (Pattern): Các resource liên quan tới nhau
Command
- npm install -g aws-cdk-lib
- cdk init app
- cdk synth
- cdk bootstrap: Kiểu như chuẩn bị môi trường để có thể sử dụng được CDK (cdk bootstrap
- Phải run command này với mỗi account + region: aws://{account}/{region})
- Lỗi nếu không bootstrap: “Policy contains a statement with one or more invalid principal”
- cdk deploy
- cdk diff
- cdk destroy
Test
Sử dụng CDK Assertion module để test, tích hợp cùng các framework như Jest (JS) hoặc PyTest (Python…)
- Fine-grained Assertions: Test config của resource
- Snapshot Tests: Test template version sau giống template version trước
- Template.fromStack(MyStack): Khởi tạo template từ Stack trong Code
- Template.fromString(mystring) : Khởi tạo stack từ template cloudformation bên ngoài code