微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将AWS S3最终是AWS EFS上的更改同步回Github存储库中?

如何解决如何将AWS S3最终是AWS EFS上的更改同步回Github存储库中?

我使用Github Actions将git repo的子文件夹之一(包括

如何将带有添加/更改/删除文件的S3(甚至更好的EFS)存储桶同步回Github上的git存储库?

  • 我找不到任何可以提供此功能的Github动作
  • 当我使用EC2挂载EFS时,我以为我可以git clone并创建一个指向EFS的符号链接。然后,我可以跳过S3的步骤并调用git pull / push。
  • 我想我可以构建一个Lambda来启动EC2实例,该实例将自动从S3中提取这些文件并将提交推送到我的git存储库中。
  • 我可以尝试弄清楚如何使用Lambda和/ tmp来制定提交

我无法全神贯注于实现这一目标的最佳方法

你能把我推向正确的方向吗?

P.S。我对git不太熟练,整个实现过程有点超出我的范围。 :-)

解决方法

@vonc,谢谢您的提示,它使我朝着正确的方向前进。

我最终这样做了,这解决了我的最终目标,即通过GIT管理EFS。我可以完全跳过S3 / Lambda。

第1步:sudo mount -t efs -o tls MYFILESYSTEMID:/ efs

第2步:cd efs

第3步:git clone --depth 1 --no-checkout --filter=blob:none git@github.com:user/repo

步骤4:cd repo

步骤5:git sparse-checkout set subdirectory

第6步:git read-tree -mu HEAD

从这里开始,我可以在此特定的子目录中推送/拉动更改。

,

如果在挂载AWS EFS后可以在同一EC2实例上克隆Git存储库,则可以执行以下操作:

cd /path/to/cloned/git/repository
git --work-tree=/path/to/mounted/EFS add .

这将检测EFS中添加/修改/删除的更改,并将这些更改导入到克隆的Git存储库中。
从那里,您可以提交并推送。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。