@cloudadder/cdk-constructs-demo
v0.0.10
Published
The purpose of this demo is to show how to use the AWS CDK constructs to create reusable components.
Downloads
28
Readme
AWS CDK Constructs Demo
The purpose of this demo is to show how to use the AWS CDK constructs to create reusable components.
We will focus on the following use case:
- A business needs to create a way to manage cost control across multiple Deployments and Environments in their AWS accounts. A construct will be created to tag environments to assit in cost control reporting. The construct will also check certain resources for typical cost saving patterns, such as S3 Buckets with Intelligent-Tiering enabled.
Prerequisites
This demo focuses on the using the most common way to write CDK constructs using the typescript language.
- install node.js
Installation and Usage
npm install @cloudadder/cdk-constructs-demo
import { CloudCostManager } from '@cloudadder/cdk-constructs-demo';
import { Stack, StackProps } from 'aws-cdk-lib';
import { Construct } from 'constructs';
export class CloudCostManagerStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
new CloudCostManager(this, 'CloudCostManager', {
customerName: 'acme-co',
envName: 'staging',
});
}
}
Handy
- To update npm libraries, run:
npm outdated
npx npm-check-updates -u
npm install
To enable github to raise pull requests then in github create a token and then a secret for the repo called
PROJEN_GITHUB_TOKEN
.Update to the latest cdk get the latest cdk version from here and set the varible below.
CDK_VERSION = '2.17.0'
mkdir cdk-stack
cd cdk-stack
npx projen new awscdk-app-ts --cdkVersion=$CDK_VERSION
cd ..
mkdir cdk-construct
npx projen new awscdk-app-ts --cdkVersion=$CDK_VERSION
Links
License
Distributed under the Apache-2.0 license.