I have a project based on Nest.js, TypeScript, and Kubernetes.
In my project, I need to handle updates in the AWS S3 bucket, like Publishing of new files, Updating files, and Deleting as well, and do something with that information.
I know about the streams, which can trigger the Lambda functions on S3 bucket events(PutObject, Update, Delete, and so on). I want to find a way, to implement the same thing without lambda functions if it is possible.
As an alternative way, that logic can be implemented by the Cron job, which should get the objects from the bucket, and process them. But for that case, I need to compare data to define what is happened.
I also think about the case to have Lambda functions, which should handle the S3 bucket streams, and send the request to the needed APIs.
So, is anybody faced with the same case? If so, how do you solved it? Is it possible to have an S3 webhook directly to API, if so how?
I will be grateful for the suggestions!
Thanks!
After the research, I found that it can be done using the MinIO
It is a good way to implement it with the RabbitMQ, and handle events from the AWS S3 Bucket
Here are some useful guidelines
https://docs.min.io/docs/minio-bucket-notification-guide.html
http://nm-muzi.com/docs/minio-bucket-notification-guide.html