Skip to content

Commit eb1ebcc

Browse files
fix: updated the default value of the prefix input to be "dev" in the DA (#252)
* refactor: Update prefix logic in DA * testing changes * refactor: used try function to update prefix login --------- Co-authored-by: Md Anam Raihan <[email protected]>
1 parent 65eb6a3 commit eb1ebcc

File tree

5 files changed

+36
-26
lines changed

5 files changed

+36
-26
lines changed

ibm_catalog.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,9 @@
124124
]
125125
},
126126
{
127-
"key": "prefix"
127+
"key": "prefix",
128+
"required": true,
129+
"decsription": "Prefix to add to all resources created by this solution. To not use any prefix value, you can enter the string `__NULL__`."
128130
},
129131
{
130132
"key": "use_existing_resource_group"
@@ -568,7 +570,9 @@
568570
]
569571
},
570572
{
571-
"key": "prefix"
573+
"key": "prefix",
574+
"required": true,
575+
"decsription": "Prefix to add to all resources created by this solution. To not use any prefix value, you can enter the string `__NULL__`."
572576
},
573577
{
574578
"key": "cluster_id"

solutions/agents/main.tf

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
locals {
2+
prefix = var.prefix != null ? (var.prefix != "" ? var.prefix : null) : null
3+
}
14
##############################################################################
25
# Observability Agents
36
##############################################################################
@@ -19,11 +22,11 @@ module "observability_agents" {
1922
wait_till = var.wait_till
2023
# Cloud Monitoring (Sysdig) Agent
2124
cloud_monitoring_enabled = var.cloud_monitoring_enabled
22-
cloud_monitoring_agent_name = var.prefix != null ? "${var.prefix}-${var.cloud_monitoring_agent_name}" : var.cloud_monitoring_agent_name
25+
cloud_monitoring_agent_name = try("${local.prefix}-${var.cloud_monitoring_agent_name}", var.cloud_monitoring_agent_name)
2326
cloud_monitoring_agent_namespace = var.cloud_monitoring_agent_namespace
2427
cloud_monitoring_endpoint_type = var.cloud_monitoring_endpoint_type
2528
cloud_monitoring_access_key = var.cloud_monitoring_access_key
26-
cloud_monitoring_secret_name = var.prefix != null ? "${var.prefix}-${var.cloud_monitoring_secret_name}" : var.cloud_monitoring_secret_name
29+
cloud_monitoring_secret_name = try("${local.prefix}-${var.cloud_monitoring_secret_name}", var.cloud_monitoring_secret_name)
2730
cloud_monitoring_metrics_filter = var.cloud_monitoring_metrics_filter
2831
cloud_monitoring_container_filter = var.cloud_monitoring_container_filter
2932
cloud_monitoring_agent_tags = var.cloud_monitoring_agent_tags

solutions/agents/variables.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ variable "ibmcloud_api_key" {
66

77
variable "prefix" {
88
type = string
9-
description = "The prefix for resources created by this solution."
10-
default = null
9+
description = "The prefix to add to all resources that this solution creates. To not use any prefix value, you can set this value to `null` or an empty string."
10+
default = "dev"
1111
}
1212
variable "provider_visibility" {
1313
description = "Set the visibility value for the IBM terraform provider. Supported values are `public`, `private`, `public-and-private`. [Learn more](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/guides/custom-service-endpoints)."

solutions/instances/main.tf

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
#######################################################################################################################
22
# Local Variables
33
#######################################################################################################################
4+
locals {
5+
prefix = var.prefix != null ? (var.prefix != "" ? var.prefix : null) : null
6+
}
47

58
locals {
69

@@ -15,10 +18,10 @@ locals {
1518

1619
default_cos_region = var.cos_region != null ? var.cos_region : var.region
1720

18-
cos_key_ring_name = var.prefix != null ? "${var.prefix}-${var.cos_key_ring_name}" : var.cos_key_ring_name
19-
cos_key_name = var.prefix != null ? "${var.prefix}-${var.cos_key_name}" : var.cos_key_name
20-
log_archive_cos_bucket_name = var.prefix != null ? "${var.prefix}-${var.log_archive_cos_bucket_name}" : var.log_archive_cos_bucket_name
21-
at_cos_target_bucket_name = var.prefix != null ? "${var.prefix}-${var.at_cos_target_bucket_name}" : var.at_cos_target_bucket_name
21+
cos_key_ring_name = try("${local.prefix}-${var.cos_key_ring_name}", var.cos_key_ring_name)
22+
cos_key_name = try("${local.prefix}-${var.cos_key_name}", var.cos_key_name)
23+
log_archive_cos_bucket_name = try("${local.prefix}-${var.log_archive_cos_bucket_name}", var.log_archive_cos_bucket_name)
24+
at_cos_target_bucket_name = try("${local.prefix}-${var.at_cos_target_bucket_name}", var.at_cos_target_bucket_name)
2225

2326
cos_instance_crn = var.existing_cos_instance_crn != null ? var.existing_cos_instance_crn : length(module.cos_instance) != 0 ? module.cos_instance[0].cos_instance_crn : null
2427
cos_instance_guid = var.existing_cos_instance_crn == null ? length(module.cos_instance) != 0 ? module.cos_instance[0].cos_instance_guid : null : element(split(":", var.existing_cos_instance_crn), length(split(":", var.existing_cos_instance_crn)) - 3)
@@ -49,12 +52,12 @@ locals {
4952
cos_target_bucket_name = var.existing_at_cos_target_bucket_name != null ? var.existing_at_cos_target_bucket_name : var.enable_at_event_routing_to_cos_bucket ? module.cos_bucket[0].buckets[local.at_cos_target_bucket_name].bucket_name : null
5053
cos_resource_group_id = var.cos_resource_group_name != null ? module.cos_resource_group[0].resource_group_id : module.resource_group.resource_group_id
5154
cos_target_bucket_endpoint = var.existing_at_cos_target_bucket_endpoint != null ? var.existing_at_cos_target_bucket_endpoint : var.enable_at_event_routing_to_cos_bucket ? module.cos_bucket[0].buckets[local.at_cos_target_bucket_name].s3_endpoint_private : null
52-
cos_target_name = var.prefix != null ? "${var.prefix}-cos-target" : "cos-target"
53-
cloud_logs_target_name = var.prefix != null ? "${var.prefix}-cloud-logs-target" : "cloud-logs-target"
54-
at_cos_route_name = var.prefix != null ? "${var.prefix}-at-cos-route" : "at-cos-route"
55-
at_cloud_logs_route_name = var.prefix != null ? "${var.prefix}-at-cloud-logs-route" : "at-cloud-logs-route"
56-
metric_router_target_name = var.prefix != null ? "${var.prefix}-cloud-monitoring-target" : "cloud-monitoring-target"
57-
metric_router_route_name = var.prefix != null ? "${var.prefix}-metric-routing-route" : "metric-routing-route"
55+
cos_target_name = try("${local.prefix}-cos-target", "cos-target")
56+
cloud_logs_target_name = try("${local.prefix}-cloud-logs-target", "cloud-logs-target")
57+
at_cos_route_name = try("${local.prefix}-at-cos-route", "at-cos-route")
58+
at_cloud_logs_route_name = try("${local.prefix}-at-cloud-logs-route", "at-cloud-logs-route")
59+
metric_router_target_name = try("${local.prefix}-cloud-monitoring-target", "cloud-monitoring-target")
60+
metric_router_route_name = try("${local.prefix}-metric-routing-route", "metric-routing-route")
5861

5962
default_metrics_router_route = var.enable_metrics_routing_to_cloud_monitoring ? [{
6063
name = local.metric_router_route_name
@@ -131,13 +134,13 @@ locals {
131134

132135

133136
# Cloud Logs data bucket
134-
cloud_log_data_bucket = var.prefix != null ? "${var.prefix}-${var.cloud_log_data_bucket_name}" : var.cloud_log_data_bucket_name
137+
cloud_log_data_bucket = try("${local.prefix}-${var.cloud_log_data_bucket_name}", var.cloud_log_data_bucket_name)
135138

136139
parsed_log_data_bucket_name = var.existing_cloud_logs_data_bucket_crn != null ? split(":", var.existing_cloud_logs_data_bucket_crn) : []
137140
existing_cloud_log_data_bucket_name = length(local.parsed_log_data_bucket_name) > 0 ? local.parsed_log_data_bucket_name[1] : null
138141

139142
# Cloud Logs metrics bucket
140-
cloud_log_metrics_bucket = var.prefix != null ? "${var.prefix}-${var.cloud_log_metrics_bucket_name}" : var.cloud_log_metrics_bucket_name
143+
cloud_log_metrics_bucket = try("${local.prefix}-${var.cloud_log_metrics_bucket_name}", var.cloud_log_metrics_bucket_name)
141144

142145
parsed_log_metrics_bucket_name = var.existing_cloud_logs_metrics_bucket_crn != null ? split(":", var.existing_cloud_logs_metrics_bucket_crn) : []
143146
existing_cloud_log_metrics_bucket_name = length(local.parsed_log_metrics_bucket_name) > 0 ? local.parsed_log_metrics_bucket_name[1] : null
@@ -157,7 +160,7 @@ locals {
157160
module "resource_group" {
158161
source = "terraform-ibm-modules/resource-group/ibm"
159162
version = "1.1.6"
160-
resource_group_name = var.use_existing_resource_group == false ? (var.prefix != null ? "${var.prefix}-${var.resource_group_name}" : var.resource_group_name) : null
163+
resource_group_name = var.use_existing_resource_group == false ? (try("${local.prefix}-${var.resource_group_name}", var.resource_group_name)) : null
161164
existing_resource_group_name = var.use_existing_resource_group == true ? var.resource_group_name : null
162165
}
163166

@@ -168,16 +171,16 @@ module "cos_resource_group" {
168171
}
169172
source = "terraform-ibm-modules/resource-group/ibm"
170173
version = "1.1.6"
171-
resource_group_name = var.prefix != null ? "${var.prefix}-${var.cos_resource_group_name}" : var.cos_resource_group_name
174+
resource_group_name = try("${local.prefix}-${var.cos_resource_group_name}", var.cos_resource_group_name)
172175
}
173176

174177
#######################################################################################################################
175178
# Observability Instance
176179
#######################################################################################################################
177180

178181
locals {
179-
cloud_monitoring_instance_name = var.prefix != null ? "${var.prefix}-${var.cloud_monitoring_instance_name}" : var.cloud_monitoring_instance_name
180-
cloud_logs_instance_name = var.prefix != null ? "${var.prefix}-${var.cloud_logs_instance_name}" : var.cloud_logs_instance_name
182+
cloud_monitoring_instance_name = try("${local.prefix}-${var.cloud_monitoring_instance_name}", var.cloud_monitoring_instance_name)
183+
cloud_logs_instance_name = try("${local.prefix}-${var.cloud_logs_instance_name}", var.cloud_logs_instance_name)
181184
cloud_logs_data_bucket_crn = var.existing_cloud_logs_data_bucket_crn != null ? var.existing_cloud_logs_data_bucket_crn : module.cos_bucket[0].buckets[local.cloud_log_data_bucket].bucket_crn
182185
cloud_log_metrics_bucket_crn = var.existing_cloud_logs_metrics_bucket_crn != null ? var.existing_cloud_logs_metrics_bucket_crn : module.cos_bucket[0].buckets[local.cloud_log_metrics_bucket].bucket_crn
183186
cloud_logs_buckets = [local.cloud_logs_data_bucket_crn, local.cloud_log_metrics_bucket_crn]
@@ -281,7 +284,7 @@ module "observability_instance" {
281284
cloud_logs_existing_en_instances = [for index, _ in local.cloud_logs_existing_en_instances : {
282285
en_instance_id = module.en_crn_parser[index]["service_instance"]
283286
en_region = module.en_crn_parser[index]["region"]
284-
en_integration_name = var.prefix != null ? "${var.prefix}-${local.cloud_logs_existing_en_instances[index]["integration_name"]}" : local.cloud_logs_existing_en_instances[index]["integration_name"]
287+
en_integration_name = try("${local.prefix}-${local.cloud_logs_existing_en_instances[index]["integration_name"]}", local.cloud_logs_existing_en_instances[index]["integration_name"])
285288
skip_en_auth_policy = local.cloud_logs_existing_en_instances[index]["skip_en_auth_policy"]
286289
}]
287290
skip_logs_routing_auth_policy = var.skip_logs_routing_auth_policy
@@ -452,7 +455,7 @@ module "cos_instance" {
452455
version = "8.16.4"
453456
resource_group_id = local.cos_resource_group_id
454457
create_cos_instance = true
455-
cos_instance_name = var.prefix != null ? "${var.prefix}-${var.cos_instance_name}" : var.cos_instance_name
458+
cos_instance_name = try("${local.prefix}-${var.cos_instance_name}", var.cos_instance_name)
456459
cos_tags = var.cos_instance_tags
457460
existing_cos_instance_id = var.existing_cos_instance_crn
458461
access_tags = var.cos_instance_access_tags

solutions/instances/variables.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ variable "region" {
4747

4848
variable "prefix" {
4949
type = string
50-
description = "The prefix to add to all resources that this solution creates."
51-
default = null
50+
description = "The prefix to add to all resources that this solution creates. To not use any prefix value, you can set this value to `null` or an empty string."
51+
default = "dev"
5252
}
5353

5454
variable "provider_visibility" {

0 commit comments

Comments
 (0)