PHPカンファレンス北海道 2019最高でしたね!!
参加者のみなさま、スピーカーのみなさま、スポンサーのみなさま、スタッフのみなさま、本当にありがとうございました!!
そして、アフターハックに参加していますなう!
株式会社ゆめみさん会場提供ありがとうございます!!
AWS CDKのはなし
今日の資料です!https://t.co/9gMrSe3myt
— わたなべ (@kaz_29) September 21, 2019
#phpcondo
本編の発表で出てきたAWS cdk の話をアンカンファレンスでするよ! #phpcondo pic.twitter.com/5uejFBvDyE
— わたなべ (@kaz_29) September 21, 2019
@kaz_29さんの発表の中で出てきて、アンカンファレンスでもお話いただいたAWS CDKがとても気になったので触ってみました!
AWS CDK ?
AWS CDKのインストール
よし! #アフターハックゆめみ pic.twitter.com/g8P4B11tlm
— 青ごへいもち (@blue_goheimochi) September 22, 2019
npm install -g aws-cdk
cf. Getting Started With the AWS CDK - AWS Cloud Development Kit (AWS CDK)
Hello World Tutorial
公式にチュートリアルがあるので、その通りにやってみる。
1. Create the app directory.
mkdir ~/hello-cdk
cd hello-cdk
2. Initialize the app.
cdk init --language javascript
TypeScriptでやりたいが「使い慣れたプログラミング言語」ではないので一旦JavaScriptで試す。
(JavaScriptが使い慣れているのか?と言われるとあやしいですが)
cdk ls
を実行すると HelloCdkStack
がデフォルトで存在するのがわかります。
3. Add code to the app.
@aws-cdk/aws-s3
をインストール
npm install @aws-cdk/aws-s3
lib/hello-cdk-stack.js
を編集
const cdk = require('@aws-cdk/core'); const s3 = require('@aws-cdk/aws-s3'); class HelloCdkStack extends cdk.Stack { constructor(scope, id, props) { super(scope, id, props); new s3.Bucket(this, 'MyFirstBucket', { versioned: true }); } } module.exports = { HelloCdkStack }
Bucketを作るのかな?
4. Compile the app, if necessary.
JavaScriptはコンパイルいらない。
cdk synth
たぶん、AWS CloudFormationのファイル(?よくわかっていない)が cdk.out
のディレクトリの下に吐かれている(のだと思う)
6. Test the app.
Test?S3のバケットができてたからOKやな??
7. If there are any issues, loop through modify, compile (if necessary), deploy, and test again.
lib/hello-cdk-stack.js
を変更してみる
new s3.Bucket(this, 'MyFirstBucket', { versioned: true, encryption: s3.BucketEncryption.KMS_MANAGED });
encription
の設定を追加。
cdk diff
で差分が確認できるけどわかりやす。
再度deploy
cdk deploy
ちゃんと暗号化が有効になった!
まとめ
S3のバケットを作成するという簡単なサンプルだったけど雰囲気はつかめました!
ある程度慣れた言語ということもあり見通しもとてもよく感じます。IDEがそのまま使えたりしてコードを追うのも普段のようにできる感じっぽさがあります。
APIリファレンスも充実しているっぽい(一部非対応のものbetaのものがある)ので、リファレンスをみながら色々試行錯誤してみようと思います。
よし! #アフターハックゆめみ pic.twitter.com/g8P4B11tlm
— 青ごへいもち (@blue_goheimochi) September 22, 2019
JavaScriptで試す #アフターハックゆめみ pic.twitter.com/oClvuKh8rX
— 青ごへいもち (@blue_goheimochi) September 22, 2019
deploy!!
— 青ごへいもち (@blue_goheimochi) September 22, 2019
S3に新しいバケットできてた!! pic.twitter.com/LHroNOkSgp
cdk diffで差分見れる。わかりやすい。 #アフターハックゆめみ pic.twitter.com/fbxJH7nddx
— 青ごへいもち (@blue_goheimochi) September 22, 2019
変更したやつを再度デプロイ!ちゃんと暗号化が有効になった! #アフターハックゆめみ pic.twitter.com/97PLKUWZhb
— 青ごへいもち (@blue_goheimochi) September 22, 2019