Tengo un proyecto basado en Nest.js, TypeScript y Kubernetes.
En mi proyecto, necesito manejar las actualizaciones en el depósito de AWS S3, como la publicación de archivos nuevos, la actualización de archivos y la eliminación también, y hacer algo con esa información.
Conozco las transmisiones, que pueden activar las funciones de Lambda en los eventos del depósito S3 (PutObject, Update, Delete, etc.). Quiero encontrar una manera de implementar lo mismo sin funciones lambda si es posible.
Como una forma alternativa, esa lógica puede ser implementada por el trabajo de Cron, que debe obtener los objetos del depósito y procesarlos. Pero para ese caso, necesito comparar datos para definir qué sucedió.
También pienso en el caso de tener funciones Lambda, que deberían manejar los flujos de depósito de S3 y enviar la solicitud a las API necesarias.
Entonces, ¿alguien se enfrenta al mismo caso? Si es así, ¿cómo lo solucionaste? ¿Es posible tener un webhook de S3 directamente a la API? De ser así, ¿cómo?
Estaré agradecido por las sugerencias!
¡Gracias!
Después de la investigación, descubrí que se puede hacer usando el MinIO
Es una buena manera de implementarlo con RabbitMQ y manejar eventos desde AWS S3 Bucket
Aquí hay algunas pautas útiles
https://docs.min.io/docs/minio-bucket-notification-guide.html
http://nm-muzi.com/docs/minio-bucket-notification-guide.html