You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This step ensures the specified deployment configuration exists for the application. Defining a custom configuration is *optional* because you can use the deployment strategy already defined in Code Deploy.
81
94
82
-
This step consists on creating a deployment config. This step is totally *optional* because you can use the deployment strategy already defined in Code Deploy.
95
+
Environment Variables:
83
96
84
-
The following configuration allows to setup this step :
97
+
*`AWS_CODE_DEPLOY_DEPLOYMENT_CONFIG_NAME` (optional): Deployment config name. By default: _CodeDeployDefault.OneAtATime_. Built-in options:
98
+
* CodeDeployDefault.OneAtATime
99
+
* CodeDeployDefault.AllAtOnce
100
+
*`AWS_CODE_DEPLOY_MINIMUM_HEALTHY_HOSTS` (optional): The minimum number of healthy instances during deployment. By default: _type=FLEET_PERCENT,value=75_
85
101
86
-
*`deployment-config-name` (optional): Deployment config name. By default : _CodeDeployDefault.OneAtATime_
87
-
*`minimum-healthy-hosts` (optional): The minimum number of healthy instances during deployment. By default : _type=FLEET_PERCENT,value=75_
This step ensures the deployment group exists within the specified application. If it does not exist, the script will attempt to create the group using the name and defined service role ARN.
90
105
91
-
This step consists on defining a deployment group. If the deployment group provided does not exists this step create a deployment group in Code Deploy.
106
+
Environment Variables:
92
107
93
-
The following configuration allows to setup this step :
108
+
*`AWS_CODE_DEPLOY_DEPLOYMENT_GROUP_NAME` (required): Deployment group name
109
+
*`AWS_CODE_DEPLOY_SERVICE_ROLE_ARN` (required): Service role arn giving permissions to use Code Deploy when creating a deployment group
110
+
*`AWS_CODE_DEPLOY_EC2_TAG_FILTERS` (optional): EC2 tags to filter on when creating a deployment group
111
+
*`AWS_CODE_DEPLOY_AUTO_SCALING_GROUPS` (optional): Auto Scaling groups when creating a deployment group
94
112
95
-
*`deployment-group-name` (required): Deployment group name
96
-
*`service-role-arn` (optional): Service role arn giving permissions to use Code Deploy when creating a deployment group
97
-
*`ec2-tag-filters` (optional): EC2 tags to filter on when creating a deployment group
98
-
*`auto-scaling-groups` (optional): Auto Scaling groups when creating a deployment group
113
+
#### Step 6: [Compressing Source]
99
114
100
-
#### Step 5 : [Pushing to S3](http://docs.aws.amazon.com/cli/latest/reference/deploy/push.html)
115
+
This step compresses the specified source directory as a zip file in preparation for uploading to S3. This is useful for application deployments that use unique file names per revision. This helps limit the transfer to and from S3 during deployment.
116
+
117
+
Environment Variables:
118
+
119
+
*`AWS_CODE_DEPLOY_APP_SOURCE` (required): Specifies the root source contents of the application. The `appspec.yml` should exist within this directory. If not specified, the script will use the current working directory.
120
+
*`AWS_CODE_DEPLOY_S3_FILENAME` (required): The destination name within S3. Note that this should **not** include any prefix keys as these are defined elsewhere. A recommended good practice would be to use a combination of the CI build number with the git short revision. (e.g. "100#c3a5fea.zip")
121
+
122
+
#### Step 7: [Pushing to S3](http://docs.aws.amazon.com/cli/latest/reference/deploy/push.html)
101
123
102
124
This step consists to push the application to S3.
103
125
104
-
The following configuration allows to setup this step :
126
+
Environment Variables:
127
+
128
+
*`AWS_CODE_DEPLOY_S3_BUCKET` (required): The name of the S3 bucket to deploy the revision
129
+
*`AWS_CODE_DEPLOY_S3_KEY_PREFIX` (optional): A prefix to use for the file key. It's highly recommended to structure a bucket with a prefix per deployment group. This allows to limit stored revisions per deployment group. Note: A leading or trailing slash is not required. For example:
130
+
```
131
+
AWS_CODE_DEPLOY_S3_BUCKET="my-bucket-test"
132
+
AWS_CODE_DEPLOY_S3_KEY_PREFIX="production-www"
133
+
AWS_CODE_DEPLOY_S3_FILENAME="100#c3a5fea.zip"
134
+
135
+
# The resulting stored file would exist at s3://my-bucket-test/production-www/100#c3a5fea.zip
136
+
```
137
+
138
+
#### Step 8: [Limiting Deploy Revisions per Bucket/Key]
139
+
140
+
This step ensures that applications with high revision/commit volume with unique filenames can remove old revisions to help limit the size of the container. Large teams can quickly fill S3 with multiple TBs/day depending on the projects. Since deployments typically don't need to store that many versions backwards, this step will ensure that only N revisions exist, removing oldest revisions upon deploy.
141
+
142
+
Environment Variables:
143
+
144
+
*`AWS_CODE_DEPLOY_S3_LIMIT_BUCKET_FILES` (optional): Number of revisions to limit. If 0, unlimited. By default: 0
This step registers a code deploy revision for the uploaded file to the specified application/deployment group.
149
+
150
+
Environment Variables:
151
+
152
+
*`AWS_CODE_DEPLOY_REVISION_DESCRIPTION` (optional): A description that is stored within AWS Code Deploy that stores information about the specific revision. Typically, the revision details would store information specific to the commit/CI/build details.
This step consists to register the revision in Code Deploy.
161
+
*`AWS_CODE_DEPLOY_DEPLOYMENT_DESCRIPTION` (optional): A description that is stored within AWS Code Deploy that stores information about the specific revision.
113
162
114
-
The following configuration allows to setup this step :
163
+
#### [Monitor Deployment]
115
164
116
-
*`revision` (optional): Revision of the application to deploy. By default: _{application-name}-{application-version}.zip_
117
-
*`revision-description` (optional): Description of the revision of the application to deploy
165
+
This step monitors the deployment and logs information about the overall status as well as any failed instance statuses.
This final step consists to create the deployment in Code Deploy.
169
+
*`AWS_CODE_DEPLOY_DEPLOYMENT_OVERVIEW` (optional): Boolean that specifies whether to log detailed information about the status of the deployment. By Default: _true_
122
170
123
-
The following configuration allows to setup this step :
124
171
125
-
*`deployment-description` (optional): Description of the deployment
126
-
*`deployment-overview` (optional): Visualize the deployment. By default : _true_
0 commit comments