使用 CodeDeploy 从同一个 git 部署 2 个应用程序

Eug*_*eMi 3 aws-code-deploy

我们有一个带有 Web 和工作节点的应用程序 - 两者的代码位于同一个 git 中,但部署到不同的自动缩放组。问题是只有一个 appspec 文件,但 Web/worker 节点的部署脚本(AfterInstall、AppStart 等)不同。我将如何设置我的 CodeDeploy 来部署这两个应用程序并执行不同的部署脚本?

  • (现在我们有一个 appspec 文件,它只调用厨师食谱,根据节点的角色执行不同的操作)

小智 6

我知道这个问题很老了,但我最近有同样的问题/问题,并找到了一种简单的方法来使其发挥作用。

我在同一个 git 上添加了两个 appspec 文件:appspec-staging.yml, appspec-storybook.yml.

还添加了两个构建规范文件buildspec-staging.ymlbuildspec-storybook.ymlAWS CodeBuild 允许指定构建规范文件)。

我们的想法是,构建完成后,我们将特定的 appspec-xx.yml 文件复制并重命名为最终的 appspec.yml 文件,因此最终,在 CodeDeploy 阶段,我们将拥有一个合适的 appspec.yml 文件来部署。以下命令适用于linux环境。

   post_build:
    commands:
      - mv appspec-staging.yml appspec.yml
Run Code Online (Sandbox Code Playgroud)