我正在使用提供许多.gz文件的服务,并且想将它们传输到我的S3存储桶中。客户端每天更新这些文件。我必须与他的服务器和我的S3存储桶保持同步。
它们为存储这些文件的所有端点提供了API。
{
fileName: "xxxxx",
url: "https://domaine.com/file.gz"
}
想法是创建一个Lambda(每天调用一次),该Lambda负责将这些.gz文件直接从他的服务器传输到我的存储桶。
我不知道该怎么做。
您有关于此用例的文章或文档吗?
答案 0 :(得分:0)
最后,我所做的非常简单...我创建了一个EC2 Ubuntu实例,在该实例上运行一个经过调整的bash脚本...该脚本负责下载提要,解析URL和下载每个URL对应的文件。
wget -O feed.csv https://feed.com/datafeed/list/apikey/xxx
IFS=','
while read f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13; do
if [[ $f4 =~ "active" ]]; then
echo "remove quote from url..."
url="${f12%\"}"
url="${url#\"}"
echo "remove quote from id..."
name="${f5%\"}"
name="${name#\"}"
echo "download from url...${name}"
wget -O "${name}".csv.gz "${url}"
echo "upload to S3 from url...${name}"
aws s3 cp "${name}".csv.gz s3://mybucket/data/
fi
done < feed.csv