This commit is contained in:
2024-03-12 17:40:56 +01:00
parent 51466a2877
commit 55cb27f5f8
3 changed files with 117 additions and 115 deletions

View File

@@ -62,7 +62,7 @@ data "kubernetes_secret_v1" "password_get" {
}
resource "postgresql_role" "owner" {
depends_on = [ time_sleep.wait_pg_ready, kubectl_manifest.prj_pg, data.kubernetes_secret_v1.postgresql_password ]
depends_on = [ time_sleep.wait_pg_ready, kubectl_manifest.prj_pg, kubectl_manifest.db_secret, data.kubernetes_secret_v1.postgresql_password ]
count = length(local.sorted-dbs)
name = "${local.sorted-dbs[count.index].name}"
login = true

View File

@@ -6,74 +6,6 @@ metadata:
name: dataset-pg
description: null
options:
backups:
default:
enable: false
endpoint: ''
key_id_key: s3-id
retention:
db: 30d
schedule:
db: 0 3 * * *
secret_key: s3-secret
secret_name: backup-settings
examples:
- enable: false
endpoint: ''
key_id_key: s3-id
retention:
db: 30d
schedule:
db: 0 3 * * *
secret_key: s3-secret
secret_name: backup-settings
properties:
enable:
default: false
type: boolean
endpoint:
default: ''
type: string
key_id_key:
default: s3-id
type: string
retention:
default:
db: 30d
properties:
db:
default: 30d
type: string
type: object
schedule:
default:
db: 0 3 * * *
properties:
db:
default: 0 3 * * *
type: string
type: object
secret_key:
default: s3-secret
type: string
secret_name:
default: backup-settings
type: string
type: object
databases:
default: []
items:
properties:
name:
default: db
type: string
type: object
type: array
issuer:
default: letsencrypt-prod
examples:
- letsencrypt-prod
type: string
storage:
default:
postgres:
@@ -91,16 +23,50 @@ options:
type: string
type: object
type: object
app_group:
default: api
examples:
- api
type: string
domain_name:
default: your_company.com
examples:
- your_company.com
type: string
images:
default:
postgresql:
registry: ghcr.io
repository: cloudnative-pg/postgresql
tag: 15.3
examples:
- postgresql:
registry: ghcr.io
repository: cloudnative-pg/postgresql
tag: 15.3
properties:
postgresql:
default:
registry: ghcr.io
repository: cloudnative-pg/postgresql
tag: 15.3
properties:
registry:
default: ghcr.io
type: string
repository:
default: cloudnative-pg/postgresql
type: string
tag:
default: 15.3
type: number
type: object
type: object
issuer:
default: letsencrypt-prod
examples:
- letsencrypt-prod
type: string
app_group:
default: api
examples:
- api
type: string
postgres:
default:
replicas: 1
@@ -116,25 +82,6 @@ options:
examples:
- traefik
type: string
roles:
default: []
items:
properties:
name:
default: alt-account
type: string
type: object
type: array
domain:
default: your-company
examples:
- your-company
type: string
sub_domain:
default: dataset-pg
examples:
- dataset-pg
type: string
extentions:
default:
directus:
@@ -316,34 +263,87 @@ options:
type: object
type: object
type: object
images:
default:
postgresql:
registry: ghcr.io
repository: cloudnative-pg/postgresql
tag: 15.3
databases:
default: []
items:
properties:
name:
default: db
type: string
type: object
type: array
domain:
default: your-company
examples:
- postgresql:
registry: ghcr.io
repository: cloudnative-pg/postgresql
tag: 15.3
- your-company
type: string
roles:
default: []
items:
properties:
name:
default: alt-account
type: string
type: object
type: array
sub_domain:
default: dataset-pg
examples:
- dataset-pg
type: string
backups:
default:
enable: false
endpoint: ''
key_id_key: s3-id
retention:
db: 30d
schedule:
db: 0 3 * * *
secret_key: s3-secret
secret_name: backup-settings
examples:
- enable: false
endpoint: ''
key_id_key: s3-id
retention:
db: 30d
schedule:
db: 0 3 * * *
secret_key: s3-secret
secret_name: backup-settings
properties:
postgresql:
enable:
default: false
type: boolean
endpoint:
default: ''
type: string
key_id_key:
default: s3-id
type: string
retention:
default:
registry: ghcr.io
repository: cloudnative-pg/postgresql
tag: 15.3
db: 30d
properties:
registry:
default: ghcr.io
db:
default: 30d
type: string
repository:
default: cloudnative-pg/postgresql
type: string
tag:
default: 15.3
type: number
type: object
schedule:
default:
db: 0 3 * * *
properties:
db:
default: 0 3 * * *
type: string
type: object
secret_key:
default: s3-secret
type: string
secret_name:
default: backup-settings
type: string
type: object
dependencies:
- dist: null
@@ -360,6 +360,7 @@ providers:
authentik: true
kubectl: true
postgresql: true
mysql: null
restapi: null
http: null
gitea: null

View File

@@ -23,6 +23,7 @@ resource "kubectl_manifest" "prj_pg" {
size: "${var.storage.postgres.size}"
monitoring:
enablePodMonitor: true
enableSuperuserAccess: true
bootstrap:
initdb:
database: "${var.instance}"