Skip to content

Commit e14aab0

Browse files
authored
feat: Added new outputs adminuser and certificate_base64 and updated the logic to always output hostname and port details (#30)
1 parent bf91eb1 commit e14aab0

File tree

6 files changed

+55
-9
lines changed

6 files changed

+55
-9
lines changed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,12 +141,14 @@ To attach access management tags to resources in this module, you need the follo
141141

142142
| Name | Description |
143143
|------|-------------|
144+
| <a name="output_adminuser"></a> [adminuser](#output\_adminuser) | Database admin user name |
144145
| <a name="output_cbr_rule_ids"></a> [cbr\_rule\_ids](#output\_cbr\_rule\_ids) | CBR rule ids created to restrict MySQL access |
146+
| <a name="output_certificate_base64"></a> [certificate\_base64](#output\_certificate\_base64) | Database connection certificate |
145147
| <a name="output_crn"></a> [crn](#output\_crn) | MySQL instance crn |
146148
| <a name="output_guid"></a> [guid](#output\_guid) | MySQL instance guid |
147-
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database hostname. Only contains value when var.service\_credential\_names or var.users are set. |
149+
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database connection hostname |
148150
| <a name="output_id"></a> [id](#output\_id) | MySQL instance id |
149-
| <a name="output_port"></a> [port](#output\_port) | Database port. Only contains value when var.service\_credential\_names or var.users are set. |
151+
| <a name="output_port"></a> [port](#output\_port) | Database connection port |
150152
| <a name="output_service_credentials_json"></a> [service\_credentials\_json](#output\_service\_credentials\_json) | Service credentials json map |
151153
| <a name="output_service_credentials_object"></a> [service\_credentials\_object](#output\_service\_credentials\_object) | Service credentials object |
152154
| <a name="output_version"></a> [version](#output\_version) | MySQL instance version |

examples/basic/outputs.tf

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,24 @@ output "version" {
1010
description = "MySQL instance version"
1111
value = module.mysql_db.version
1212
}
13+
14+
output "adminuser" {
15+
description = "Database admin user name"
16+
value = module.mysql_db.adminuser
17+
}
18+
19+
output "hostname" {
20+
description = "Database hostname"
21+
value = module.mysql_db.hostname
22+
}
23+
24+
output "port" {
25+
description = "Database port"
26+
value = module.mysql_db.port
27+
}
28+
29+
output "certificate_base64" {
30+
description = "Database port"
31+
value = module.mysql_db.certificate_base64
32+
sensitive = true
33+
}

main.tf

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -218,9 +218,8 @@ locals {
218218
}
219219

220220
data "ibm_database_connection" "database_connection" {
221-
count = length(var.users) > 0 ? 1 : 0
222221
endpoint_type = var.service_endpoints
223222
deployment_id = ibm_database.mysql_db.id
224-
user_id = var.users[0].name
225-
user_type = var.users[0].type
223+
user_id = ibm_database.mysql_db.adminuser
224+
user_type = "database"
226225
}

modules/fscloud/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ No resources.
5555

5656
| Name | Description |
5757
|------|-------------|
58+
| <a name="output_adminuser"></a> [adminuser](#output\_adminuser) | Database admin user name |
59+
| <a name="output_certificate_base64"></a> [certificate\_base64](#output\_certificate\_base64) | Database connection certificate |
5860
| <a name="output_crn"></a> [crn](#output\_crn) | MySQL instance crn |
5961
| <a name="output_guid"></a> [guid](#output\_guid) | MySQL instance guid |
6062
| <a name="output_hostname"></a> [hostname](#output\_hostname) | MySQL instance hostname |

modules/fscloud/outputs.tf

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ output "crn" {
2222
value = module.mysql_db.crn
2323
}
2424

25+
output "adminuser" {
26+
description = "Database admin user name"
27+
value = module.mysql_db.adminuser
28+
}
29+
2530
output "hostname" {
2631
description = "MySQL instance hostname"
2732
value = module.mysql_db.hostname
@@ -31,3 +36,9 @@ output "port" {
3136
description = "MySQL instance port"
3237
value = module.mysql_db.port
3338
}
39+
40+
output "certificate_base64" {
41+
description = "Database connection certificate"
42+
value = module.mysql_db.certificate_base64
43+
sensitive = true
44+
}

outputs.tf

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,23 @@ output "cbr_rule_ids" {
3939
value = module.cbr_rule[*].rule_id
4040
}
4141

42+
output "adminuser" {
43+
description = "Database admin user name"
44+
value = ibm_database.mysql_db.adminuser
45+
}
46+
4247
output "hostname" {
43-
description = "Database hostname. Only contains value when var.service_credential_names or var.users are set."
44-
value = length(var.service_credential_names) > 0 ? nonsensitive(ibm_resource_key.service_credentials[keys(var.service_credential_names)[0]].credentials["connection.mysql.hosts.0.hostname"]) : length(var.users) > 0 ? data.ibm_database_connection.database_connection[0].mysql[0].hosts[0].hostname : null
48+
description = "Database connection hostname"
49+
value = data.ibm_database_connection.database_connection.mysql[0].hosts[0].hostname
4550
}
4651

4752
output "port" {
48-
description = "Database port. Only contains value when var.service_credential_names or var.users are set."
49-
value = length(var.service_credential_names) > 0 ? nonsensitive(ibm_resource_key.service_credentials[keys(var.service_credential_names)[0]].credentials["connection.mysql.hosts.0.port"]) : length(var.users) > 0 ? data.ibm_database_connection.database_connection[0].mysql[0].hosts[0].port : null
53+
description = "Database connection port"
54+
value = data.ibm_database_connection.database_connection.mysql[0].hosts[0].port
55+
}
56+
57+
output "certificate_base64" {
58+
description = "Database connection certificate"
59+
value = data.ibm_database_connection.database_connection.mysql[0].certificate[0].certificate_base64
60+
sensitive = true
5061
}

0 commit comments

Comments
 (0)