Skip to content

Commit ba76cfe

Browse files
make app_name and deploy_id autogenerated
1 parent d562640 commit ba76cfe

File tree

8 files changed

+114
-88
lines changed

8 files changed

+114
-88
lines changed

terraform/database.tf

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ resource "oci_database_autonomous_database" "autonomous_database" {
1515
data_safe_status = var.autonomous_database_data_safe_status
1616
db_version = var.autonomous_database_db_version
1717
db_name = "${local.db.app_name_for_db}${local.oke.deploy_id}"
18-
display_name = "${var.app_name} Db (${local.oke.deploy_id})"
18+
display_name = "${local.app_name} Db (${local.oke.deploy_id})"
1919
license_model = var.autonomous_database_license_model
2020
is_auto_scaling_enabled = var.autonomous_database_is_auto_scaling_enabled
2121
is_free_tier = var.autonomous_database_is_free_tier
@@ -33,27 +33,27 @@ resource "oci_database_autonomous_database_wallet" "autonomous_database_wallet"
3333
base64_encode_content = true
3434

3535
count = 1
36-
# depends_on = [oci_database_autonomous_database.autonomous_database]
36+
# depends_on = [oci_database_autonomous_database.autonomous_database]
3737
}
3838

3939
resource "kubernetes_secret" "oadb-admin" {
4040
metadata {
41-
name = var.oadb_admin_secret_name
42-
# namespace = kubernetes_namespace.mushop_namespace.id
41+
name = var.oadb_admin_secret_name
42+
# namespace = kubernetes_namespace.mushop_namespace.id
4343
}
4444
data = {
4545
oadb_admin_pw = random_string.autonomous_database_admin_password.result
4646
}
4747
type = "Opaque"
4848

4949
count = 1
50-
# depends_on = [oci_database_autonomous_database.autonomous_database]
50+
# depends_on = [oci_database_autonomous_database.autonomous_database]
5151
}
5252

5353
resource "kubernetes_secret" "oadb-connection" {
5454
metadata {
55-
name = var.oadb_connection_secret_name
56-
# namespace = kubernetes_namespace.mushop_namespace.id
55+
name = var.oadb_connection_secret_name
56+
# namespace = kubernetes_namespace.mushop_namespace.id
5757
}
5858
data = {
5959
oadb_wallet_pw = random_string.autonomous_database_wallet_password.result
@@ -62,23 +62,23 @@ resource "kubernetes_secret" "oadb-connection" {
6262
type = "Opaque"
6363

6464
count = 1
65-
# depends_on = [oci_database_autonomous_database.autonomous_database]
65+
# depends_on = [oci_database_autonomous_database.autonomous_database]
6666

6767
}
6868

6969
### OADB Wallet extraction <>
7070
resource "kubernetes_secret" "oadb_wallet_zip" {
7171
metadata {
72-
name = "oadb-wallet-zip"
73-
# namespace = kubernetes_namespace.mushop_namespace.id
72+
name = "oadb-wallet-zip"
73+
# namespace = kubernetes_namespace.mushop_namespace.id
7474
}
7575
data = {
7676
wallet = oci_database_autonomous_database_wallet.autonomous_database_wallet[0].content
7777
}
7878
type = "Opaque"
7979

8080
count = 1
81-
# depends_on = [oci_database_autonomous_database.autonomous_database,oci_database_autonomous_database_wallet.autonomous_database_wallet]
81+
# depends_on = [oci_database_autonomous_database.autonomous_database,oci_database_autonomous_database_wallet.autonomous_database_wallet]
8282

8383
}
8484

@@ -89,10 +89,10 @@ resource "kubernetes_cluster_role" "secret_creator" {
8989
rule {
9090
api_groups = [""]
9191
resources = ["secrets"]
92-
verbs = ["create","delete"]
92+
verbs = ["create", "delete"]
9393
}
9494

95-
# count = var.mushop_mock_mode_all ? 0 : 1
95+
# count = var.mushop_mock_mode_all ? 0 : 1
9696
count = 1
9797
}
9898

@@ -106,46 +106,46 @@ resource "kubernetes_cluster_role_binding" "wallet_extractor_crb" {
106106
name = kubernetes_cluster_role.secret_creator[0].metadata.0.name
107107
}
108108
subject {
109-
kind = "ServiceAccount"
110-
name = kubernetes_service_account.wallet_extractor_sa[0].metadata.0.name
111-
# namespace = kubernetes_namespace.mushop_namespace.id
109+
kind = "ServiceAccount"
110+
name = kubernetes_service_account.wallet_extractor_sa[0].metadata.0.name
111+
# namespace = kubernetes_namespace.mushop_namespace.id
112112
}
113113

114-
# count = var.mushop_mock_mode_all ? 0 : 1
114+
# count = var.mushop_mock_mode_all ? 0 : 1
115115
count = 1
116116
}
117117

118118
resource "kubernetes_service_account" "wallet_extractor_sa" {
119119
metadata {
120-
name = "wallet-extractor-sa"
121-
# namespace = kubernetes_namespace.mushop_namespace.id
120+
name = "wallet-extractor-sa"
121+
# namespace = kubernetes_namespace.mushop_namespace.id
122122
}
123123
secret {
124124
name = "wallet-extractor-sa-token"
125125
}
126126

127-
# count = var.mushop_mock_mode_all ? 0 : 1
127+
# count = var.mushop_mock_mode_all ? 0 : 1
128128
count = 1
129129
}
130130

131131
resource "kubernetes_secret" "wallet_extractor_sa" {
132132
metadata {
133-
name = "wallet-extractor-sa-token"
134-
# namespace = kubernetes_namespace.mushop_namespace.id
133+
name = "wallet-extractor-sa-token"
134+
# namespace = kubernetes_namespace.mushop_namespace.id
135135
annotations = {
136136
"kubernetes.io/service-account.name" = kubernetes_service_account.wallet_extractor_sa.0.metadata.0.name
137137
}
138138
}
139139
type = "kubernetes.io/service-account-token"
140140

141-
# count = var.mushop_mock_mode_all ? 0 : 1
141+
# count = var.mushop_mock_mode_all ? 0 : 1
142142
count = 1
143143
}
144144

145145
resource "kubernetes_job" "wallet_extractor_job" {
146146
metadata {
147-
name = "wallet-extractor-job"
148-
# namespace = kubernetes_namespace.mushop_namespace.id
147+
name = "wallet-extractor-job"
148+
# namespace = kubernetes_namespace.mushop_namespace.id
149149
}
150150
spec {
151151
template {
@@ -206,15 +206,15 @@ resource "kubernetes_job" "wallet_extractor_job" {
206206
ttl_seconds_after_finished = 120
207207
}
208208

209-
wait_for_completion = true
209+
wait_for_completion = true
210210
timeouts {
211211
create = "20m"
212212
update = "20m"
213213
}
214214

215-
# depends_on = [kubernetes_deployment.cluster_autoscaler_deployment]
215+
# depends_on = [kubernetes_deployment.cluster_autoscaler_deployment]
216216
depends_on = [oci_database_autonomous_database_wallet.autonomous_database_wallet]
217217

218-
# count = var.mushop_mock_mode_all ? 0 : 1
218+
# count = var.mushop_mock_mode_all ? 0 : 1
219219
count = 1
220220
}

terraform/later.tf

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
#### OCI Service User
4949
#resource "oci_identity_user" "oci_service_user" {
5050
# compartment_id = var.tenancy_ocid
51-
# description = "${var.app_name} Service User for deployment ${random_string.deploy_id.result}"
51+
# description = "${local.app_name} Service User for deployment ${random_string.deploy_id.result}"
5252
# name = "${local.app_name_normalized}-service-user-${random_string.deploy_id.result}"
5353
#
5454
# provider = oci.home_region
@@ -57,7 +57,7 @@
5757
#}
5858
#resource "oci_identity_group" "oci_service_user" {
5959
# compartment_id = var.tenancy_ocid
60-
# description = "${var.app_name} Service User Group for deployment ${random_string.deploy_id.result}"
60+
# description = "${local.app_name} Service User Group for deployment ${random_string.deploy_id.result}"
6161
# name = "${local.app_name_normalized}-service-user-group-${random_string.deploy_id.result}"
6262
#
6363
# provider = oci.home_region
@@ -112,7 +112,7 @@
112112

113113
#resource "oci_functions_application" "app_function" {
114114
# compartment_id = local.oke_compartment_ocid
115-
# display_name = "${var.app_name} Application (${random_string.deploy_id.result})"
115+
# display_name = "${local.app_name} Application (${random_string.deploy_id.result})"
116116
# subnet_ids = [oci_core_subnet.apigw_fn_subnet.0.id, ]
117117
#
118118
# config = {}
@@ -162,7 +162,7 @@
162162
# compartment_id = local.oke_compartment_ocid
163163
# endpoint_type = "PUBLIC"
164164
# subnet_id = oci_core_subnet.apigw_fn_subnet.0.id
165-
# display_name = "${var.app_name} API Gateway (${random_string.deploy_id.result})"
165+
# display_name = "${local.app_name} API Gateway (${random_string.deploy_id.result})"
166166
#
167167
# response_cache_details {
168168
# type = "NONE"

terraform/locals.tf

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ locals {
22

33
ts = timestamp()
44

5+
app_name = random_string.generated_workspace_name.result
6+
7+
deploy_id = random_string.generated_deployment_name.result
8+
59
app = {
610
backend_service_name = "corrino-cp"
711
backend_service_name_origin = "http://corrino-cp"
@@ -25,8 +29,8 @@ locals {
2529
format("Registration ID : %s", random_string.registration_id.result),
2630
format("Deploy DateTime : %s", local.ts),
2731
format("Administrator : %s", var.corrino_admin_email),
28-
format("Workspace Name : %s", var.app_name),
29-
format("Deploy ID : %s", var.deploy_id),
32+
format("Workspace Name : %s", local.app_name),
33+
format("Deploy ID : %s", local.deploy_id),
3034
format("Corrino Version : %s", var.corrino_version),
3135
format("FQDN : %s", local.fqdn.name),
3236
format("Tenancy OCID : %s", local.oci.tenancy_id),
@@ -42,12 +46,12 @@ locals {
4246
}
4347

4448
oke = {
45-
deploy_id = var.deploy_id
49+
deploy_id = local.deploy_id
4650
cluster_ocid = var.existent_oke_cluster_id
4751
}
4852

4953
db = {
50-
app_name_for_db = regex("[[:alnum:]]{1,10}", var.app_name)
54+
app_name_for_db = regex("[[:alnum:]]{1,10}", local.app_name)
5155
}
5256

5357
addon = {

terraform/oke.tf

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#
44

55
module "oke-quickstart" {
6-
# source = "github.com/oracle-quickstart/terraform-oci-corrino?ref=0.9.0"
6+
# source = "github.com/oracle-quickstart/terraform-oci-corrino?ref=0.9.0"
77
source = "./modules/corrino"
88

99
providers = {
@@ -18,8 +18,8 @@ module "oke-quickstart" {
1818

1919
# Note: Just few arguments are showing here to simplify the basic example. All other arguments are using default values.
2020
# App Name to identify deployment. Used for naming resources.
21-
app_name = var.app_name
22-
deploy_id = var.deploy_id
21+
app_name = local.app_name
22+
deploy_id = local.deploy_id
2323

2424
# Freeform Tags + Defined Tags. Tags are applied to all resources.
2525
tag_values = { "freeformTags" = { "Environment" = "Development", "DeploymentType" = "basic", "QuickstartExample" = "basic-cluster" }, "definedTags" = {} }
@@ -36,27 +36,27 @@ module "oke-quickstart" {
3636
vcn_cidr_blocks = "10.22.0.0/16"
3737

3838
metrics_server_enabled = var.metrics_server_enabled
39-
ingress_nginx_enabled = var.ingress_nginx_enabled
40-
cert_manager_enabled = var.cert_manager_enabled
41-
prometheus_enabled = var.prometheus_enabled
42-
grafana_enabled = var.grafana_enabled
39+
ingress_nginx_enabled = var.ingress_nginx_enabled
40+
cert_manager_enabled = var.cert_manager_enabled
41+
prometheus_enabled = var.prometheus_enabled
42+
grafana_enabled = var.grafana_enabled
4343

44-
create_new_oke_cluster = false
44+
create_new_oke_cluster = false
4545
existent_oke_cluster_id = var.existent_oke_cluster_id
4646

47-
create_new_vcn = false
47+
create_new_vcn = false
4848
existent_vcn_ocid = var.existent_vcn_ocid
4949

5050
create_new_compartment_for_oke = false
51-
existent_vcn_compartment_ocid = var.compartment_ocid
51+
existent_vcn_compartment_ocid = var.compartment_ocid
5252

5353
create_vault_policies_for_group = false
5454

55-
create_subnets = false
56-
existent_oke_k8s_endpoint_subnet_ocid = var.existent_oke_k8s_endpoint_subnet_ocid
57-
existent_oke_nodes_subnet_ocid = var.existent_oke_nodes_subnet_ocid
58-
existent_oke_load_balancer_subnet_ocid = var.existent_oke_load_balancer_subnet_ocid
59-
# existent_oke_vcn_native_pod_networking_subnet_ocid = "" # Optional. Existent VCN Native POD Networking subnet if the CNI Type is "OCI_VCN_IP_NATIVE"
55+
create_subnets = false
56+
existent_oke_k8s_endpoint_subnet_ocid = var.existent_oke_k8s_endpoint_subnet_ocid
57+
existent_oke_nodes_subnet_ocid = var.existent_oke_nodes_subnet_ocid
58+
existent_oke_load_balancer_subnet_ocid = var.existent_oke_load_balancer_subnet_ocid
59+
# existent_oke_vcn_native_pod_networking_subnet_ocid = "" # Optional. Existent VCN Native POD Networking subnet if the CNI Type is "OCI_VCN_IP_NATIVE"
6060

6161
}
6262

terraform/outputs.tf

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ output "corrino_source_code" {
102102
value = "https://github.com/oracle-quickstart/corrino/"
103103
}
104104
output "corrino_version" {
105-
# value = file("${path.module}/VERSION")
105+
# value = file("${path.module}/VERSION")
106106
value = local.versions.corrino_version
107107
}
108108

@@ -113,19 +113,19 @@ output "corrino_version" {
113113
output "corrino_api_url" {
114114
value = format("https://${local.public_endpoint.api}")
115115
description = "API Service"
116-
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
116+
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
117117
}
118118

119119
output "corrino_portal_url" {
120120
value = format("https://${local.public_endpoint.portal}")
121121
description = "Portal Service"
122-
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
122+
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
123123
}
124124

125125
output "corrino_grafana_url" {
126126
value = var.grafana_enabled ? format("https://${local.public_endpoint.grafana}") : null
127127
description = "Grafana Service"
128-
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
128+
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
129129
}
130130

131131
output "grafana_admin_username" {
@@ -147,15 +147,23 @@ output "grafana_admin_password" {
147147
output "corrino_prometheus_url" {
148148
value = var.prometheus_enabled ? format("https://${local.public_endpoint.prometheus}") : null
149149
description = "Prometheus Service"
150-
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
150+
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
151151
}
152152

153153
output "corrino_mlflow_url" {
154154
value = var.mlflow_enabled ? format("https://${local.public_endpoint.mlflow}") : null
155155
description = "MLflow Service"
156-
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
156+
depends_on = [module.oke-quickstart.helm_release_ingress_nginx]
157157
}
158158

159159
output "autonomous_database_password" {
160160
value = random_string.autonomous_database_admin_password.result
161+
}
162+
163+
output "app_name" {
164+
value = random_string.generated_workspace_name.result
165+
}
166+
167+
output "deploy_id" {
168+
value = random_string.generated_deployment_name.result
161169
}

terraform/policies.tf

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
# Get compartment name for policy
22
data "oci_identity_compartment" "oci_compartment" {
3-
id = var.compartment_ocid
3+
id = var.compartment_ocid
44
}
55

66
# Define the dynamic group
77
resource "oci_identity_dynamic_group" "dyn_group" {
8-
provider = oci.home_region
9-
name = "${var.app_name}-instance-dg"
8+
provider = oci.home_region
9+
name = "${local.app_name}-instance-dg"
1010
description = "Dynamic group for OKE instances across the tenancy"
1111
compartment_id = var.tenancy_ocid
1212
matching_rule = "ALL {instance.compartment.id = '${var.compartment_ocid}'}"
13-
count = var.policy_creation_enabled ? 1 : 0
13+
count = var.policy_creation_enabled ? 1 : 0
1414
}
1515

1616
# Define the IAM policy
1717
resource "oci_identity_policy" "oke_instances_tenancy_policy" {
1818
provider = oci.home_region
19-
name = "${var.app_name}-dg-inst-policy"
19+
name = "${local.app_name}-dg-inst-policy"
2020
description = "Tenancy-level policy to grant needed permissions to the dynamic group"
2121
compartment_id = var.tenancy_ocid
2222

2323
statements = [
2424
"Allow dynamic-group 'Default'/'${oci_identity_dynamic_group.dyn_group[0].name}' to manage all-resources in compartment ${data.oci_identity_compartment.oci_compartment.name}",
2525
"Allow dynamic-group 'Default'/'${oci_identity_dynamic_group.dyn_group[0].name}' to use all-resources in tenancy",
2626
]
27-
count = var.policy_creation_enabled ? 1 : 0
27+
count = var.policy_creation_enabled ? 1 : 0
2828
depends_on = [oci_identity_dynamic_group.dyn_group]
2929
}

0 commit comments

Comments
 (0)