object-notification
chgasparoto/object-notification/s3
Terraform module to handle S3 buckets, objects, and notifications.
Terraform AWS S3 module Terraform module to handle S3 buckets, bucket objects and bucket notifications resources on AWS. These types of resources are supported: - S3 Bucket - S3 Bucket Ownership Controls - S3 Bucket-level Public Access Block - S3 Bucket ACL - S3 Bucket Policy - S3 Bucket Versioning - S3 Bucket Website Configuration - S3 Bucket Logging - S3 Object - S3 Bucket Notification Usage ``hcl module "bucket" { source = "github.com/chgasparoto/terraform-s3-object-notification" name = "my-super-unique-bucket-name" acl = "public-read" policy = { json = templatefile("policy.json", { bucket_name = local.domain }) } versioning = { status = "Enabled" } # This property activates the module to upload the files to the bucket. filepath = "path/to/my/website/files" website = { index_document =
| Name | Type | Description | Default |
|---|---|---|---|
| name | string | Bucket unique name. It can contain only numbers, letters and dashes | required |
| ownership | string | Object ownership. Valid values: BucketOwnerPreferred, ObjectWriter or BucketOwne | "BucketOwnerPreferred" |
| block_public_policy | bool | Whether to block public policiy | true |
| acl | string | Access Control Lists. It defines which AWS accounts or groups are granted access | "private" |
| force_destroy | bool | Whether or not to force destroy the bucket | false |
| tags | map(string) | Bucket tags | {} |
| logging | map(string) | Map containing logging configuration. | {} |
| block_public_acls | bool | Whether to block public ACLs | true |
| versioning | object({ expected_bucket_o | Map containing versioning configuration. | {} |
| website | map(string) | Map containing website configuration. | {} |
| notification_lambda | list(map(string)) | List of maps containing lambda notification configuration. | [] |
| restrict_public_buckets | bool | Whether to restrict public buckets | true |
| policy | object({ json = string } | Bucket policy | null |
| filepath | string | The local path where the desired files will be uploaded to the bucket | "" |
| notification_topic | list(map(string)) | List of maps containing topic notification configuration. | [] |
| ignore_public_acls | bool | Whether to ignore public ACLs | true |
| key_prefix | string | Prefix to put your key(s) inside the bucket. E.g.: logs -> all files will be upl | "" |
| notification_queue | list(map(string)) | List of maps containing queue notification configuration. | [] |
website_domainhosted_zone_idwebsiteregional_domain_namedomain_namenotificationsarnnameobjectsAzure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,