CodeDeployを使ってみた


初めに

Lambdaのデプロイが上手くいかないのでQiitaに書きながら頑張ることにした

用語

Blue/Green Deploy

Blue/Greenデプロイとは?
現在稼働している環境と別にもう1つ稼働環境を作成し、ロードバランサー等のルーティングを新環境に向けるデプロイ方法です。
常にリクエストを受けている稼働中のサーバを置き換えるよりも安全にデプロイ可能なのがメリットになります。

アプリケーション

デプロイグループ

デプロイのメイン設定となるもの。

サービスロール

CodeDeployで利用するロールのこと。

デプロイ設定

色々あるけど、単に利用するだけなら何でも良い気がする。

リビジョン

デプロイするファイルがある場所だと思う。
S3においていたら、S3のARNを記載する。

appspec.yml

CodeBuildのBuildspec.ymlのように、CodeDeployにはAppspec.ymlがあるようだ。
同様にソースコードのトップに置いておく必要がある。

Error

S3へフルアクセスしているのに以下のエラーが出て詰まっている。

The IAM role arn:aws:iam::xxx:role/xxx does not give you permission 
to perform operations in the following AWS service: Amazon S3. 
Contact your AWS administrator if you need help. 
If you are an AWS administrator, you can grant permissions 
to your users or groups by creating IAM policies.

権限周りは以下の通り。