Skip to content
2 changes: 1 addition & 1 deletion examples/fscloud/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ module "cos" {
kms_guid = local.kms_instance_guid
kms_key_crn = var.root_key_crn
skip_iam_authorization_policy = false
management_endpoint_type = "private"
management_endpoint_type = "direct"
storage_class = "smart"
region_location = var.region
force_delete = true
Expand Down
21 changes: 4 additions & 17 deletions ibm_catalog.json
Original file line number Diff line number Diff line change
Expand Up @@ -203,26 +203,13 @@
{
"type": "regex",
"description": "The value provided for 'existing_cos_instance_crn' is not valid.",
"value": "^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
"value": "^$|^__NULL__$|^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
}
]
},
{
"key": "cos_bucket_name"
},
{
"key": "management_endpoint_type_for_bucket",
"options": [
{
"displayname": "direct",
"value": "direct"
},
{
"displayname": "private",
"value": "private"
}
]
},
{
"key": "skip_event_notifications_cos_auth_policy"
},
Expand Down Expand Up @@ -344,7 +331,7 @@
{
"diagram": {
"caption": "IBM Cloud Event Notifications",
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en.svg",
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en-se.svg",
"type": "image/svg+xml"
},
"description": "This deployable architecture creates and configures an IBM Cloud Event Notifications instance. It requires an Object Storage instance as part of the topology. Within this instance, an Object Storage bucket is created to store events that fail to be delivered.<br><br> By default, both the Event Notifications instance and the storage bucket are encrypted using a key management service to enhance security. <br><br> To support secure credential management, you can optionally integrate with IBM Cloud Secrets Manager to securely store Event Notifications service credentials."
Expand Down Expand Up @@ -593,7 +580,7 @@
{
"type": "regex",
"description": "The value provided for 'existing_cos_instance_crn' is not valid.",
"value": "^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
"value": "^$|^__NULL__$|^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
}
]
},
Expand Down Expand Up @@ -767,7 +754,7 @@
{
"diagram": {
"caption": "IBM Cloud Event Notifications",
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en.svg",
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en-fc.svg",
"type": "image/svg+xml"
},
"description": "This architecture supports creating and configuring an IBM Cloud Event Notifications instance.<br><br> An IBM Cloud Object Storage instance is required for this topology. Within this instance, an Object Storage bucket is created, which serves as the storage to collect events that failed delivery. The [Cloud automation for Object Storage](https://cloud.ibm.com/catalog/7a4d68b4-cf8b-40cd-a3d1-f49aff526eb3/architecture/deploy-arch-ibm-cos-68921490-2778-4930-ac6d-bae7be6cd958-global) deployable architecture creates the Object Storage instance. Additionally, the Event Notifications instance and storage bucket can be encrypted by using a [key management service](https://cloud.ibm.com/catalog/7a4d68b4-cf8b-40cd-a3d1-f49aff526eb3/architecture/deploy-arch-ibm-kms-2cad4789-fa90-4886-9c9e-857081c273ee-global) such as Key Protect or Hyper Protect Crypto Services to enhance security.<br><br> For monitoring needs, you can enable Cloud Monitoring for your Event Notifications instance. The [Cloud automation for Cloud Monitoring](https://cloud.ibm.com/catalog/7a4d68b4-cf8b-40cd-a3d1-f49aff526eb3/architecture/deploy-arch-ibm-cloud-monitoring-73debdbf-894f-4c14-81c7-5ece3a70b67d-global) deployable architecture provides advanced monitoring and operational insights into the performance and health of your deployment.<br><br> Secrets Manager integration can also be enabled for writing the Event Notifications service credentials to an existing IBM Cloud Secrets Manager instance, ensuring secure management of the credentials."
Expand Down
1 change: 1 addition & 0 deletions reference-architectures/en-fc.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions reference-architectures/en-se.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 0 additions & 4 deletions reference-architectures/en.svg

This file was deleted.

17 changes: 16 additions & 1 deletion solutions/fully-configurable/outputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ output "crn_list_object" {

output "crn" {
description = "Event Notification crn"
value = local.use_existing_en_instance ? var.existing_event_notifications_instance_crn : module.event_notifications[0].crn
value = local.eventnotification_crn
}

output "guid" {
Expand Down Expand Up @@ -54,3 +54,18 @@ output "event_notifications_public_endpoint" {
description = "Event Notifications instance public endpoint URL"
value = local.use_existing_en_instance ? null : module.event_notifications[0].event_notifications_public_endpoint
}

output "next_steps_text" {
value = "Now, you can use Event Notifications to route events for critical notifications."
description = "Next steps text"
}

output "next_step_primary_label" {
value = "Go to Event Notifications"
description = "Primary label"
}

output "next_step_primary_url" {
value = "https://cloud.ibm.com/services/event-notifications/${local.eventnotification_crn}"
description = "Primary URL"
}
4 changes: 2 additions & 2 deletions solutions/fully-configurable/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -294,11 +294,11 @@ variable "cos_bucket_region" {
}

variable "management_endpoint_type_for_bucket" {
description = "The type of endpoint for the IBM Terraform provider to use to manage Object Storage buckets. Available values: `public`, `private` or `direct`."
description = "The type of endpoint for the IBM Terraform provider to use to manage Object Storage buckets. Available values: `public` or `direct`."
type = string
default = "direct"
validation {
condition = contains(["public", "private", "direct"], var.management_endpoint_type_for_bucket)
condition = contains(["public", "direct"], var.management_endpoint_type_for_bucket)
error_message = "The specified `management_endpoint_type_for_bucket` is not a valid selection."
}
}
Expand Down
2 changes: 1 addition & 1 deletion solutions/security-enforced/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ module "event_notifications" {
skip_event_notifications_cos_auth_policy = var.skip_event_notifications_cos_auth_policy
skip_cos_kms_auth_policy = var.skip_cos_kms_auth_policy
cos_bucket_region = var.cos_bucket_region
management_endpoint_type_for_bucket = var.management_endpoint_type_for_bucket
management_endpoint_type_for_bucket = "direct"
# Secrets Manager Related
existing_secrets_manager_instance_crn = var.existing_secrets_manager_instance_crn
existing_secrets_manager_endpoint_type = "private"
Expand Down
15 changes: 15 additions & 0 deletions solutions/security-enforced/outputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -49,3 +49,18 @@ output "event_notifications_private_endpoint" {
description = "Event Notifications instance private endpoint URL"
value = module.event_notifications.event_notifications_private_endpoint
}

output "next_steps_text" {
value = module.event_notifications.next_steps_text
description = "Next steps text"
}

output "next_step_primary_label" {
value = module.event_notifications.next_step_primary_label
description = "Primary label"
}

output "next_step_primary_url" {
value = module.event_notifications.next_step_primary_url
description = "Primary URL"
}
10 changes: 0 additions & 10 deletions solutions/security-enforced/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -180,16 +180,6 @@ variable "add_bucket_name_suffix" {
default = true
}

variable "management_endpoint_type_for_bucket" {
description = "The type of endpoint for the IBM Terraform provider to use to manage Object Storage buckets. Available values: `private` or `direct`."
type = string
default = "direct"
validation {
condition = contains(["private", "direct"], var.management_endpoint_type_for_bucket)
error_message = "The specified `management_endpoint_type_for_bucket` is not a valid selection."
}
}

variable "cos_bucket_access_tags" {
type = list(string)
description = "A list of access tags to apply to the Cloud Object Storage bucket created by the solution. For more information, [see here](https://cloud.ibm.com/docs/account?topic=account-access-tags-tutorial)."
Expand Down