AWS CodeDeploy Operations: Difference between revisions
Jump to navigation
Jump to search
Line 94: | Line 94: | ||
====Target group 2 name==== | ====Target group 2 name==== | ||
==Deployment Settings== | |||
====Traffic rerouting==== | |||
Reroute the traffic immediately. | |||
====Deployment Configuration==== | |||
====Original revision termination==== |
Revision as of 18:31, 28 February 2019
Internal
Create an Application
Application Configuration
Application name
Compute platform
Amazon ECS.
Create a Deployment Group
Application
Deployment Group Name
themyscira-unity-deployment-group
Service Role
First create a service role with CodeDeploy permissions that grants AWS CodeDeploy access to the target instances. This is how to crate a Service Role:
Name: "themyscira-unity-codedeploy-role"
After creation, which can be done through a standard IAM wizard, it contains an AWSCodeDeployRoleForECS policy that looks like this:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ecs:DescribeServices",
"ecs:CreateTaskSet",
"ecs:UpdateServicePrimaryTaskSet",
"ecs:DeleteTaskSet",
"elasticloadbalancing:DescribeTargetGroups",
"elasticloadbalancing:DescribeListeners",
"elasticloadbalancing:ModifyListener",
"elasticloadbalancing:DescribeRules",
"elasticloadbalancing:ModifyRule",
"lambda:InvokeFunction",
"cloudwatch:DescribeAlarms",
"sns:Publish",
"s3:GetObject",
"s3:GetObjectMetadata",
"s3:GetObjectVersion"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"iam:PassRole"
],
"Effect": "Allow",
"Resource": "*",
"Condition": {
"StringLike": {
"iam:PassedToService": [
"ecs-tasks.amazonaws.com"
]
}
}
}
]
}
Environment Configuration
Chose an ECS cluster name
Chose an ECS service name
Load balancers
Chose a load balancer
Production listener port
Test listener port
Target group 1 name
Target group 2 name
Deployment Settings
Traffic rerouting
Reroute the traffic immediately.