This commit is contained in:
2023-10-20 13:18:51 +02:00
parent 7cb17b8170
commit e83dc276d5
2 changed files with 99 additions and 99 deletions

View File

@@ -32,7 +32,7 @@ locals {
join("_",["PORT_redis", m.namespace, m.name]) = "6379" join("_",["PORT_redis", m.namespace, m.name]) = "6379"
}]...) }]...)
redis-privs = [for m in var.redis: merge({secret = lookup(m,"secret",{})},m) if contains(keys(m),"secret")] redis-privs = [for m in var.redis: merge({secret = lookup(m,"secret",{})},m) if contains(keys(m),"secret")]
redis_secrets = merge([for index, m in var.redis-privs: { redis_secrets = merge([for index, m in local.redis-privs: {
join("_",["PASSWORD_redis", m.namespace, m.name]) = data.kubernetes_secret_v1.redis[index].data[lookup(m.secret,"key", "password")] join("_",["PASSWORD_redis", m.namespace, m.name]) = data.kubernetes_secret_v1.redis[index].data[lookup(m.secret,"key", "password")]
}]...) }]...)
redis_conns = [for m in var.redis: join("_",["redis", m.namespace, m.name])] redis_conns = [for m in var.redis: join("_",["redis", m.namespace, m.name])]
@@ -95,9 +95,9 @@ data "kubernetes_secret_v1" "mongos" {
} }
} }
data "kubernetes_secret_v1" "redis" { data "kubernetes_secret_v1" "redis" {
count = length(var.redis-privs) count = length(local.redis-privs)
metadata { metadata {
name = "${lookup(var.redis-privs[count.index].secret, "name", var.redis-privs[count.index].name)}" name = "${lookup(local.redis-privs[count.index].secret, "name", local.redis-privs[count.index].name)}"
namespace = "${var.redis-privs[count.index].namespace}" namespace = "${local.redis-privs[count.index].namespace}"
} }
} }

View File

@@ -6,108 +6,25 @@ metadata:
name: dbgate name: dbgate
description: null description: null
options: options:
ingress-class: redis:
default: traefik
examples:
- traefik
type: string
domain-name:
default: your_company.com
examples:
- your_company.com
type: string
pg:
default: [] default: []
examples: examples:
- [] - []
items: items:
properties: properties:
dbname:
default: ''
type: string
name: name:
default: '' default: ''
type: string type: string
namespace: namespace:
default: '' default: ''
type: string type: string
secret:
properties:
key:
default: ''
type: string
name:
default: ''
type: string
type: object
username:
default: ''
type: string
type: object type: object
type: array type: array
issuer: app-group:
default: letsencrypt-prod default: dev
examples: examples:
- letsencrypt-prod - dev
type: string type: string
mongo:
default: []
examples:
- []
items:
properties:
dbname:
default: ''
type: string
name:
default: ''
type: string
namespace:
default: ''
type: string
secret:
properties:
key:
default: ''
type: string
name:
default: ''
type: string
type: object
username:
default: ''
type: string
type: object
type: array
maria:
default: []
examples:
- []
items:
properties:
dbname:
default: ''
type: string
name:
default: ''
type: string
namespace:
default: ''
type: string
secret:
properties:
key:
default: ''
type: string
name:
default: ''
type: string
type: object
username:
default: ''
type: string
type: object
type: array
images: images:
default: default:
dbgate: dbgate:
@@ -152,20 +69,78 @@ options:
examples: examples:
- dbgate - dbgate
type: string type: string
use-oauth: domain-name:
default: false default: your_company.com
examples: examples:
- false - your_company.com
type: boolean type: string
domain: domain:
default: your-company default: your-company
examples: examples:
- your-company - your-company
type: string type: string
app-group: maria:
default: dev default: []
examples: examples:
- dev - []
items:
properties:
dbname:
default: ''
type: string
name:
default: ''
type: string
namespace:
default: ''
type: string
secret:
properties:
key:
default: ''
type: string
name:
default: ''
type: string
type: object
username:
default: ''
type: string
type: object
type: array
mongo:
default: []
examples:
- []
items:
properties:
dbname:
default: ''
type: string
name:
default: ''
type: string
namespace:
default: ''
type: string
secret:
properties:
key:
default: ''
type: string
name:
default: ''
type: string
type: object
username:
default: ''
type: string
type: object
type: array
issuer:
default: letsencrypt-prod
examples:
- letsencrypt-prod
type: string type: string
storage: storage:
default: default:
@@ -194,18 +169,43 @@ options:
- Block - Block
type: string type: string
type: object type: object
redis: ingress-class:
default: traefik
examples:
- traefik
type: string
use-oauth:
default: false
examples:
- false
type: boolean
pg:
default: [] default: []
examples: examples:
- [] - []
items: items:
properties: properties:
dbname:
default: ''
type: string
name: name:
default: '' default: ''
type: string type: string
namespace: namespace:
default: '' default: ''
type: string type: string
secret:
properties:
key:
default: ''
type: string
name:
default: ''
type: string
type: object
username:
default: ''
type: string
type: object type: object
type: array type: array
dependencies: dependencies: