Skip to content

Commit aba4fec

Browse files
authored
Topic sk jcs 13724 & jcs 13758 (#177)
MRs for jiras : JCS-13724 : ER 33432789 Run network validation script when provisioning WLS for OCI with existing subnets & JCS-13758 : Modifications needed to the network validation scripts before implementing ER 33432789 Tests run --------- Existing subnets, existing nsgs , and bastion Existing subnets, existing nsgs, and lb with regional subnets Existing subnets, existing nsgs, and lb1 & lb2 with AD subnets Existing subnets, existing nsgs, and fss Existing subnets, existing nsgs, and fss with atp db Existing subnets, existing nsgs, and fss with oci db - Testing in progress Existing subnets, existing nsgs, and destroy Tested negative tests ----------------------- Apply failed due to port issues, fix and run reapply. Apply failed due to port issues, skip the validation and rerun.
1 parent 38ccba7 commit aba4fec

File tree

14 files changed

+376
-123
lines changed

14 files changed

+376
-123
lines changed

terraform/locals.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ locals {
148148
var.wls_extern_ssl_admin_port,
149149
) : ""
150150

151-
use_apm_service = (var.use_apm_service || var.use_autoscaling)
151+
use_apm_service = (var.use_apm_service || var.use_autoscaling)
152152
apm_domain_compartment_id = local.use_apm_service ? lookup(data.oci_apm_apm_domain.apm_domain[0], "compartment_id") : ""
153153

154154

terraform/main.tf

Lines changed: 48 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,30 @@
11
# Copyright (c) 2023, Oracle and/or its affiliates.
22
# Licensed under the Universal Permissive License v1.0 as shown at https://oss.oracle.com/licenses/upl.
33

4+
module "network-validation" {
5+
source = "./modules/network-validator"
6+
count = local.use_existing_subnets && !var.skip_network_validation ? 1 : 0
7+
wls_subnet_id = var.wls_subnet_id
8+
bastion_subnet_id = var.is_bastion_instance_required ? var.bastion_subnet_id : ""
9+
bastion_ip = var.is_bastion_instance_required && var.existing_bastion_instance_id != "" ? data.oci_core_instance.existing_bastion_instance[0].private_ip : ""
10+
lb_subnet_1_id = var.add_load_balancer ? var.lb_subnet_1_id : ""
11+
lb_subnet_2_id = var.add_load_balancer && !local.use_regional_subnet ? var.lb_subnet_2_id : ""
12+
mount_target_subnet_id = var.add_fss ? var.mount_target_subnet_id : ""
13+
atp_db_id = !local.is_oci_db ? var.atp_db_id : ""
14+
oci_db_dbsystem_id = local.is_oci_db ? var.oci_db_dbsystem_id : ""
15+
oci_db_port = local.is_oci_db ? var.oci_db_port : 0
16+
wls_extern_admin_port = var.wls_extern_admin_port
17+
wls_extern_ssl_admin_port = var.wls_extern_ssl_admin_port
18+
wls_ms_extern_port = var.wls_ms_extern_port
19+
existing_admin_server_nsg_id = var.add_existing_nsg ? var.existing_admin_server_nsg_id : ""
20+
existing_managed_server_nsg_id = var.add_existing_nsg ? var.existing_managed_server_nsg_id : ""
21+
existing_lb_nsg_id = var.add_existing_nsg && var.add_load_balancer ? var.existing_lb_nsg_id : ""
22+
existing_mount_target_nsg_id = var.add_existing_nsg && var.add_fss ? var.existing_mount_target_nsg_id : ""
23+
existing_bastion_nsg_id = var.add_existing_nsg && var.is_bastion_instance_required ? var.existing_bastion_nsg_id : ""
24+
}
25+
426
module "system-tags" {
27+
depends_on = [module.network-validation]
528
source = "./modules/resource-tags"
629
compartment_id = var.compartment_ocid
730
service_name = var.service_name
@@ -180,6 +203,7 @@ module "network-bastion-subnet" {
180203
}
181204

182205
module "policies" {
206+
depends_on = [module.network-validation]
183207
source = "./modules/policies"
184208
count = var.create_policies ? 1 : 0
185209
compartment_id = var.compartment_ocid
@@ -214,6 +238,7 @@ module "policies" {
214238

215239

216240
module "bastion" {
241+
depends_on = [module.network-validation]
217242
source = "./modules/compute/bastion"
218243
count = (!local.assign_weblogic_public_ip && var.is_bastion_instance_required && var.existing_bastion_instance_id == "") ? 1 : 0
219244
availability_domain = local.bastion_availability_domain
@@ -301,6 +326,7 @@ module "network-mount-target-private-subnet" {
301326
}
302327

303328
module "vcn-peering" {
329+
depends_on = [module.network-validation]
304330
count = local.is_vcn_peering ? 1 : 0
305331
source = "./modules/network/vcn-peering"
306332
resource_name_prefix = local.service_name_prefix
@@ -318,7 +344,8 @@ module "vcn-peering" {
318344
}
319345

320346
module "validators" {
321-
source = "./modules/validators"
347+
depends_on = [module.network-validation]
348+
source = "./modules/validators"
322349

323350
service_name = var.service_name
324351
wls_ms_port = var.wls_ms_extern_port
@@ -436,8 +463,9 @@ module "validators" {
436463
}
437464

438465
module "fss" {
439-
source = "./modules/fss"
440-
count = var.add_fss ? 1 : 0
466+
depends_on = [module.network-validation]
467+
source = "./modules/fss"
468+
count = var.add_fss ? 1 : 0
441469

442470
compartment_id = var.compartment_ocid
443471
availability_domain = local.fss_availability_domain
@@ -458,8 +486,9 @@ module "fss" {
458486
}
459487

460488
module "load-balancer" {
461-
source = "./modules/lb/loadbalancer"
462-
count = (local.add_load_balancer && var.existing_load_balancer_id == "") ? 1 : 0
489+
depends_on = [module.network-validation]
490+
source = "./modules/lb/loadbalancer"
491+
count = (local.add_load_balancer && var.existing_load_balancer_id == "") ? 1 : 0
463492

464493
compartment_id = local.network_compartment_id
465494
lb_reserved_public_ip_id = compact([var.lb_reserved_public_ip_id])
@@ -478,17 +507,19 @@ module "load-balancer" {
478507
}
479508

480509
module "observability-common" {
481-
source = "./modules/observability/common"
482-
count = var.use_oci_logging ? 1 : 0
510+
depends_on = [module.network-validation]
511+
source = "./modules/observability/common"
512+
count = var.use_oci_logging ? 1 : 0
483513

484514
compartment_id = var.compartment_ocid
485515
service_prefix_name = local.service_name_prefix
486516
add_delay = var.use_autoscaling
487517
}
488518

489519
module "observability-autoscaling" {
490-
source = "./modules/observability/autoscaling"
491-
count = var.use_autoscaling ? 1 : 0
520+
depends_on = [module.network-validation]
521+
source = "./modules/observability/autoscaling"
522+
count = var.use_autoscaling ? 1 : 0
492523

493524
compartment_id = var.compartment_ocid
494525
metric_compartment_id = local.apm_domain_compartment_id
@@ -647,8 +678,9 @@ module "compute" {
647678
}
648679

649680
module "load-balancer-backends" {
650-
source = "./modules/lb/backends"
651-
count = local.add_load_balancer ? 1 : 0
681+
depends_on = [module.network-validation]
682+
source = "./modules/lb/backends"
683+
count = local.add_load_balancer ? 1 : 0
652684

653685
resource_name_prefix = local.service_name_prefix
654686
load_balancer_id = local.add_load_balancer ? (var.existing_load_balancer_id != "" ? var.existing_load_balancer_id : element(coalescelist(module.load-balancer[*].wls_loadbalancer_id, [""]), 0)) : ""
@@ -661,8 +693,9 @@ module "load-balancer-backends" {
661693
}
662694

663695
module "observability-logging" {
664-
source = "./modules/observability/logging"
665-
count = var.use_oci_logging ? 1 : 0
696+
depends_on = [module.network-validation]
697+
source = "./modules/observability/logging"
698+
count = var.use_oci_logging ? 1 : 0
666699

667700
compartment_id = var.compartment_ocid
668701
oci_managed_instances_principal_group = element(concat(module.policies[*].oci_managed_instances_principal_group, [""]), 0)
@@ -678,7 +711,8 @@ module "observability-logging" {
678711
}
679712

680713
module "provisioners" {
681-
source = "./modules/provisioners"
714+
depends_on = [module.network-validation]
715+
source = "./modules/provisioners"
682716

683717
existing_bastion_instance_id = var.existing_bastion_instance_id
684718
host_ips = coalescelist(compact(module.compute.instance_public_ips), compact(module.compute.instance_private_ips), [""])
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Copyright (c) 2023, Oracle and/or its affiliates.
2+
# Licensed under the Universal Permissive License v1.0 as shown at https://oss.oracle.com/licenses/upl.
3+
4+
locals {
5+
validation_script_wls_subnet_param = var.wls_subnet_id != "" ? format("--wlssubnet %s", var.wls_subnet_id) : ""
6+
validation_script_bastion_subnet_param = var.bastion_subnet_id != "" ? format("--bastionsubnet %s", var.bastion_subnet_id) : ""
7+
validation_script_bastion_ip_param = var.bastion_ip != "" ? format("--bastionip %s", var.bastion_ip) : ""
8+
validation_script_lb_subnet_1_param = var.lb_subnet_1_id != "" ? format("--lbsubnet1 %s", var.lb_subnet_1_id) : ""
9+
validation_script_lb_subnet_2_param = var.lb_subnet_2_id != "" ? format("--lbsubnet2 %s", var.lb_subnet_2_id) : ""
10+
validation_script_wls_lb_port = var.wls_ms_extern_port != "" ? format("--externalport %s", var.wls_ms_extern_port) : ""
11+
validation_script_mount_target_subnet_param = var.mount_target_subnet_id != "" ? format("--fsssubnet %s", var.mount_target_subnet_id) : ""
12+
validation_script_atp_db_id_param = var.atp_db_id != "" ? format("--atpdbid %s", var.atp_db_id) : ""
13+
validation_script_oci_db_dbsystem_id_param = var.oci_db_dbsystem_id != "" ? format("--ocidbid %s", var.oci_db_dbsystem_id) : ""
14+
validation_script_oci_db_port_param = var.oci_db_port != 0 ? format("--ocidbport %s", var.oci_db_port) : ""
15+
validation_script_http_port_param = var.wls_extern_admin_port != "" ? format("--http_port %s", var.wls_extern_admin_port) : ""
16+
validation_script_https_port_param = var.wls_extern_ssl_admin_port != "" ? format("--https_port %s", var.wls_extern_ssl_admin_port) : ""
17+
validation_script_existing_admin_server_nsg_id_param = var.existing_admin_server_nsg_id != "" ? format("--adminsrvnsg %s", var.existing_admin_server_nsg_id) : ""
18+
validation_script_existing_managed_server_nsg_id_param = var.existing_managed_server_nsg_id != "" ? format("--managedsrvnsg %s", var.existing_managed_server_nsg_id) : ""
19+
validation_script_existing_lb_nsg_id_param = var.existing_lb_nsg_id != "" ? format("--lbnsg %s", var.existing_lb_nsg_id) : ""
20+
validation_script_existing_mount_target_nsg_id_param = var.existing_mount_target_nsg_id != "" ? format("--fssnsg %s", var.existing_mount_target_nsg_id) : ""
21+
validation_script_existing_bastion_nsg_id_param = var.existing_bastion_nsg_id != "" ? format("--bastionnsg %s", var.existing_bastion_nsg_id) : ""
22+
}

0 commit comments

Comments
 (0)