Amazon web services AWS部署“;无法删除顶级文件夹";

Amazon web services AWS部署“;无法删除顶级文件夹";,amazon-web-services,bitbucket,aws-code-deploy,Amazon Web Services,Bitbucket,Aws Code Deploy,我已安装Bitbucket插件以使用AWS CodeDeploy进行部署,但由于未知原因,当我尝试从Bitbucket视图进行部署时,会出现此错误“无法删除顶级文件夹” 这是我的appspec.yml 我已经成功部署了其他bitbucket存储库,我想知道为什么这个存储库不起作用。经过长时间的搜索,我发现一个文件的文件名上有俄文字符。 Bitbucket CodeDeploy加载项似乎存在此类字符的问题。Aws CodeDeploy在应用新的部署之前尝试回滚以前的部署。您可能已经手动删除了实

我已安装Bitbucket插件以使用AWS CodeDeploy进行部署,但由于未知原因,当我尝试从Bitbucket视图进行部署时,会出现此错误“无法删除顶级文件夹”

这是我的appspec.yml


我已经成功部署了其他bitbucket存储库,我想知道为什么这个存储库不起作用。

经过长时间的搜索,我发现一个文件的文件名上有俄文字符。
Bitbucket CodeDeploy加载项似乎存在此类字符的问题。

Aws CodeDeploy在应用新的部署之前尝试回滚以前的部署。您可能已经手动删除了实例上的一些文件,而现在回滚脚本失败

解决方案

删除实例上
codedeploy agent
的回滚脚本

如果您正在使用ubuntu,请将ssh导入实例并转到目录

cd /opt/codedeploy-agent/deployment-root/deployment-instructions/
并查找以
-cleanup

删除此文件

现在请再次尝试部署

签出,或在的
回滚和重新部署工作流
部分中阅读

根据回滚脚本的不同,部署可能会失败,并显示不同的消息,对我来说,它是
Directory not empty@dir\u s\u rmdir


但在
Install
事件中,它总是失败

我得到了确切的错误,但在我的例子中,这是文件名appspec.yml中的一个输入错误

jlorie-我们面临着同样的问题,但在我们的例子中,字符出现在node_modules文件夹中,它们是节点依赖项的包名。例如:@agm、@angular我们使用带有angular的节点,因此需要签入这些依赖项。如果我们删除这些文件夹,部署就会成功。这与我在修复它时遇到的错误相同?是的,我修复了它,并写了一个完整的答案。
cd /opt/codedeploy-agent/deployment-root/deployment-instructions/