Перенос файлов напрямую с удаленного URL в S3 Bucket - PullRequest
0 голосов
/ 17 марта 2020

Я использую сервис, который предоставляет много файлов .gz, и я хочу перенести их в свою корзину S3. Клиент обновляет эти файлы каждый день. Я должен оставаться в курсе c с его сервером и моим S3 Bucket.

Они предоставляют API со всеми конечными точками, где хранятся эти файлы.

{
fileName: "xxxxx",
url: "https://domaine.com/file.gz"
}

Идея состоит в том, чтобы создать лямбда (звонит каждый день), который будет отвечать за передачу этих файлов .gz прямо со своего сервера в мой Bucket.

Я не знаю, как это сделать.

А вы есть статьи или документация по этому варианту использования?

1 Ответ

0 голосов
/ 17 марта 2020

В итоге то, что я сделал, было довольно просто ... Я создал экземпляр 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...