将CSV文件从公共Git子目录复制到S3存储桶

时间:2020-07-19 01:28:28

标签: amazon-web-services aws-lambda aws-codepipeline aws-codebuild aws-codecommit

我看到有多种方法可以执行此操作,但是我无法使用AWS Lambda来执行此操作(可能在那里丢失了一些东西),该方法的任何建议以及与实现步骤相关的链接都将非常有用。 公共Git链接很大,但是,我只需要子目录中的csv文件。

2 个答案:

答案 0 :(得分:0)

任何git存储库都会为您提供一个原始链接-例如https://github.com/thephpleague/csv/raw/master/tests/data/foo.csv 您可以在自己喜欢的运行时中使用自己喜欢的http客户端,以将该文件下拉。

如果您觉得文件太大而无法容纳512MB,则可以挂载EFS(https://aws.amazon.com/blogs/compute/using-amazon-efs-for-aws-lambda-in-your-serverless-applications/)。

如果它太大而无法在15分钟内下载,则可以尝试分批下载-跨多个lambda调用。您可以将简历状态保存在EFS上。实际上,您也可以将简历信息存储在lambda的/ tmp文件夹中。如果第二个lambda调用足够快,您将得到它。

希望能回答您的问题。

答案 1 :(得分:0)

您可以为此使用稀疏签出和浅表克隆。此示例将从csvsubfolder

中提取
git init <repo>
cd <repo>
git remote add origin <url>
git config core.sparsecheckout true
echo "csvsubfolder/*" >> .git/info/sparse-checkout
git pull --depth=1 origin master