access_tags |
A list of access tags to apply to the cos instance created by the module, see https://cloud.ibm.com/docs/account?topic=account-access-tags-tutorial for more details |
list(string) |
[] |
no |
activity_tracker_management_events |
If set to true, all Object Storage management events will be sent to Activity Tracker. |
bool |
true |
no |
activity_tracker_read_data_events |
If set to true, all Object Storage bucket read events (downloads) will be sent to Activity Tracker. |
bool |
true |
no |
activity_tracker_write_data_events |
If set to true, all Object Storage bucket write events (uploads) will be sent to Activity Tracker. |
bool |
true |
no |
add_bucket_name_suffix |
Add random generated suffix (4 characters long) to the newly provisioned Object Storage bucket name (Optional). |
bool |
false |
no |
archive_days |
Specifies the number of days when the archive rule action takes effect. This must be set to null when when using var.cross_region_location as archive data is not supported with this feature. |
number |
null |
no |
archive_type |
Specifies the storage class or archive type to which you want the object to transition. |
string |
"Glacier" |
no |
bucket_name |
The name to give the newly provisioned Object Storage bucket. |
string |
"snapshots" |
no |
bucket_storage_class |
the storage class of the newly provisioned Object Storage bucket. Supported values are 'standard', 'vault', 'cold', 'smart' and onerate_active . |
string |
"standard" |
no |
cos_bucket_cbr_rules |
(Optional, list) List of CBR rules to create for the bucket |
list(object({ description = string account_id = string rule_contexts = list(object({ attributes = optional(list(object({ name = string value = string }))) })) enforcement_mode = string tags = optional(list(object({ name = string value = string })), []) operations = optional(list(object({ api_types = list(object({ api_type_id = string })) }))) })) |
[] |
no |
cos_instance_cbr_rules |
(Optional, list) List of CBR rules to create for the instance |
list(object({ description = string account_id = string rule_contexts = list(object({ attributes = optional(list(object({ name = string value = string }))) })) enforcement_mode = string tags = optional(list(object({ name = string value = string })), []) operations = optional(list(object({ api_types = list(object({ api_type_id = string })) }))) })) |
[] |
no |
cos_instance_name |
The name to give the Cloud Object Storage instance that will be provisioned by this module. Only required if 'create_cos_instance' is true. |
string |
"billing_snapshots" |
no |
cos_plan |
Plan to be used for creating Cloud Object Storage instance. Only used if 'create_cos_instance' it true. |
string |
"standard" |
no |
create_cos_instance |
Set as true to create a new Cloud Object Storage instance. |
bool |
true |
no |
create_key_protect_instance |
Key Protect instance name |
bool |
true |
no |
cross_region_location |
Specify the cross-regional bucket location. Supported values are 'us', 'eu', and 'ap'. If you pass a value for this, ensure to set the value of var.region to null. |
string |
null |
no |
existing_cos_instance_id |
The ID of an existing Cloud Object Storage instance. Required if 'var.create_cos_instance' is false. |
string |
null |
no |
existing_kms_instance_crn |
The CRN of an existing Key Protect or Hyper Protect Crypto Services instance. Required if 'create_key_protect_instance' is false. |
string |
null |
no |
expire_days |
Specifies the number of days when the expire rule action takes effect. |
number |
null |
no |
key_endpoint_type |
The type of endpoint to be used for creating keys. Accepts 'public' or 'private' |
string |
"public" |
no |
key_name |
Name of the Object Storage bucket encryption key |
string |
null |
no |
key_protect_allowed_network |
The type of the allowed network to be set for the Key Protect instance. Possible values are 'private-only', or 'public-and-private'. Only used if 'create_key_protect_instance' is true. |
string |
"public-and-private" |
no |
key_protect_instance_name |
Key Protect instance name |
string |
null |
no |
key_ring_endpoint_type |
The type of endpoint to be used for creating key rings. Accepts 'public' or 'private' |
string |
"public" |
no |
key_ring_name |
Name of the key ring to group keys |
string |
"bucket-encryption" |
no |
management_endpoint_type_for_bucket |
The type of endpoint for the IBM terraform provider to use to manage the bucket. (public, private, or direct) |
string |
"public" |
no |
monitoring_crn |
The CRN of an IBM Cloud Monitoring instance to send Object Storage bucket metrics to. If no value passed, metrics are sent to the instance associated to the container's location unless otherwise specified in the Metrics Router service configuration. |
string |
null |
no |
object_versioning_enabled |
Enable object versioning to keep multiple versions of an object in a bucket. |
bool |
false |
no |
region |
Region where resources are created |
string |
"us-south" |
no |
request_metrics_enabled |
If set to true , all Object Storage bucket request metrics will be sent to the monitoring service. |
bool |
true |
no |
resource_group_id |
The resource group ID where resources will be provisioned. |
string |
n/a |
yes |
resource_tags |
Optional list of tags to be added to created resources |
list(string) |
[] |
no |
retention_default |
Specifies default duration of time an object that can be kept unmodified for Object Storage bucket. |
number |
90 |
no |
retention_enabled |
Retention enabled for Object Storage bucket. |
bool |
false |
no |
retention_maximum |
Specifies maximum duration of time an object that can be kept unmodified for Object Storage bucket. |
number |
350 |
no |
retention_minimum |
Specifies minimum duration of time an object must be kept unmodified for Object Storage bucket. |
number |
90 |
no |
retention_permanent |
Specifies a permanent retention status either enable or disable for Object Storage bucket. |
bool |
false |
no |
rotation_enabled |
If set to true, Key Protect enables a rotation policy on the Key Protect instance. Only used if 'create_key_protect_instance' is true. |
bool |
true |
no |
rotation_interval_month |
Specifies the number of months for the encryption key to be rotated.. Must be between 1 and 12 inclusive. Only used if 'create_key_protect_instance' is true. |
number |
1 |
no |
skip_iam_authorization_policy |
Set to true to skip the creation of an IAM authorization policy that permits the COS instance created to read the encryption key from the KMS instance in existing_kms_instance_crn . WARNING: An authorization policy must exist before an encrypted bucket can be created |
bool |
false |
no |
usage_metrics_enabled |
If set to true , all Object Storage bucket usage metrics will be sent to the monitoring service. |
bool |
true |
no |
use_existing_key_ring |
Whether the key_ring_name corresponds to an existing key ring or a new key ring for storing the encryption key |
string |
false |
no |