Skip to main content

AWS Cloud Development Toolkit

Project description

cdk-toolkit

AWS CDK Toolkit

Features

[ ] CICD
[X] CodeCommit - Create CodeCommit Repository
[ ] CodeCommit - Existing CodeCommit Repository [X] CodeBuild - Docker Image Builder
[ ] CodeDeploy - EKS
[ ] CodeDeploy - ECS
[ ] CodeDeploy - Lambda
[ ] CodePipeline - Source, Build, Deploy
[ ] CONNECTION
[ ] VPC - Create VPC [ ] VPC - Existing VPC [ ] CONTAINER
[X] ECR - Create ECR Repository
[ ] ECR - Existing ECR Repository
[ ] EKS - Create EKS Cluster
[ ] EKS - Existing EKS Cluster
[ ] EKS - Deploy Kubernetes Dashboard
[ ] DATABASE
[ ] RDS - Create PostGres RDS Instance [ ] RDS - Existing PostGres RDS Instance
[ ] RDS - Create PostGres Users, Tables, Functions
[ ] DynamoDB - Create DynamoDB Instance
[ ] DynamoDB - Existing DynamoDB Instance
[ ] DynamoDB - Create DynamoDB Users, Tables, Etc.
[ ] DATALAKE
[ ] LakeFormation - Register S3 Bucket
[ ] LakeFormation - S3 Bucket Glue Crawler
[ ] NOTEBOOK
[ ] SageMaker - Create SageMaker Instance
[ ] SageMaker - Create SageMaker ML Model Endpoint
[ ] NOTIFICATION
[ ] SNS - Create SNS Topic
[ ] SQS - Create SQS Topic
[ ] PERMISSION
[ ] IAM - Create an IAM Service Role
[ ] IAM - Add IAM Service Role Inline Permissions
[ ] SERVERLESS
[ ] Lambda - Create Lambda Function
[ ] STORAGE
[X] S3 - Create S3 Bucket

Getting Started

Install AWS CDK

npm install -g aws-cdk

Create CDK Project Directory

mkdir cdk-proj
cd cdk-proj

Create CDK Project Environment

cdk init app --language python
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install -r requirements.txt

Add Stacks to CDK Project

from aws_cdk import ( 
    Stack, 
)
from constructs import Construct

from cdk_toolkit import storage

class CdkProjStack(Stack): 
    def __init__(self, scope: Construct, construct_id: str, **kwargs) -> None:
        super().__init__(scope, construct_id, **kwargs)
        bucket_name = "cdk-proj-bucket-name-test"
        s3_bucket = storage.createS3Bucket(self, bucket_name, versioned=False)

Update CDK Project App

# Sample App
import aws_cdk as cdk
from aws_cdk import Aws, Stack, Tags

from cdk_proj.cdk_proj_stack import CdkProjStack

# AWS CDK App
app = cdk.App()

# AWS CDK Environment
AWS_ACCOUNT_NUMBER="111111111"
AWS_ACCOUNT_REGION="us-west-2"
cdk_environment = cdk.Environment(account=AWS_ACCOUNT_NUMBER, region=AWS_ACCOUNT_REGION)

# Project Stack
CdkProjStack(app, "CdkProjStack", env=cdk_environment)

app.synth()

Create CDK Bootstrap

AWS_ACCOUNT_NUMBER=111111111
AWS_ACCOUNT_REGION=us-west-2
cdk bootstrap aws://$AWS_ACCOUNT_NUMBER/$AWS_ACCOUNT_REGION ---toolkit-stack-name CDK-TOOLKIT --qualifier cdktoolkit

Deply CDK Project

# Preview CDK Project Stack Deployment
cdk diff

# Deploy CDK Project Stack(s)
cdk deploy

# Destroy CDK Project Stack(s)
cdk destroy

Resources

Federated Multi-Account Access for AWS CodeCommit

AWS CDK API Documentation

AWS CDK + EKS!!!!!!!!!!!

https://blog.dennisokeeffe.com/blog/2021-08-12-deploying-an-eks-fargate-cluster-with-the-aws-cdk

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cdk-toolkit-0.0.89.tar.gz (14.0 kB view hashes)

Uploaded Source

Built Distribution

cdk_toolkit-0.0.89-py3-none-any.whl (19.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page