Setup
I did the following steps:
I created with the IAM Manager (I guess most of the following permissions are not required/redundant):
a group called codeship with permissions/policies
- AmazonEC2FullAccess
- IAMFullAccess
- AmazonEC2RoleforAWSCodeDeploy
- AmazonS3FullAccess
- AWSCodeDeployReadOnlyAccess
- AWSCodeDeployFullAccess
- AdministratorAccess
- AWSCodeDeployRole
- AWSCodeDeployDeployerAccess
- AmazonS3ReadOnlyAccess
a user: Codeship (same permissions) which is part of the above specified group
a role: CodeDeployServiceRole
- AmazonEC2RoleforAWSCodeDeploy
- AWSCodeDeployReadOnlyAccess
- AWSCodeDeployFullAccess
- AmazonS3ReadOnlyAccess
- AWSCodeDeployRole
- AWSCodeDeployDeployerAccess
Then I created a E2C Ubuntu Instance with the tag: codeship:true
the instance state is running.
Further I created a S3 bucket with the name of my app. The bucket has the property setting Granted: Any Authenticated AWS User
can open/download and view permissions.
Finally I created a Code Deployment Application with the name of my app. The application has
- the group: codeship
- the tag: codeship:true
- it deploys to up to all instances at once
- the arn is the one from the IAM role
error
No hosts succeeded. (Error code: HEALTH_CONSTRAINTS)
which I read is related to missing permissions. The image seems to be transferred correctly from codeship as a zip file. For speed reasons I redeploy the image which is already in the bucket.
question
What additional settings are required to deploy my app at AWS?