由于节点模块名称带有特殊字符,AWS代码部署部署失败

问题描述 投票:0回答:1

我们正在使用AWS 使用bitbucket进行代码部署将应用程序部署到ec2实例上。这是我们的角度项目存储库面临的新问题。这个仓库有节点模块,因为我们正在使用与节点的角度,因此需要这些依赖关系。这些依赖项的目录名称以特殊字符@开头。我们在堆栈上发现了一个线程,该线程说带有特殊字符的名称可能会导致失败,并遇到类似的错误。我们收到的错误是

 “Unable to remove top level folder”

我们无法解决。当我们删除节点模块目录时,部署工作正常。因此,我们确定问题必须出在名字上。我们不能更改或删除这些依赖,因为angular使用了这些依赖。我们认为,必须有一种方法来解决这个问题,并因此寻找建议。 Appspec.yml文件有助于过滤掉文件,在这种情况下可以帮助吗?

node.js angularjs node-modules aws-code-deploy bitbucket-aws-code-deploy
1个回答
0
投票

尝试在安装前使用AppSpec文件中的'BeforeInstall'钩子自行清理目标目录,如下所示:

version: 0.0
os: linux
files:
  - source: /
    destination: /var/app/myapp
hooks:
  BeforeInstall:
    - location: ./cleanup.sh

并且cleanup.sh的内容与此相似:

#!/bin/bash -xe
rm -rf /var/app/myapp/

在上面,请确保更新应用程序部署的目标。

© www.soinside.com 2019 - 2024. All rights reserved.