我正在使用带有CloudFormation和CodeDeploy插件的Jenkins。
当有新的提交到我的 git 存储库时,我能够使用 jenkins 来构建 CloudFormation 堆栈。
我还能够通过 CodeDeploy 插件将代码部署到自动扩展组中的 EC2 实例。
问题:
我怎样才能自动化整个过程,以便在我的 Jenkins 作业创建 CloudFormation Stack 时,接下来可以触发 CodeDeploy 作业以完成代码部署过程。
干杯
您可以将这两个放在一个作业中。 在这里,它分两个阶段在声明性管道中:
pipeline {
agent { label 'docker' }
stages {
stage('cloudformation') {
steps {
sh './do_cloudformation.sh'
}
}
stage('codedeploy') {
steps {
sh './do_codedeploy.sh'
}
}
}
}
如果您希望能够独立触发它们,您可以将它们保留在两个作业中,但让 Cloudformation 作业使用构建步骤触发 CodeDeploy 作业,如下所示:
pipeline {
agent { label 'docker' }
stages {
stage('cloudformation') {
steps {
sh './do_cloudformation.sh'
}
}
stage('codedeploy') {
steps {
build 'name-of-codedeploy-job'
}
}
}
}
通过选择"构建触发器"和"构建其他项目后构建"选项解决了此问题