Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git Jenkins将构建CloudFormation堆栈,然后通过CodeDeploy插件部署代码_Git_Amazon Web Services_Jenkins_Amazon Cloudformation_Aws Code Deploy - Fatal编程技术网

Git Jenkins将构建CloudFormation堆栈,然后通过CodeDeploy插件部署代码

Git Jenkins将构建CloudFormation堆栈,然后通过CodeDeploy插件部署代码,git,amazon-web-services,jenkins,amazon-cloudformation,aws-code-deploy,Git,Amazon Web Services,Jenkins,Amazon Cloudformation,Aws Code Deploy,我正在使用Jenkins的CloudFormation和CodeDeploy插件 当我的git回购有新的提交时,我能够使用jenkins构建CloudFormation堆栈 我还可以通过CodeDeploy插件将代码部署到自动伸缩组中的EC2实例 问题: 如何实现整个过程的自动化,以便在创建CloudFormation堆栈的Jenkins作业完成后,可以触发CodeDeploy作业来完成代码部署过程 干杯你可以把这两个都放在一份工作中。在这里,它位于声明性管道中,分为两个阶段: pipeline

我正在使用Jenkins的CloudFormation和CodeDeploy插件

当我的git回购有新的提交时,我能够使用jenkins构建CloudFormation堆栈

我还可以通过CodeDeploy插件将代码部署到自动伸缩组中的EC2实例

问题:

如何实现整个过程的自动化,以便在创建CloudFormation堆栈的Jenkins作业完成后,可以触发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'
      }
    }
  }
}

通过选择“其他项目生成后生成”选项的“生成触发器”解决了此问题

感谢您的回复。我最终使用了“构建触发器”->“在构建其他项目后构建”选项,这个选项对我很有效。