Jak automatycznie wdrażać tłumaczenia z lokalise.com do AWS S3 przy użyciu serverless?
Ten artykuł jest również dobry dla każdego przypadku użycia, gdy chcesz coś dodać/zmienić/usunąć z AWS S3 po wyzwalaniu twojego punktu końcowego. Idealnym przypadkiem użycia jest chęć aktualizacji plików tłumaczeń po każdej aktualizacji w serwisie lokalizacji.
Najpierw napiszmy, jak chcemy zaprojektować architekturę AWS dla tego.
- Funkcja Lambda - ta funkcja będzie odpowiedzialna za pobieranie i aktualizację tłumaczeń na s3
- Brama API — Utworzy punkt końcowy z funkcji Lambda
- S3 Bucket — Będzie przechowywał pliki tłumaczeń
Musisz zainstalować serverless na podstawie tej instrukcji.
Po tym powinieneś mieć 3 pliki w projekcie (ważne są handler.js i serverless.yml). Przejdź do serverless.yml, a teraz pokażę ci coś, czego nie znajdziesz w dokumentacji.
Poniżej możesz zobaczyć, jak zezwolić na korzystanie z S3 Bucket przez Lambdę i jak przekazać nazwę S3 Bucket do funkcji Lambda.
Teraz przejdźmy do handler.js
Teraz musisz tylko dodać swoją logikę do pobierania tłumaczeń, wdrożyć swój projekt serverless i połączyć webhook z twoim punktem końcowym.