Skip to content

Commit 8037a1f

Browse files
committed
remove use_ibm_owned_encryption_key
1 parent defcd42 commit 8037a1f

File tree

7 files changed

+18
-42
lines changed

7 files changed

+18
-42
lines changed

.catalog-onboard-pipeline.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ offerings:
66
catalog_id: 7df1e4ca-d54c-4fd0-82ce-3d13247308cd
77
offering_id: 39b67380-7bc8-407f-832c-d610afa17d53
88
variations:
9-
- name: standard
9+
- name: fully-configurable
1010
mark_ready: true
1111
install_type: fullstack
1212
scc:

ibm_catalog.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -334,9 +334,6 @@
334334
"original_grouping": "deployment"
335335
}
336336
},
337-
{
338-
"key": "use_ibm_owned_encryption_key"
339-
},
340337
{
341338
"key": "ibmcloud_kms_api_key"
342339
},

solutions/fully-configurable/catalogValidationValues.json.template

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,5 @@
55
"name": $PREFIX,
66
"existing_resource_group_name": $PREFIX,
77
"existing_kms_instance_crn": $HPCS_US_SOUTH_CRN,
8-
"kms_encryption_enabled": true,
9-
"use_ibm_owned_encryption_key": false
8+
"kms_encryption_enabled": true
109
}

solutions/fully-configurable/main.tf

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ locals {
1818
create_new_kms_key = (
1919
var.kms_encryption_enabled &&
2020
var.existing_mongodb_instance_crn == null &&
21-
!var.use_ibm_owned_encryption_key &&
21+
var.kms_encryption_enabled &&
2222
var.existing_kms_key_crn == null
2323
)
2424
mongodb_key_name = "${local.prefix}${var.key_name}"
@@ -91,23 +91,23 @@ data "ibm_iam_account_settings" "iam_account_settings" {
9191

9292
locals {
9393
account_id = data.ibm_iam_account_settings.iam_account_settings.account_id
94-
create_cross_account_kms_auth_policy = var.existing_mongodb_instance_crn == null && var.ibmcloud_kms_api_key != null && !var.use_ibm_owned_encryption_key
95-
create_cross_account_backup_kms_auth_policy = var.existing_mongodb_instance_crn == null && var.ibmcloud_kms_api_key != null && !var.use_ibm_owned_encryption_key && var.existing_backup_kms_key_crn != null
94+
create_cross_account_kms_auth_policy = var.existing_mongodb_instance_crn == null && var.ibmcloud_kms_api_key != null && var.kms_encryption_enabled
95+
create_cross_account_backup_kms_auth_policy = var.existing_mongodb_instance_crn == null && var.ibmcloud_kms_api_key != null && var.kms_encryption_enabled && var.existing_backup_kms_key_crn != null
9696

9797
# If KMS encryption enabled (and existing MongoDB instance is not being passed), parse details from the existing key if being passed, otherwise get it from the key that the DA creates
98-
kms_account_id = var.existing_mongodb_instance_crn != null || var.use_ibm_owned_encryption_key ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].account_id : module.kms_instance_crn_parser[0].account_id
99-
kms_service = var.existing_mongodb_instance_crn != null || var.use_ibm_owned_encryption_key ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].service_name : module.kms_instance_crn_parser[0].service_name
100-
kms_instance_guid = var.existing_mongodb_instance_crn != null || var.use_ibm_owned_encryption_key ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].service_instance : module.kms_instance_crn_parser[0].service_instance
101-
kms_key_crn = var.existing_mongodb_instance_crn != null || var.use_ibm_owned_encryption_key ? null : var.existing_kms_key_crn != null ? var.existing_kms_key_crn : module.kms[0].keys[format("%s.%s", local.mongodb_key_ring_name, local.mongodb_key_name)].crn
102-
kms_key_id = var.existing_mongodb_instance_crn != null || var.use_ibm_owned_encryption_key ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].resource : module.kms[0].keys[format("%s.%s", local.mongodb_key_ring_name, local.mongodb_key_name)].key_id
103-
kms_region = var.existing_mongodb_instance_crn != null || var.use_ibm_owned_encryption_key ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].region : module.kms_instance_crn_parser[0].region
98+
kms_account_id = !var.kms_encryption_enabled || var.existing_mongodb_instance_crn != null ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].account_id : module.kms_instance_crn_parser[0].account_id
99+
kms_service = !var.kms_encryption_enabled || var.existing_mongodb_instance_crn != null ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].service_name : module.kms_instance_crn_parser[0].service_name
100+
kms_instance_guid = !var.kms_encryption_enabled || var.existing_mongodb_instance_crn != null ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].service_instance : module.kms_instance_crn_parser[0].service_instance
101+
kms_key_crn = !var.kms_encryption_enabled || var.existing_mongodb_instance_crn != null ? null : var.existing_kms_key_crn != null ? var.existing_kms_key_crn : module.kms[0].keys[format("%s.%s", local.mongodb_key_ring_name, local.mongodb_key_name)].crn
102+
kms_key_id = !var.kms_encryption_enabled || var.existing_mongodb_instance_crn != null ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].resource : module.kms[0].keys[format("%s.%s", local.mongodb_key_ring_name, local.mongodb_key_name)].key_id
103+
kms_region = !var.kms_encryption_enabled || var.existing_mongodb_instance_crn != null ? null : var.existing_kms_key_crn != null ? module.kms_key_crn_parser[0].region : module.kms_instance_crn_parser[0].region
104104

105105
# If creating KMS cross account policy for backups, parse backup key details from passed in key CRN
106106
backup_kms_account_id = local.create_cross_account_backup_kms_auth_policy ? module.kms_backup_key_crn_parser[0].account_id : local.kms_account_id
107107
backup_kms_service = local.create_cross_account_backup_kms_auth_policy ? module.kms_backup_key_crn_parser[0].service_name : local.kms_service
108108
backup_kms_instance_guid = local.create_cross_account_backup_kms_auth_policy ? module.kms_backup_key_crn_parser[0].service_instance : local.kms_instance_guid
109109
backup_kms_key_id = local.create_cross_account_backup_kms_auth_policy ? module.kms_backup_key_crn_parser[0].resource : local.kms_key_id
110-
backup_kms_key_crn = var.existing_mongodb_instance_crn != null || var.use_ibm_owned_encryption_key ? null : var.existing_backup_kms_key_crn
110+
backup_kms_key_crn = !var.kms_encryption_enabled || var.existing_mongodb_instance_crn != null ? null : var.existing_backup_kms_key_crn
111111
# Always use same key for backups unless user explicially passed a value for 'existing_backup_kms_key_crn'
112112
use_same_kms_key_for_backups = var.existing_backup_kms_key_crn == null ? true : false
113113
}
@@ -283,7 +283,7 @@ module "mongodb" {
283283
region = var.region
284284
mongodb_version = var.mongodb_version
285285
skip_iam_authorization_policy = var.kms_encryption_enabled ? var.skip_mongodb_kms_auth_policy : true
286-
use_ibm_owned_encryption_key = var.use_ibm_owned_encryption_key
286+
use_ibm_owned_encryption_key = !var.kms_encryption_enabled
287287
kms_key_crn = local.kms_key_crn
288288
backup_encryption_key_crn = local.backup_kms_key_crn
289289
use_same_kms_key_for_backups = local.use_same_kms_key_for_backups

solutions/fully-configurable/variables.tf

Lines changed: 5 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -170,42 +170,25 @@ variable "kms_encryption_enabled" {
170170
type = bool
171171
description = "Set to true to enable KMS Encryption using customer managed keys. When set to true, a value must be passed for either 'existing_kms_instance_crn', 'existing_kms_key_crn' or 'existing_backup_kms_key_crn'."
172172
default = false
173-
}
174-
175-
variable "use_ibm_owned_encryption_key" {
176-
type = bool
177-
description = "IBM Cloud Databases will secure your deployment's data at rest automatically with an encryption key that IBM hold. Alternatively, you may select your own Key Management System instance and encryption key (Key Protect or Hyper Protect Crypto Services) by setting this to false. If setting to false, a value must be passed for `existing_kms_instance_crn` to create a new key, or `existing_kms_key_crn` and/or `existing_backup_kms_key_crn` to use an existing key."
178-
default = true
179173

180174
validation {
181175
condition = (
182176
!var.kms_encryption_enabled ||
183177
var.existing_mongodb_instance_crn != null ||
184-
!(var.use_ibm_owned_encryption_key && (
178+
(
185179
var.existing_kms_instance_crn != null ||
186180
var.existing_kms_key_crn != null ||
187181
var.existing_backup_kms_key_crn != null
188-
))
189-
)
190-
error_message = "When 'kms_encryption_enabled' is true and setting values for 'existing_kms_instance_crn', 'existing_kms_key_crn' or 'existing_backup_kms_key_crn', the 'use_ibm_owned_encryption_key' input must be set to false."
191-
}
192-
193-
# this validation ensures key info is provided when IBM-owned key is disabled and no MongoDB instance is given
194-
validation {
195-
condition = (!var.kms_encryption_enabled ||
196-
var.existing_mongodb_instance_crn != null ||
197-
var.use_ibm_owned_encryption_key ||
198-
var.existing_kms_instance_crn != null ||
199-
var.existing_kms_key_crn != null
182+
)
200183
)
201-
error_message = "When 'kms_encryption_enabled' is true and 'use_ibm_owned_encryption_key' is false, you must provide either 'existing_kms_instance_crn' (to create a new key) or 'existing_kms_key_crn' (to use an existing key)."
184+
error_message = "When 'kms_encryption_enabled' is true and setting values for 'existing_kms_instance_crn', 'existing_kms_key_crn' or 'existing_backup_kms_key_crn'."
202185
}
203186

204187
validation {
205188
condition = (
206-
var.use_ibm_owned_encryption_key ? length(compact([var.existing_kms_instance_crn, var.existing_kms_key_crn, var.existing_backup_kms_key_crn])) == 0 : true
189+
!var.kms_encryption_enabled ? length(compact([var.existing_kms_instance_crn, var.existing_kms_key_crn, var.existing_backup_kms_key_crn])) == 0 : true
207190
)
208-
error_message = "When using ibm owned encryption keys by setting input 'use_ibm_owned_encryption_key' to true, 'existing_kms_instance_crn', 'existing_kms_key_crn' and 'existing_backup_kms_key_crn' should not be set."
191+
error_message = "When using ibm owned encryption keys by setting input 'kms_encryption_enabled' to false, 'existing_kms_instance_crn', 'existing_kms_key_crn' and 'existing_backup_kms_key_crn' should not be set."
209192
}
210193
}
211194

solutions/security-enforced/main.tf

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ module "mongodb" {
2424
mongodb_access_tags = var.mongodb_access_tags
2525
# Encryption
2626
kms_encryption_enabled = true
27-
use_ibm_owned_encryption_key = false
2827
existing_kms_instance_crn = var.existing_kms_instance_crn
2928
existing_kms_key_crn = var.existing_kms_key_crn
3029
kms_endpoint_type = "private"

tests/pr_test.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,6 @@ func TestRunFullyConfigurableSolutionSchematics(t *testing.T) {
9696
{Name: "ibmcloud_api_key", Value: options.RequiredEnvironmentVars["TF_VAR_ibmcloud_api_key"], DataType: "string", Secure: true},
9797
{Name: "mongodb_access_tags", Value: permanentResources["accessTags"], DataType: "list(string)"},
9898
{Name: "kms_encryption_enabled", Value: true, DataType: "bool"},
99-
{Name: "use_ibm_owned_encryption_key", Value: false, DataType: "bool"},
10099
{Name: "existing_kms_instance_crn", Value: permanentResources["hpcs_south_crn"], DataType: "string"},
101100
{Name: "kms_endpoint_type", Value: "private", DataType: "string"},
102101
{Name: "mongodb_version", Value: "7.0", DataType: "string"}, // Always lock this test into the latest supported MongoDB version
@@ -287,7 +286,6 @@ func TestRunfullyConfigurableSolutionIBMKeys(t *testing.T) {
287286
"mongodb_version": "7.0",
288287
"provider_visibility": "public",
289288
"existing_resource_group_name": resourceGroup,
290-
"use_ibm_owned_encryption_key": true,
291289
"prefix": options.Prefix,
292290
}
293291

0 commit comments

Comments
 (0)