【问题标题】:Can make figure out file dependencies in AWS S3 buckets?可以找出 AWS S3 存储桶中的文件依赖关系吗?
【发布时间】:2017-12-30 03:54:46
【问题描述】:

源目录包含大量大型图像和视频文件。

这些文件需要使用aws s3 cp 命令上传到 AWS S3 存储桶。例如,作为此构建过程的一部分,我将图像文件 my_image.jpg 复制到 S3 存储桶,如下所示:aws s3 cp my_image.jpg s3://mybucket.mydomain.com/

手动将此副本复制到 AWS 没有问题。我也可以编写脚本。但我想使用 makefile 上传我的图像文件 my_image.jpgiff 我的 S3 存储桶中的同名文件比我的源目录中的文件旧。

一般make 非常擅长这种基于文件日期的依赖检查。但是,有没有办法告诉make 从 S3 存储桶中的文件中获取文件日期并使用它来确定是否需要重建依赖关系?

【问题讨论】:

标签: amazon-s3 makefile aws-cli


【解决方案1】:

AWS CLI 有一个 s3 sync 命令,可以为您处理相当多的问题。来自the documentation

如果满足以下条件,则需要复制 s3 对象:

  • 两个s3对象的大小不同,
  • 源的最后修改时间比目标的最后修改时间新
  • 或者指定的bucket和前缀destination下不存在s3对象。

【讨论】:

    【解决方案2】:

    我认为你需要让 S3 看起来像一个文件系统才能完成这项工作。在 Linux 上,通常使用FUSE 来构建这样的适配器。 Here are some 项目将 S3 呈现为本地文件系统。我没有尝试过任何这些,但它似乎是要走的路。

    【讨论】:

      猜你喜欢
      • 2014-07-18
      • 2018-12-04
      • 2016-10-18
      • 1970-01-01
      • 2023-01-13
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 2021-12-23
      相关资源
      最近更新 更多