{"id":28757002,"url":"https://github.com/evalmee/s3_bucket_notification_lambda","last_synced_at":"2025-09-07T18:39:00.448Z","repository":{"id":131374766,"uuid":"491918353","full_name":"evalmee/s3_bucket_notification_lambda","owner":"evalmee","description":"Terraform module updating S3 notifications to AWS Lambda","archived":false,"fork":false,"pushed_at":"2025-03-10T16:20:06.000Z","size":3,"stargazers_count":3,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-10T17:31:19.381Z","etag":null,"topics":["aws-lambda","aws-s3","terraform-module"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/evalmee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-13T13:58:00.000Z","updated_at":"2025-03-10T16:20:10.000Z","dependencies_parsed_at":"2023-08-01T03:47:02.930Z","dependency_job_id":null,"html_url":"https://github.com/evalmee/s3_bucket_notification_lambda","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/evalmee/s3_bucket_notification_lambda","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evalmee%2Fs3_bucket_notification_lambda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evalmee%2Fs3_bucket_notification_lambda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evalmee%2Fs3_bucket_notification_lambda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evalmee%2Fs3_bucket_notification_lambda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evalmee","download_url":"https://codeload.github.com/evalmee/s3_bucket_notification_lambda/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evalmee%2Fs3_bucket_notification_lambda/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260281518,"owners_count":22985631,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-lambda","aws-s3","terraform-module"],"created_at":"2025-06-17T03:09:40.995Z","updated_at":"2025-06-17T03:09:41.588Z","avatar_url":"https://github.com/evalmee.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# s3_bucket_notification_lambda\n\nA module to create a S3 notification to a lambda function.\n\nThe [module provided by AWS](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/s3_bucket_notification) manage S3 notifications as one resource and only support a single notification configuration. (See issue https://github.com/hashicorp/terraform-provider-aws/issues/501)\n\nWith this module, you can manage your S3 notifications from different terraform stacks.\n\n⚠️ **Warning:** \n- This module only support S3 notifications to a lambda function. Other notifications created for the source bucket will be overwritten.\n- This module is in alpha state and is not recommended for production.\n\n\n## Example\n\n```hcl\nmodule \"s3-notification\" {\n  source = \"github.com/evalmee/s3_bucket_notification_lambda\"\n\n  s3_bucket_name = \"your-bucket-name\"\n  lambda_arn = \"your-lambda-arn\"\n  events = \"s3:ObjectCreated:*\"\n  prefix = \"foo\"\n  suffix = \".jpeg\"\n  notification_id = \"image upload notification\"\n}\n```\n\n## How does it work?\n\nThis module retrieves the current S3 notification configuration from the bucket and merge the new configuration with the existing one.\nThe notification name is used as identifier.\n\n## Requirement\nThis module executes a Ruby script to manage the S3 notifications.\nYou need a working Ruby installation (version \u003e2.6) to use this module.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevalmee%2Fs3_bucket_notification_lambda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevalmee%2Fs3_bucket_notification_lambda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevalmee%2Fs3_bucket_notification_lambda/lists"}