【问题标题】:codedeploy erases content from directory not affected by deploycodedeploy 从不受部署影响的目录中删除内容
【发布时间】:2017-11-27 17:31:54
【问题描述】:

我在 GitHub 上有 2 个私有存储库,用于 2 个不同的网站。两个网站都在 Amazon (EC2) 上运行同一组自动扩展服务器。我使用 CodeDeploy 从 GitHub 中提取存储库并将它们部署到服务器,一次一个。这几乎可以完美运行。

问题是当我部署一个网站时,来自另一个网站的文件被完全删除。不是文件夹结构,只是文件。

一个网站部署到 /var/www/website1 而另一个部署到 /var/www/website2 。 appspec 文件是:

version: 0.0
os: linux 
files:
  - source: /
    destination: /var/www/website1/
hooks:
  BeforeInstall:
    - location: /beforeinstall.sh
      timeout: 300
      runas: root
  AfterInstall:
    - location: /afterinstall.sh
      timeout: 300
      runas: root

version: 0.0
os: linux 
files:
  - source: /
    destination: /var/www/website2/
hooks:
  BeforeInstall:
    - location: /beforeinstall.sh
      timeout: 300
      runas: root
  AfterInstall:
    - location: /afterinstall.sh
      timeout: 300
      runas: root

当我部署“website1”时,它会删除“website2”中的所有文件,反之亦然。我不知道为什么。任何帮助将不胜感激。

在安装应用程序之前(网站 1)

#/bin/bash
sudo service php-fpm stop
sudo service nginx stop
sudo yum -y update
rm /var/www/app -Rf
rm /usr/share/nginx/html/status.php -Rf

安装后

#/bin/bash
chown app:app /var/www/app/* -Rc
#
find /var/www/app/public_html/files/uploads -type d -exec chmod 777 {} \;
#
cd '/var/www/app'
su app -c 'composer update'
mv /var/www/fairwarning_app/status.php /usr/share/nginx/html/status.php
#
sudo service php-fpm start
sudo service nginx start

安装 API 之前(网站 2)

#/bin/bash
sudo service php-fpm stop
sudo service nginx stop
sudo yum -y update
rm /var/www/api -Rf

安装后

#/bin/bash
chown api:api /var/www/api/* -Rc
#
cd $'/var/www/api'
su api -c 'composer install'
su api -c 'composer update'
#
sudo service php-fpm start
sudo service nginx start

【问题讨论】:

  • 能否请您再次进行部署并打印您的部署日志?不包括代理日志,但部署脚本日志:docs.aws.amazon.com/codedeploy/latest/userguide/…
  • 能否同时发布beforeinstall.shafterinstall.sh 两个网站的内容?
  • 我在使用 Windows Server、IIS 和 .NET 应用程序时遇到了完全相同的问题。我没有 beforeinstallafterinstall 如果我只是多次部署 1 个应用程序,它可以完美运行。
  • @AnkitSharma 是的,我已经添加了它们。

标签: aws-code-deploy


【解决方案1】:

看起来 AWS CodeDeploy 不支持在同一部署组上同时部署。您可以在他们的 github 问题跟踪器上跟踪进度和 discussion of the issue

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-14
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    • 2011-01-13
    • 2011-02-15
    • 2023-04-02
    相关资源
    最近更新 更多