AWS Opsworks + CircleCI で自動デプロイ
- AWS IAMユーザー(circleci)を作成
- 作ったユーザのAWS Access Key ID/Secret Access Keyを取得
- CircleCIのSetting->Permissions->AWS Permissionsを追加
- awsコマンドを手元で走らせてデプロイできるか確認
注意:regionはus-east-1を使用する
$ aws opsworks --region us-east-1 create-deployment --stack-id $STACK_ID --app-id $APP_ID --command "{\"Name\":\"deploy\"}"
- deploy-staging.shに上記を記述し、circle.ymlに追加
machine: timezone: UTC ruby: version: 2.1.3 dependencies: pre: - sudo pip install awscli deployment: staging: branch: master commands: - ./script/deploy-staging.sh
deploy-stating.shは下記。
#!/bin/sh set -ex REGION='us-east-1' STACK_ID='yyy' APP_ID='xxx' aws opsworks --region $REGION create-deployment --stack-id $STACK_ID --app-id $APP_ID --command "{\"Name\":\"deploy\"}"