从命令行重新部署 AWS CodeDeploy
AWS CodeDeploy redeployment from command line
是否可以 retry/redeploy 之前通过命令行成功部署?我知道可以使用命令行从命令行获取部署列表
aws deploy list-deployments
但我没有找到任何选项来重新运行 使用从此命令返回的 deployment-id 进行部署。
不过,有一个选项可以从控制台重试之前 运行 的部署。
重新部署只是基于使用以前版本的应用程序创建 new-deployment。不幸的是,没有专门的 redeploy
命令。
文档中有 example 如何重新部署 示例项目:
aws deploy create-deployment --application-name HelloWorld_App --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name HelloWorld_DepGroup --s3-location bucket=codedeploydemobucket,bundleType=zip,key=HelloWorld_App.zip
这是一个 bash 脚本,可以找到上次成功的部署并进行部署。通过一些简单的更改,您可以
- 将上次成功的蓝色部署部署到绿色
- 指定部署配置名称或描述
- 添加
wait deployment-successful
然后添加通知或其他操作
applicationName="my-application-name"
deploymentGroupName="my-deployment-group"
lastSuccessfulDeployment=$(aws deploy list-deployments --application-name $applicationName --deployment-group-name $deploymentGroupName --include-only-statuses "Succeeded" --query 'deployments[0]' --output text)
s3Location=$(aws deploy get-deployment --deployment-id $lastSuccessfulDeployment --query 'deploymentInfo.revision.s3Location')
aws deploy create-deployment --application-name $applicationName --deployment-group-name $deploymentGroupName --s3-location $s3Location
是否可以 retry/redeploy 之前通过命令行成功部署?我知道可以使用命令行从命令行获取部署列表
aws deploy list-deployments
但我没有找到任何选项来重新运行 使用从此命令返回的 deployment-id 进行部署。
不过,有一个选项可以从控制台重试之前 运行 的部署。
重新部署只是基于使用以前版本的应用程序创建 new-deployment。不幸的是,没有专门的 redeploy
命令。
文档中有 example 如何重新部署 示例项目:
aws deploy create-deployment --application-name HelloWorld_App --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name HelloWorld_DepGroup --s3-location bucket=codedeploydemobucket,bundleType=zip,key=HelloWorld_App.zip
这是一个 bash 脚本,可以找到上次成功的部署并进行部署。通过一些简单的更改,您可以
- 将上次成功的蓝色部署部署到绿色
- 指定部署配置名称或描述
- 添加
wait deployment-successful
然后添加通知或其他操作
applicationName="my-application-name"
deploymentGroupName="my-deployment-group"
lastSuccessfulDeployment=$(aws deploy list-deployments --application-name $applicationName --deployment-group-name $deploymentGroupName --include-only-statuses "Succeeded" --query 'deployments[0]' --output text)
s3Location=$(aws deploy get-deployment --deployment-id $lastSuccessfulDeployment --query 'deploymentInfo.revision.s3Location')
aws deploy create-deployment --application-name $applicationName --deployment-group-name $deploymentGroupName --s3-location $s3Location