-
Notifications
You must be signed in to change notification settings - Fork 1
/
bindTemplate.json
23 lines (23 loc) · 1.26 KB
/
bindTemplate.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{{- $namespace := GetObjectByLabel "" "Namespace" "instanceID" .InstanceID -}}
{{- $nsname := $namespace.GetName -}}
{{- $instance := GetObjectByLabel $nsname "postgres.sql.tanzu.vmware.com" "instanceID" .InstanceID -}}
{{- $instanceName := $instance.GetName -}}
{{- $secretName := printf "%s%s" $instanceName "-db-secret" -}}
{{- $secret := GetObjectByName $nsname "Secret" $secretName -}}
{{- $svcName := $instanceName -}}
{{- $service := GetObjectByName $nsname "Service" $svcName -}}
{{- $hostname := index $service.Object "status" "loadBalancer" "ingress" 0 "ip" -}}
{{- $username := index $secret.Object "data" "username" | base64decode -}}
{{- $password := index $secret.Object "data" "password" | base64decode -}}
{{- $dbname := index $secret.Object "data" "dbname" | base64decode -}}
{{- $port := 5432}}
{
"hostname": "{{$hostname}}",
"name": "{{$instanceName}}",
"jdbcUrl": "{{printf "jdbc:postgresql://%s:%v/%s?user=%s&password=%s&userSSL=false&targetServerType=primary" $hostname $port $dbname $username $password}}",
"uri": "{{printf "postgresql://%s:%s@%s:%v/%s?target_session_attrs=read-write" $username $password $hostname $port $dbname}}",
"password": "{{$password}}",
"port": "{{$port}}",
"username": "{{$username}}",
"dbname": "{{$dbname}}"
}