我们正在使用AWS 使用bitbucket进行代码部署将应用程序部署到ec2实例上。这是我们的角度项目存储库面临的新问题。这个仓库有节点模块,因为我们正在使用与节点的角度,因此需要这些依赖关系。这些依赖项的目录名称以特殊字符@
开头。我们在堆栈上发现了一个线程,该线程说带有特殊字符的名称可能会导致失败,并遇到类似的错误。我们收到的错误是
我们无法解决。当我们删除节点模块目录时,部署工作正常。因此,我们确定问题必须出在名字上。我们不能更改或删除这些依赖,因为angular使用了这些依赖。我们认为,必须有一种方法来解决这个问题,并因此寻找建议。 Appspec.yml文件有助于过滤掉文件,在这种情况下可以帮助吗?
尝试在安装前使用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/
在上面,请确保更新应用程序部署的目标。