「実践 AWS CDK」に記載されている trail.addS3EventSelector() でエラーが出たので修正してみた
前回に引き続き、「実践 AWS CDK」の修正です。TypeScript や Node.js や AWS CDK も、その周辺ライブラリなどのエコシステムも進化が早い……!
ちなみに現時点の各種使用バージョンは以下の通りです。
Node.js: v12.16.1
TypeScript: 3.9.7
ESLint: 7.7.0
Prettier: 2.0.5
AWS CDK: 1.60.0
対象コード
「第5章 感情分析システムを作ろう」の「5.6.1 CloudTrail の設定」で S3 のイベント証跡を記録するためのコードになります。
trail.addS3EventSelector([`arn:aws:s3:::${inputBucket.bucketName}/`], {
readWriteType: cloudtrail.ReadWriteType.WRITE_ONLY,
});
エラー内容
型 'string' を型 'S3EventSelector' に割り当てることはできません。ts(2322)
error TS2322: Type 'string' is not assignable to type 'S3EventSelector'.
S3EventSelector のインタフェースは下記で公開されていますのでそれに合わせる形で修正します。
修正後
trail.addS3EventSelector([{ bucket: inputBucket }], {
readWriteType: cloudtrail.ReadWriteType.WRITE_ONLY,
});
無事コンパイルエラーが消えました。🎉
😉