Skip to content

fix: update the reference-architectures #582

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Apr 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion reference-architectures/instance.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion reference-architectures/secure-cross-regional-bucket.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion reference-architectures/secure-regional-bucket.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion solutions/instance/variables.tf
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
variable "ibmcloud_api_key" {
type = string
description = "The IBM Cloud API Token"
description = "The IBM Cloud platform API key to deploy IAM-enabled resources."
sensitive = true
}

Expand Down
40 changes: 20 additions & 20 deletions solutions/secure-cross-regional-bucket/variables.tf
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
variable "ibmcloud_api_key" {
type = string
description = "The IBM Cloud API Token"
description = "The IBM Cloud platform API key to deploy IAM-enabled resources."
sensitive = true
}

Expand All @@ -17,45 +17,45 @@ variable "kms_region" {
variable "existing_kms_guid" {
type = string
default = null
description = "The GUID of the KMS instance used for the COS bucket root Key. Only required if not supplying an existing KMS root key and if 'skip_iam_authorization_policy' is true."
description = "The GUID of the KMS instance that is used for the Object Storage bucket root key. Required only if a KMS root key is specified and if `skip_iam_authorization_policy` is true."
}

variable "skip_iam_authorization_policy" {
type = bool
description = "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_guid`. WARNING: An authorization policy must exist before an encrypted bucket can be created"
description = "Set to true to skip the creation of an IAM authorization policy that permits the Object Storage instance created to read the encryption key from the KMS instance in `existing_kms_guid`. WARNING: An authorization policy must exist before an encrypted bucket can be created"
default = false
}

variable "existing_kms_key_crn" {
type = string
default = null
description = "The CRN of an existing KMS key to be used to encrypt the COS bucket. If not supplied, a new key ring and key will be created in the provided KMS instance."
description = "The CRN of an existing KMS key to be used to encrypt the Object Storage bucket. If not supplied, a new key ring and key will be created in the provided KMS instance."
}

variable "kms_endpoint_type" {
type = string
description = "The type of endpoint to be used for communicating with the KMS instance. Allowed values are: 'public' or 'private' (default)"
description = "The type of endpoint to use to communicate with the KMS instance. Allowed values are `public` or `private` (default)."
default = "private"
validation {
condition = can(regex("public|private", var.kms_endpoint_type))
error_message = "The kms_endpoint_type value must be 'public' or 'private'."
error_message = "The value for `kms_endpoint_type` must be `public` or `private`."
}
}

variable "key_ring_name" {
type = string
default = "cross-region-key-ring"
description = "The name to give the Key Ring which will be created for the COS bucket Key. Not used if supplying an existing Key."
description = "The name to give the Key Ring which will be created for the Object Storage bucket Key. Not used if supplying an existing Key."
}

variable "key_name" {
type = string
default = "cross-region-key"
description = "The name to give the Key which will be created for the COS bucket. Not used if supplying an existing Key."
description = "The name to give the Key which will be created for the Object Storage bucket. Not used if supplying an existing Key."
}

########################################################################################################################
# COS variables
# Object Storage variables
########################################################################################################################

variable "existing_cos_instance_id" {
Expand All @@ -71,7 +71,7 @@ variable "bucket_access_tags" {

variable "bucket_name" {
type = string
description = "The name to give the newly provisioned COS bucket."
description = "The name to give the newly provisioned Object Storage bucket."
}

variable "management_endpoint_type_for_bucket" {
Expand All @@ -87,19 +87,19 @@ variable "cross_region_location" {

variable "bucket_storage_class" {
type = string
description = "the storage class of the newly provisioned COS bucket. Supported values are `standard`, `vault`, `cold`, `smart` and `onerate_active`."
description = "The storage class of the newly provisioned Object Storage bucket. Supported values are `standard`, `vault`, `cold`, `smart` and `onerate_active`."
default = "smart"
}

variable "force_delete" {
type = bool
description = "Deletes all the objects in the COS Bucket before bucket is deleted."
description = "Deletes all the objects in the Object Storage Bucket before bucket is deleted."
default = true
}

variable "add_bucket_name_suffix" {
type = bool
description = "Add random generated suffix (4 characters long) to the newly provisioned COS bucket name (Optional)."
description = "Add random generated suffix (4 characters long) to the newly provisioned Object Storage bucket name (Optional)."
default = false
}

Expand All @@ -111,7 +111,7 @@ variable "hard_quota" {

variable "activity_tracker_crn" {
type = string
description = "Activity tracker crn for COS bucket (Optional)"
description = "Activity tracker crn for Object Storage bucket (Optional)"
default = null
}

Expand All @@ -123,7 +123,7 @@ variable "expire_days" {

variable "monitoring_crn" {
type = string
description = "IBM Cloud Monitoring crn for COS bucket (Optional)"
description = "IBM Cloud Monitoring crn for Object Storage bucket (Optional)"
default = null
}

Expand All @@ -134,31 +134,31 @@ variable "object_versioning_enabled" {
}

variable "retention_enabled" {
description = "Retention enabled for COS bucket. Supported only in `us` location."
description = "Retention enabled for Object Storage bucket. Supported only in `us` location."
type = bool
default = false
}

variable "retention_default" {
description = "Specifies default duration of time an object that can be kept unmodified for COS bucket."
description = "Specifies default duration of time an object that can be kept unmodified for Object Storage bucket."
type = number
default = 90
}

variable "retention_maximum" {
description = "Specifies maximum duration of time an object that can be kept unmodified for COS bucket."
description = "Specifies maximum duration of time an object that can be kept unmodified for Object Storage bucket."
type = number
default = 350
}

variable "retention_minimum" {
description = "Specifies minimum duration of time an object must be kept unmodified for COS bucket."
description = "Specifies minimum duration of time an object must be kept unmodified for Object Storage bucket."
type = number
default = 90
}

variable "retention_permanent" {
description = "Specifies a permanent retention status either enable or disable for COS bucket."
description = "Specifies a permanent retention status either enable or disable for Object Storage bucket."
type = bool
default = false
}
40 changes: 20 additions & 20 deletions solutions/secure-regional-bucket/variables.tf
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
variable "ibmcloud_api_key" {
type = string
description = "The IBM Cloud API Token"
description = "The IBM Cloud platform API key to deploy IAM-enabled resources."
sensitive = true
}

Expand All @@ -17,45 +17,45 @@ variable "kms_region" {
variable "existing_kms_guid" {
type = string
default = null
description = "The GUID of the KMS instance used for the COS bucket root Key. Only required if not supplying an existing KMS root key and if 'skip_iam_authorization_policy' is true."
description = "The GUID of the KMS instance that is used for the Object Storage bucket root key. Required only if a KMS root key is specified and if `skip_iam_authorization_policy` is true."
}

variable "skip_iam_authorization_policy" {
type = bool
description = "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_guid`. WARNING: An authorization policy must exist before an encrypted bucket can be created"
description = "Set to true to skip the creation of an IAM authorization policy that permits the Object Storage instance created to read the encryption key from the KMS instance in `existing_kms_guid`. WARNING: An authorization policy must exist before an encrypted bucket can be created"
default = false
}

variable "existing_kms_key_crn" {
type = string
default = null
description = "The CRN of an existing KMS key to be used to encrypt the COS bucket. If not supplied, a new key ring and key will be created in the provided KMS instance."
description = "The CRN of an existing KMS key to be used to encrypt the Object Storage bucket. If not supplied, a new key ring and key will be created in the provided KMS instance."
}

variable "kms_endpoint_type" {
type = string
description = "The type of endpoint to be used for communicating with the KMS instance. Allowed values are: 'public' or 'private' (default)"
description = "The type of endpoint to use to communicate with the KMS instance. Allowed values are `public` or `private` (default)."
default = "private"
validation {
condition = can(regex("public|private", var.kms_endpoint_type))
error_message = "The kms_endpoint_type value must be 'public' or 'private'."
error_message = "The value for `kms_endpoint_type` must be `public` or `private`."
}
}

variable "key_ring_name" {
type = string
default = "cross-region-key-ring"
description = "The name to give the Key Ring which will be created for the COS bucket Key. Not used if supplying an existing Key."
description = "The name to give the Key Ring which will be created for the Object Storage bucket Key. Not used if supplying an existing Key."
}

variable "key_name" {
type = string
default = "cross-region-key"
description = "The name to give the Key which will be created for the COS bucket. Not used if supplying an existing Key."
description = "The name to give the Key which will be created for the Object Storage bucket. Not used if supplying an existing Key."
}

########################################################################################################################
# COS variables
# Object Storage variables
########################################################################################################################

variable "region" {
Expand All @@ -66,7 +66,7 @@ variable "region" {

variable "add_bucket_name_suffix" {
type = bool
description = "Add random generated suffix (4 characters long) to the newly provisioned COS bucket name (Optional)."
description = "Add random generated suffix (4 characters long) to the newly provisioned Object Storage bucket name (Optional)."
default = false
}

Expand All @@ -83,7 +83,7 @@ variable "bucket_access_tags" {

variable "bucket_name" {
type = string
description = "The name to give the newly provisioned COS bucket. "
description = "The name to give the newly provisioned Object Storage bucket. "
}

variable "management_endpoint_type_for_bucket" {
Expand All @@ -94,13 +94,13 @@ variable "management_endpoint_type_for_bucket" {

variable "bucket_storage_class" {
type = string
description = "the storage class of the newly provisioned COS bucket. Supported values are 'standard', 'vault', 'cold', 'smart' and `onerate_active`."
description = "The storage class of the newly provisioned Object Storage bucket. Supported values are `standard`, `vault`, `cold`, `smart` and `onerate_active`."
default = "smart"
}

variable "force_delete" {
type = bool
description = "Deletes all the objects in the COS Bucket before bucket is deleted."
description = "Deletes all the objects in the Object Storage Bucket before bucket is deleted."
default = true
}

Expand All @@ -112,7 +112,7 @@ variable "hard_quota" {

variable "activity_tracker_crn" {
type = string
description = "Activity tracker crn for COS bucket (Optional)"
description = "Activity tracker crn for Object Storage bucket (Optional)"
default = null
}

Expand All @@ -136,7 +136,7 @@ variable "expire_days" {

variable "monitoring_crn" {
type = string
description = "IBM Cloud Monitoring crn for COS bucket (Optional)"
description = "IBM Cloud Monitoring crn for Object Storage bucket (Optional)"
default = null
}

Expand All @@ -147,31 +147,31 @@ variable "object_versioning_enabled" {
}

variable "retention_enabled" {
description = "Retention enabled for COS bucket. "
description = "Retention enabled for Object Storage bucket. "
type = bool
default = false
}

variable "retention_default" {
description = "Specifies default duration of time an object that can be kept unmodified for COS bucket. "
description = "Specifies default duration of time an object that can be kept unmodified for Object Storage bucket. "
type = number
default = 90
}

variable "retention_maximum" {
description = "Specifies maximum duration of time an object that can be kept unmodified for COS bucket. "
description = "Specifies maximum duration of time an object that can be kept unmodified for Object Storage bucket. "
type = number
default = 350
}

variable "retention_minimum" {
description = "Specifies minimum duration of time an object must be kept unmodified for COS bucket. "
description = "Specifies minimum duration of time an object must be kept unmodified for Object Storage bucket. "
type = number
default = 90
}

variable "retention_permanent" {
description = "Specifies a permanent retention status either enable or disable for COS bucket. "
description = "Specifies a permanent retention status either enable or disable for Object Storage bucket. "
type = bool
default = false
}