A script for posting AWS daily billing to Slack
- yarn(v1)
- AWS CDK ToolkitV(v2)
- esbuild
出力されたシークレットのARNを書き留める
aws secretsmanager create-secret \
--name '<Secret Name>' \
--secret-string '{"SLACK_WEBHOOK_URL": "https://hooks.slack.com/services/XXXXXXXXX/XXXXXXXXX/XXXXXXXXXXXXXXXXXX"}'
- 環境ごとの設定は以下のようなcdk.context.jsonを用意する
{
"<environment key>": {
"name": "environment name",
"reporter": {
"type": "slack-webhook",
"webhookUrlSecretsArn": "AWS Secrets Manager Secret ARN"
}
}
}
例: dev環境
{
"dev": {
"name": "dev",
"stackNameSuffix": "dev",
"reporter": {
"type": "slack",
"slackWebhookUrlSecretsManagerArn": "<Secret ARN>"
}
}
}
cdk deploy
コマンドの-c
/--context
オプションで環境名を指定してデプロイする。
cdk deploy -c environemnt=<env name>
- build
yarn watch
- test
yarn test
cdk destroy
aws secretsmanager delete-secret --secret-id 'prod/DailyCost'