Skip to content

Commit

Permalink
feat: added adminuser and certificate_base64 outputs and updated …
Browse files Browse the repository at this point in the history
…the logic to always output `hostname` and `port` details (#138)

Co-authored-by: Steve Peggs <[email protected]>
  • Loading branch information
shemau and Steve Peggs authored Apr 10, 2024
1 parent 9c8880c commit c99f37a
Show file tree
Hide file tree
Showing 6 changed files with 63 additions and 15 deletions.
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,12 +113,14 @@ You need the following permissions to run this module.

| Name | Description |
|------|-------------|
| <a name="output_adminuser"></a> [adminuser](#output\_adminuser) | Database admin user name |
| <a name="output_cbr_rule_ids"></a> [cbr\_rule\_ids](#output\_cbr\_rule\_ids) | CBR rule ids created to restrict Elasticsearch |
| <a name="output_certificate_base64"></a> [certificate\_base64](#output\_certificate\_base64) | Database connection certificate |
| <a name="output_crn"></a> [crn](#output\_crn) | Elasticsearch instance crn |
| <a name="output_guid"></a> [guid](#output\_guid) | Elasticsearch instance guid |
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database hostname. Only contains value when var.service\_credential\_names or var.users are set. |
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database connection hostname |
| <a name="output_id"></a> [id](#output\_id) | Elasticsearch id |
| <a name="output_port"></a> [port](#output\_port) | Database port. Only contains value when var.service\_credential\_names or var.users are set. |
| <a name="output_port"></a> [port](#output\_port) | Database connection port |
| <a name="output_service_credentials_json"></a> [service\_credentials\_json](#output\_service\_credentials\_json) | Service credentials json map |
| <a name="output_service_credentials_object"></a> [service\_credentials\_object](#output\_service\_credentials\_object) | Service credentials object |
| <a name="output_version"></a> [version](#output\_version) | Elasticsearch version |
Expand Down
27 changes: 26 additions & 1 deletion examples/basic/outputs.tf
Original file line number Diff line number Diff line change
@@ -1,8 +1,33 @@
##############################################################################
# Outputs
##############################################################################

output "id" {
description = "Elasticsearch id"
value = module.icd_elasticsearch.id
}

output "version" {
description = "Enterprise DB instance version"
value = module.icd_elasticsearch.version
}

output "adminuser" {
description = "Database admin user name"
value = module.icd_elasticsearch.adminuser
}

output "hostname" {
description = "Database connection hostname"
value = module.icd_elasticsearch.hostname
}

output "port" {
description = "Database connection port"
value = module.icd_elasticsearch.port
}

output "certificate_base64" {
description = "Database connection certificate"
value = module.icd_elasticsearch.certificate_base64
sensitive = true
}
5 changes: 2 additions & 3 deletions main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -210,9 +210,8 @@ locals {
}

data "ibm_database_connection" "database_connection" {
count = length(var.users) > 0 ? 1 : 0
endpoint_type = var.service_endpoints
deployment_id = ibm_database.elasticsearch.id
user_id = var.users[0].name
user_type = var.users[0].type
user_id = ibm_database.elasticsearch.adminuser
user_type = "database"
}
6 changes: 4 additions & 2 deletions modules/fscloud/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,12 +55,14 @@ No resources.

| Name | Description |
|------|-------------|
| <a name="output_adminuser"></a> [adminuser](#output\_adminuser) | Database admin user name |
| <a name="output_cbr_rule_ids"></a> [cbr\_rule\_ids](#output\_cbr\_rule\_ids) | CBR rule ids created to restrict Elasticsearch |
| <a name="output_certificate_base64"></a> [certificate\_base64](#output\_certificate\_base64) | Database connection certificate |
| <a name="output_crn"></a> [crn](#output\_crn) | Elasticsearch instance crn |
| <a name="output_guid"></a> [guid](#output\_guid) | Elasticsearch instance guid |
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Elasticsearch instance hostname |
| <a name="output_hostname"></a> [hostname](#output\_hostname) | Database connection hostname |
| <a name="output_id"></a> [id](#output\_id) | Elasticsearch instance id |
| <a name="output_port"></a> [port](#output\_port) | Elasticsearch instance port |
| <a name="output_port"></a> [port](#output\_port) | Database connection port |
| <a name="output_service_credentials_json"></a> [service\_credentials\_json](#output\_service\_credentials\_json) | Service credentials json map |
| <a name="output_service_credentials_object"></a> [service\_credentials\_object](#output\_service\_credentials\_object) | Service credentials object |
| <a name="output_version"></a> [version](#output\_version) | Elasticsearch instance version |
Expand Down
15 changes: 13 additions & 2 deletions modules/fscloud/outputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,23 @@ output "service_credentials_object" {
sensitive = true
}

output "adminuser" {
description = "Database admin user name"
value = module.elasticsearch.adminuser
}

output "hostname" {
description = "Elasticsearch instance hostname"
description = "Database connection hostname"
value = module.elasticsearch.hostname
}

output "port" {
description = "Elasticsearch instance port"
description = "Database connection port"
value = module.elasticsearch.port
}

output "certificate_base64" {
description = "Database connection certificate"
value = module.elasticsearch.certificate_base64
sensitive = true
}
19 changes: 14 additions & 5 deletions outputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -39,14 +39,23 @@ output "service_credentials_object" {
sensitive = true
}

output "adminuser" {
description = "Database admin user name"
value = ibm_database.elasticsearch.adminuser
}

output "hostname" {
description = "Database hostname. Only contains value when var.service_credential_names or var.users are set."
value = length(var.service_credential_names) > 0 ? nonsensitive(ibm_resource_key.service_credentials[keys(var.service_credential_names)[0]].credentials["connection.https.hosts.0.hostname"]) : length(var.users) > 0 ? nonsensitive(flatten(data.ibm_database_connection.database_connection[0].https[0].hosts[0].hostname)) : null
description = "Database connection hostname"
value = data.ibm_database_connection.database_connection.https[0].hosts[0].hostname
}

output "port" {
description = "Database port. Only contains value when var.service_credential_names or var.users are set."
value = length(var.service_credential_names) > 0 ? nonsensitive(ibm_resource_key.service_credentials[keys(var.service_credential_names)[0]].credentials["connection.https.hosts.0.port"]) : length(var.users) > 0 ? nonsensitive(flatten(data.ibm_database_connection.database_connection[0].https[0].hosts[0].port)) : null
description = "Database connection port"
value = data.ibm_database_connection.database_connection.https[0].hosts[0].port
}

##############################################################################
output "certificate_base64" {
description = "Database connection certificate"
value = data.ibm_database_connection.database_connection.https[0].certificate[0].certificate_base64
sensitive = true
}

0 comments on commit c99f37a

Please sign in to comment.