Skip to content

Commit 021b2ee

Browse files
authored
feat: added adminuser and certificate_base64 outputs and updated the logic to always output hostname and port details (#396)
1 parent 4ebf7c8 commit 021b2ee

File tree

6 files changed

+59
-13
lines changed

6 files changed

+59
-13
lines changed

README.md

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

116116
| Name | Description |
117117
|------|-------------|
118+
| <a name="output_adminuser"></a> [adminuser](#output\_adminuser) | Database admin user name |
118119
| <a name="output_cbr_rule_ids"></a> [cbr\_rule\_ids](#output\_cbr\_rule\_ids) | CBR rule ids created to restrict Postgresql |
120+
| <a name="output_certificate_base64"></a> [certificate\_base64](#output\_certificate\_base64) | Database connection certificate |
119121
| <a name="output_crn"></a> [crn](#output\_crn) | Postgresql instance crn |
120122
| <a name="output_guid"></a> [guid](#output\_guid) | Postgresql instance guid |
121-
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database hostname. Only contains value when var.service\_credential\_names or var.users are set. |
123+
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database connection hostname |
122124
| <a name="output_id"></a> [id](#output\_id) | Postgresql instance id |
123-
| <a name="output_port"></a> [port](#output\_port) | Database port. Only contains value when var.service\_credential\_names or var.users are set. |
125+
| <a name="output_port"></a> [port](#output\_port) | Database connection port |
124126
| <a name="output_service_credentials_json"></a> [service\_credentials\_json](#output\_service\_credentials\_json) | Service credentials json map |
125127
| <a name="output_service_credentials_object"></a> [service\_credentials\_object](#output\_service\_credentials\_object) | Service credentials object |
126128
| <a name="output_version"></a> [version](#output\_version) | Postgresql 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 = "Postgresql instance version"
1111
value = module.postgresql_db.version
1212
}
13+
14+
output "adminuser" {
15+
description = "Database admin user name"
16+
value = module.postgresql_db.adminuser
17+
}
18+
19+
output "hostname" {
20+
description = "Database connection hostname"
21+
value = module.postgresql_db.hostname
22+
}
23+
24+
output "port" {
25+
description = "Database connection port"
26+
value = module.postgresql_db.port
27+
}
28+
29+
output "certificate_base64" {
30+
description = "Database connection certificate"
31+
value = module.postgresql_db.certificate_base64
32+
sensitive = true
33+
}

main.tf

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -247,9 +247,8 @@ locals {
247247
}
248248

249249
data "ibm_database_connection" "database_connection" {
250-
count = length(var.users) > 0 ? 1 : 0
251250
endpoint_type = var.service_endpoints
252251
deployment_id = ibm_database.postgresql_db.id
253-
user_id = var.users[0].name
254-
user_type = var.users[0].type
252+
user_id = ibm_database.postgresql_db.adminuser
253+
user_type = "database"
255254
}

modules/fscloud/README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,12 @@ No resources.
5656

5757
| Name | Description |
5858
|------|-------------|
59+
| <a name="output_adminuser"></a> [adminuser](#output\_adminuser) | Database admin user name |
60+
| <a name="output_certificate_base64"></a> [certificate\_base64](#output\_certificate\_base64) | Database connection certificate |
5961
| <a name="output_crn"></a> [crn](#output\_crn) | Postgresql instance crn |
6062
| <a name="output_guid"></a> [guid](#output\_guid) | Postgresql instance guid |
61-
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Postgresql instance hostname |
63+
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database connection hostname |
6264
| <a name="output_id"></a> [id](#output\_id) | Postgresql instance id |
63-
| <a name="output_port"></a> [port](#output\_port) | Postgresql instance port |
65+
| <a name="output_port"></a> [port](#output\_port) | Database connection port |
6466
| <a name="output_version"></a> [version](#output\_version) | Postgresql instance version |
6567
<!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK -->

modules/fscloud/outputs.tf

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,23 @@ output "crn" {
2222
value = module.postgresql_db.crn
2323
}
2424

25+
output "adminuser" {
26+
description = "Database admin user name"
27+
value = module.postgresql_db.adminuser
28+
}
29+
2530
output "hostname" {
26-
description = "Postgresql instance hostname"
31+
description = "Database connection hostname"
2732
value = module.postgresql_db.hostname
2833
}
2934

3035
output "port" {
31-
description = "Postgresql instance port"
36+
description = "Database connection port"
3237
value = module.postgresql_db.port
3338
}
39+
40+
output "certificate_base64" {
41+
description = "Database connection certificate"
42+
value = module.postgresql_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.postgresql_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.postgres.hosts.0.hostname"]) : length(var.users) > 0 ? data.ibm_database_connection.database_connection[0].postgres[0].hosts[0].hostname : null
48+
description = "Database connection hostname"
49+
value = data.ibm_database_connection.database_connection.postgres[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.postgres.hosts.0.port"]) : length(var.users) > 0 ? data.ibm_database_connection.database_connection[0].postgres[0].hosts[0].port : null
53+
description = "Database connection port"
54+
value = data.ibm_database_connection.database_connection.postgres[0].hosts[0].port
55+
}
56+
57+
output "certificate_base64" {
58+
description = "Database connection certificate"
59+
value = data.ibm_database_connection.database_connection.postgres[0].certificate[0].certificate_base64
60+
sensitive = true
5061
}

0 commit comments

Comments
 (0)