CDKのサンプルプロジェクトの作成
CDKのインストール
下記記事を参考
https://qiita.com/ShiroUz/items/fad73b29b77f289c22e1
クレデンシャルの適用
下記記事を参考
https://qiita.com/ShiroUz/items/35a83b1232ff800fb048
CDKでサンプルアプリの作成
SiroUz simple-app % cdk init sample-app --language=typescript
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! !!
!! This software has not been tested with node v17.5.0. !!
!! You may to encounter runtime issues, and should switch to a supported release. !!
!! !!
!! As of the current release, supported versions of node are: !!
!! - ^12.7.0 !!
!! - ^14.5.0 !!
!! - ^16.3.0 !!
!! !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Applying project template sample-app for typescript
# Welcome to your CDK TypeScript project!
You should explore the contents of this project. It demonstrates a CDK app with an instance of a stack (`SamplePipelineStack`)
which contains an Amazon SQS queue that is subscribed to an Amazon SNS topic.
The `cdk.json` file tells the CDK Toolkit how to execute your app.
## Useful commands
* `npm run build` compile typescript to js
* `npm run watch` watch for changes and compile
* `npm run test` perform the jest unit tests
* `cdk deploy` deploy this stack to your default AWS account/region
* `cdk diff` compare deployed stack with current state
* `cdk synth` emits the synthesized CloudFormation template
Initializing a new git repository...
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
Executing npm install...
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated sane@4.1.0: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added
✅ All done!
SiroUz simple-app % tree -I node_modules -L 3
.
├── README.md
├── bin
│ └── simple-app.ts
├── cdk.json
├── jest.config.js
├── lib
│ └── simple-app-stack.ts
├── package-lock.json
├── package.json
├── test
│ └── simple-app.test.ts
└── tsconfig.json
3 directories, 9 files
S3バケットを作成する。
lib/simple-app-stack.tsを以下のように修正する。
import { Stack, StackProps } from 'aws-cdk-lib';
import { Construct } from 'constructs';
// import * as sqs from 'aws-cdk-lib/aws-sqs';
import { Bucket, BucketEncryption } from 'aws-cdk-lib/aws-s3';
export class SimpleAppStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
const bucket = new Bucket(this, 'MySimpleAppBucket', {
encryption: BucketEncryption.S3_MANAGED,
})
// The code that defines your stack goes here
// example resource
// const queue = new sqs.Queue(this, 'SimpleAppQueue', {
// visibilityTimeout: cdk.Duration.seconds(300)
// });
}
}
cdkでのデプロイ
SiroUz simpole-app % cdk bootstrap aws://726179501813/us-east-1
SiroUz simple-app % cdk deploy
...
✅ SimpleAppStack
...
SimpleAppStackと出ていれば、デプロイの成功。