1

我们从BitBucket进行自动部署,以便部署到三个EC2实例之一。除了我们的/ data目录(其中包含CMS上传的图片,视频等)之外,目前所有的东西都可以正常工作,而不是存储库的一部分。因此在部署期间,特定实例上的现有/ data目录被删除。有没有办法在AWS CodeDeploy中排除目录?

我看到可以使用“排除”参数为文件所有权/组和权限设置排除项;但是,没有这样的参数似乎对文件部分存在:

http://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file-structure-files.html

看来,如果这将是一个共同的问题,但我一直没能找到解决的办法呢。有没有人有任何建议排除文件覆盖部署期间?

我现在唯一能想到的就是手动指定每个要重写的目录以及appspec.yml中的每个根文件。这很不理想,因为每次添加新的目录或根文件时都需要对其进行编辑。

回答

0

如果其他人在寻找,解决方案是通过appspec“files”指令手动指定每个目录和/或文件。这样,不包含在列表中的文件就不会被部署。

随后在添加新目录或根文件时,需要更新appspec文件。

+0

我们正在寻找一种方法来做到这一点,现在很难相信没有办法排除一个模式,而是必须包括所有其他内容并保持结构是最新的。看起来像一个必不可少的功能,我必须能够排除目录。 – pixelwiz

0

您应该在部署包之外构建应用程序的数据。

将应用程序数据与部署包保存在同一目录中不是一个好方法。

+0

感谢您的建议,但这在这种情况下没有帮助。我已经继承了一个遗留应用程序。和/数据不是回购的一部分。似乎目前唯一的方法是指定每个目录和/或根文件。 – edwardr

相关问题