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.

code_part_1

Teraz przejdźmy do handler.js

code_part_2

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.

Artykuł przetłumaczony z języka angielskiego za pomocą Chat GPT 4. Jestem autorem tego artykułu, jego oryginalną wersję znajdziesz pod tym linkiem.

Opublikowano: 07.06.2023
© 2024, By Damian Sowa