CodeDeploy会覆盖它不应该触及的目录

时间:2018-06-16 01:09:55

标签: continuous-deployment aws-code-deploy aws-codepipeline

我在同一个EC2盒子上运行同一服务的两个版本(beta和prod)。 每个服务由两个独立目录A,B中运行的进程组成。 所以,在/ var / myproject /目录中,我有四个文件夹 一个 A.beta 乙 B.beta

我正在使用CodeDeploy(作为代码管道的一部分)来部署这两个阶段 这是我的appspec.yml(用于prod阶段)

version: 0.0
os: linux
files:
  - source: DeployFolders/ProcessA
    destination: /var/myproject/A
  - source: DeployFolders/ProcessB
    destination: /var/myproject/B
permissions:
  - object: /var/myproject/A
    mode: 777     
  - object: /var/myproject/B
    mode: 777     

for beta stage

version: 0.0
os: linux
files:
  - source: DeployFolders/ProcessA
    destination: /var/myproject/A.beta
  - source: DeployFolders/ProcessB
    destination: /var/myproject/B.beta
permissions:
  - object: /var/myproject/A.beta
    mode: 777     
  - object: /var/myproject/B.beta
    mode: 777     

Prod阶段在beta阶段之后运行并删除beta部署文件夹(A.beta和B.beta) 下一次部署,当我首先部署beta阶段时,删除之前创建的prod部署文件夹(A和B)

我知道CodeDeploy必须覆盖目标文件夹,但在这种情况下,它会删除兄弟文件夹。 我做错了什么?

0 个答案:

没有答案