This repository is used to manage object storage buckets on scaleway using terraform.
- Setup the scaleway provider in your tf file.
- Include this module in your tf file. Refer to documentation.
module "my_bucket" {
source = "scaleway-terraform-modules/bucket/scaleway"
version = "0.0.1"
}
Name | Version |
---|---|
terraform | >= 0.13 |
scaleway | >= 2.10.0 |
Name | Type |
---|---|
scaleway_object_bucket.this | resource |
scaleway_object_bucket_acl.this | resource |
scaleway_object_bucket_lock_configuration.this | resource |
scaleway_object_bucket_policy.this | resource |
scaleway_object_bucket_website_configuration.this | resource |
Name | Description | Type | Default | Required |
---|---|---|---|---|
name | Name of the bucket. | string |
n/a | yes |
acl | Canned ACL to apply to the bucket. See AWS (documentation)[https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl] for more information. | string |
"private" |
no |
force_destroy | Enable deletion of objects in bucket before destroying, locked objects or under legal hold are also deleted and not recoverable. | bool |
false |
no |
lifecycle_rules | Define bucket lifecycle configuration | list(object({ id = string prefix = optional(string) tags = optional(map(string)) enabled = bool abort_incomplete_multipart_upload_days = optional(number) expiration = optional(object({ days = string })) transition = optional(object({ days = number storage_class = string })) })) |
[] |
no |
policy | Policy document. For more information about building AWS IAM policy documents with Terraform, see the AWS IAM Policy Document Guide. | object({ Version = string, Id = string Statement = list(object({ Sid = string Effect = string Principal = string Action = list(string) Resource = list(string) })) }) |
null |
no |
project_id | ID of the project the bucket is associated with. If null, ressources will be created in the default project associated with the key. | string |
null |
no |
region | Region in which the bucket should be created. Ressource will be created in the region set at the provider level if null. | string |
null |
no |
tags | A list of tags for the bucket. As the Scaleway console does not support key/value tags, tags are written with the format value/value. | list(string) |
[] |
no |
versioning_enabled | Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket. | bool |
false |
no |
versioning_lock_configuration | Specifies the Object Lock rule for the bucket. Requires versioning. | object({ mode = string, days = optional(number), years = optional(number), }) |
{ "days": null, "mode": "GOVERNANCE", "years": null } |
no |
website_index | Website Configuration. | string |
null |
no |
Name | Description |
---|---|
bucket_endpoint | Endpoint URL of the bucket. |
bucket_id | Unique name of the bucket. |
s3_website_information | S3 Website information |
Module is maintained with help from the community.
Mozilla Public License 2.0 Licensed. See LICENSE for full details.