Skip to content

Commit fbdf0e3

Browse files
authored
feat: added "Next steps" to the UI for DA deployments (#568)
1 parent b7cca6f commit fbdf0e3

File tree

10 files changed

+41
-36
lines changed

10 files changed

+41
-36
lines changed

examples/fscloud/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ module "cos" {
6161
kms_guid = local.kms_instance_guid
6262
kms_key_crn = var.root_key_crn
6363
skip_iam_authorization_policy = false
64-
management_endpoint_type = "private"
64+
management_endpoint_type = "direct"
6565
storage_class = "smart"
6666
region_location = var.region
6767
force_delete = true

ibm_catalog.json

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -203,26 +203,13 @@
203203
{
204204
"type": "regex",
205205
"description": "The value provided for 'existing_cos_instance_crn' is not valid.",
206-
"value": "^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
206+
"value": "^$|^__NULL__$|^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
207207
}
208208
]
209209
},
210210
{
211211
"key": "cos_bucket_name"
212212
},
213-
{
214-
"key": "management_endpoint_type_for_bucket",
215-
"options": [
216-
{
217-
"displayname": "direct",
218-
"value": "direct"
219-
},
220-
{
221-
"displayname": "private",
222-
"value": "private"
223-
}
224-
]
225-
},
226213
{
227214
"key": "skip_event_notifications_cos_auth_policy"
228215
},
@@ -344,7 +331,7 @@
344331
{
345332
"diagram": {
346333
"caption": "IBM Cloud Event Notifications",
347-
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en.svg",
334+
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en-se.svg",
348335
"type": "image/svg+xml"
349336
},
350337
"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."
@@ -593,7 +580,7 @@
593580
{
594581
"type": "regex",
595582
"description": "The value provided for 'existing_cos_instance_crn' is not valid.",
596-
"value": "^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
583+
"value": "^$|^__NULL__$|^crn:(.*:){3}cloud-object-storage:(.*:){2}[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}::$"
597584
}
598585
]
599586
},
@@ -767,7 +754,7 @@
767754
{
768755
"diagram": {
769756
"caption": "IBM Cloud Event Notifications",
770-
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en.svg",
757+
"url": "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-event-notifications/main/reference-architectures/en-fc.svg",
771758
"type": "image/svg+xml"
772759
},
773760
"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."

reference-architectures/en-fc.svg

Lines changed: 1 addition & 0 deletions
Loading

reference-architectures/en-se.svg

Lines changed: 1 addition & 0 deletions
Loading

reference-architectures/en.svg

Lines changed: 0 additions & 4 deletions
This file was deleted.

solutions/fully-configurable/outputs.tf

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ output "crn_list_object" {
1515

1616
output "crn" {
1717
description = "Event Notification crn"
18-
value = local.use_existing_en_instance ? var.existing_event_notifications_instance_crn : module.event_notifications[0].crn
18+
value = local.eventnotification_crn
1919
}
2020

2121
output "guid" {
@@ -54,3 +54,18 @@ output "event_notifications_public_endpoint" {
5454
description = "Event Notifications instance public endpoint URL"
5555
value = local.use_existing_en_instance ? null : module.event_notifications[0].event_notifications_public_endpoint
5656
}
57+
58+
output "next_steps_text" {
59+
value = "Now, you can use Event Notifications to route events for critical notifications."
60+
description = "Next steps text"
61+
}
62+
63+
output "next_step_primary_label" {
64+
value = "Go to Event Notifications"
65+
description = "Primary label"
66+
}
67+
68+
output "next_step_primary_url" {
69+
value = "https://cloud.ibm.com/services/event-notifications/${local.eventnotification_crn}"
70+
description = "Primary URL"
71+
}

solutions/fully-configurable/variables.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -294,11 +294,11 @@ variable "cos_bucket_region" {
294294
}
295295

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

solutions/security-enforced/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ module "event_notifications" {
3434
skip_event_notifications_cos_auth_policy = var.skip_event_notifications_cos_auth_policy
3535
skip_cos_kms_auth_policy = var.skip_cos_kms_auth_policy
3636
cos_bucket_region = var.cos_bucket_region
37-
management_endpoint_type_for_bucket = var.management_endpoint_type_for_bucket
37+
management_endpoint_type_for_bucket = "direct"
3838
# Secrets Manager Related
3939
existing_secrets_manager_instance_crn = var.existing_secrets_manager_instance_crn
4040
existing_secrets_manager_endpoint_type = "private"

solutions/security-enforced/outputs.tf

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,18 @@ output "event_notifications_private_endpoint" {
4949
description = "Event Notifications instance private endpoint URL"
5050
value = module.event_notifications.event_notifications_private_endpoint
5151
}
52+
53+
output "next_steps_text" {
54+
value = module.event_notifications.next_steps_text
55+
description = "Next steps text"
56+
}
57+
58+
output "next_step_primary_label" {
59+
value = module.event_notifications.next_step_primary_label
60+
description = "Primary label"
61+
}
62+
63+
output "next_step_primary_url" {
64+
value = module.event_notifications.next_step_primary_url
65+
description = "Primary URL"
66+
}

solutions/security-enforced/variables.tf

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -180,16 +180,6 @@ variable "add_bucket_name_suffix" {
180180
default = true
181181
}
182182

183-
variable "management_endpoint_type_for_bucket" {
184-
description = "The type of endpoint for the IBM Terraform provider to use to manage Object Storage buckets. Available values: `private` or `direct`."
185-
type = string
186-
default = "direct"
187-
validation {
188-
condition = contains(["private", "direct"], var.management_endpoint_type_for_bucket)
189-
error_message = "The specified `management_endpoint_type_for_bucket` is not a valid selection."
190-
}
191-
}
192-
193183
variable "cos_bucket_access_tags" {
194184
type = list(string)
195185
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)."

0 commit comments

Comments
 (0)