我正在使用Code Pipeline:Jenkins for Build和Code Deploy / Opsworks进行部署。 我可以使用Jenkins使用AWS CLI编排云编队模板,指定命令行步骤。 在没有使用Jenkins或任何CI工具的情况下,是否还有其他选项Orchestrate Cloud Formation?构建完成后,它是否可以在代码管道中触发Cloud Formation?
请建议任何最佳做法。
答案 0 :(得分:3)
自Nov 3 2016起,AWS CloudFormation堆栈更新现已完全集成到AWS CodePipeline中。请参阅CloudFormation用户指南的新增部分Continuous Delivery with AWS CodePipeline。
简而言之,您现在可以向CodePipeline管道添加Deploy
操作,并提供CloudFormation
提供程序,该管道将对指定的CloudFormation堆栈执行操作。使用AWS::CodePipeline::Pipeline
资源,管道阶段定义将如下所示:
Resources:
Pipeline:
Type: AWS::CodePipeline::Pipeline
Properties:
# [other properties...]
Stages:
# [other stages...]
- Name: Deploy
Actions:
- Name: Deploy
ActionTypeId:
Category: Deploy
Owner: AWS
Version: 1
Provider: CloudFormation
InputArtifacts:
- Name: Template
Configuration:
ActionMode: REPLACE_ON_FAILURE
RoleArn: !GetAtt [CFNRole, Arn]
StackName: !Ref AWS::StackName
TemplatePath: !Sub "Template::${StackFileName}"
Capabilities: CAPABILITY_IAM