かもメモ

自分の落ちた落とし穴に何度も落ちる人のメモ帳

Serverless で再 deploy したらエラーになった

一度 AWS に deploy してた Serverless 化したアプリを再デプロイしようとしたらエラーになってしまったのメモ。
$ sls deploy で再デプロイしようとしたらエラーになってロールバックされてしまった。

$ sls deploy
# …
Serverless Error ---------------------------------------
# … エラー内容また取れたら書く

AWS の cloudwatch からデプロイエラーの内容を見るとどうやら DynamoDB の部分でエラーが起こっているっぽい。
serverless.yml の DynamoDB の設定部分に DeletionPolicy: Retain があると削除には IAM のアクセス権限がないとダメっぽい。

Serverless deploy で作られていた DynamoDB が削除されて作り直されるわけではなさそうですが、 IAM のアクセス権限が無いのが問題っぽい雰囲気

DynamoDB を操作する IAM role が足りなかった

Serverless deploy で使ってる IAM ユーザーに AWS のコンソールから AmazonDynamoDBFullAccess の権限をつければOK。
権限を付けて再度 $ sls deploy コマンドを実行したら問題なくデプロイできた。


おわり。


[参考]