AWS CodeDeploy,文件从其他文件夹中删除

发布于 2025-01-18 15:07:18 字数 1475 浏览 4 评论 0原文

输入图片这里的描述

我有一个用于 React 应用程序的代码管道设置。每当更新新版本(在客户端文件夹中)时,文件(保留目录)就会从服务器文件夹中删除。 尝试在代码部署中查看事件日志,但无法获取太多信息 有人可以帮我解决这个问题吗?

appSpec.yml

version: 0.0
os: linux 
files:
  - source: /
    destination: /home/ubuntu/client
hooks:
  AfterInstall:
  - location: scripts/after.sh
    timeout: 300
    runas: root

buildSpec.yml

version: 0.2

env:
  variables:
    NODE_ENV: "development"

phases:
  install:
 

       runtime-versions:
          nodejs: 14
    
      pre_build:
        commands:
          - npm install
    
      build:
        commands:
          - npm run build-qa
    artifacts:
      type: zip
      paths:
        - './build/**/*'
        - './appspec.yml'
        - './scripts/**/*'

after.sh

#!/bin/bash
cd /home/ubuntu/client
echo '---Process started---'
echo '---Taking backup---'
sudo rm -r backup_*
sudo mv /home/ubuntu/client/deploy /home/ubuntu/client/backup_$(date +"%d-%m-%Y")
echo '---backup complete---'
echo '---renaming build---'
sudo mv /home/ubuntu/client/build /home/ubuntu/client/deploy
echo '---renaming complete---'

编辑:我正在运行两个 CI/CD 管道(一个用于前端,另一个用于后端)在同一 EC2 实例上运行时,我对导致问题的 CI/CD 使用相同的部署组和应用程序,后来我为解决了该问题的每个 CI/CD 创建了单独的部署应用程序和组。感谢@Shivkumar Mallesappa 的领导

enter image description here

I have a code pipeline setup for React application. Whenever a new build is updated(In client folder) , the files(directories remain) are getting removed the server folder.
Tried seeing the event logs in code deploy, not able to get much info
could someone please help me with this?

appSpec.yml

version: 0.0
os: linux 
files:
  - source: /
    destination: /home/ubuntu/client
hooks:
  AfterInstall:
  - location: scripts/after.sh
    timeout: 300
    runas: root

buildSpec.yml

version: 0.2

env:
  variables:
    NODE_ENV: "development"

phases:
  install:
 

       runtime-versions:
          nodejs: 14
    
      pre_build:
        commands:
          - npm install
    
      build:
        commands:
          - npm run build-qa
    artifacts:
      type: zip
      paths:
        - './build/**/*'
        - './appspec.yml'
        - './scripts/**/*'

after.sh

#!/bin/bash
cd /home/ubuntu/client
echo '---Process started---'
echo '---Taking backup---'
sudo rm -r backup_*
sudo mv /home/ubuntu/client/deploy /home/ubuntu/client/backup_$(date +"%d-%m-%Y")
echo '---backup complete---'
echo '---renaming build---'
sudo mv /home/ubuntu/client/build /home/ubuntu/client/deploy
echo '---renaming complete---'

Edit: I was running two CI/CD pipelines (One for Frontend and other was backend) both running for the same EC2 instance, I was using the same deployment group and application for both the CI/CD which was causing the issue, later I created separate deployment application and group for each CI/CD which resolved . Thanks @Shivkumar Mallesappa for the lead

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文