fix
This commit is contained in:
@@ -6,77 +6,6 @@ metadata:
|
|||||||
name: dolibarr
|
name: dolibarr
|
||||||
description: null
|
description: null
|
||||||
options:
|
options:
|
||||||
sub-domain:
|
|
||||||
default: erp
|
|
||||||
examples:
|
|
||||||
- erp
|
|
||||||
type: string
|
|
||||||
hpa:
|
|
||||||
default:
|
|
||||||
avg-cpu: 50
|
|
||||||
max-replicas: 5
|
|
||||||
min-replicas: 1
|
|
||||||
examples:
|
|
||||||
- avg-cpu: 50
|
|
||||||
max-replicas: 5
|
|
||||||
min-replicas: 1
|
|
||||||
properties:
|
|
||||||
avg-cpu:
|
|
||||||
default: 50
|
|
||||||
type: integer
|
|
||||||
max-replicas:
|
|
||||||
default: 5
|
|
||||||
type: integer
|
|
||||||
min-replicas:
|
|
||||||
default: 1
|
|
||||||
type: integer
|
|
||||||
type: object
|
|
||||||
redis:
|
|
||||||
default:
|
|
||||||
exporter:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
image: quay.io/opstree/redis:v7.0.5
|
|
||||||
storage: 2Gi
|
|
||||||
examples:
|
|
||||||
- exporter:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
image: quay.io/opstree/redis:v7.0.5
|
|
||||||
storage: 2Gi
|
|
||||||
properties:
|
|
||||||
exporter:
|
|
||||||
default:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
properties:
|
|
||||||
enabled:
|
|
||||||
default: true
|
|
||||||
type: boolean
|
|
||||||
image:
|
|
||||||
default: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
image:
|
|
||||||
default: quay.io/opstree/redis:v7.0.5
|
|
||||||
type: string
|
|
||||||
storage:
|
|
||||||
default: 2Gi
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
issuer:
|
|
||||||
default: letsencrypt-prod
|
|
||||||
examples:
|
|
||||||
- letsencrypt-prod
|
|
||||||
type: string
|
|
||||||
modules:
|
|
||||||
default:
|
|
||||||
- societe
|
|
||||||
examples:
|
|
||||||
- - societe
|
|
||||||
items:
|
|
||||||
type: string
|
|
||||||
type: array
|
|
||||||
storage:
|
storage:
|
||||||
default:
|
default:
|
||||||
accessMode: ReadWriteOnce
|
accessMode: ReadWriteOnce
|
||||||
@@ -104,26 +33,6 @@ options:
|
|||||||
- block
|
- block
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
domain-name:
|
|
||||||
default: your_company.com
|
|
||||||
examples:
|
|
||||||
- your_company.com
|
|
||||||
type: string
|
|
||||||
parameters:
|
|
||||||
default:
|
|
||||||
MAIN_LANG_DEFAULT: auto
|
|
||||||
examples:
|
|
||||||
- MAIN_LANG_DEFAULT: auto
|
|
||||||
properties:
|
|
||||||
MAIN_LANG_DEFAULT:
|
|
||||||
default: auto
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
ingress-class:
|
|
||||||
default: traefik
|
|
||||||
examples:
|
|
||||||
- traefik
|
|
||||||
type: string
|
|
||||||
images:
|
images:
|
||||||
default:
|
default:
|
||||||
dolibarr:
|
dolibarr:
|
||||||
@@ -189,6 +98,59 @@ options:
|
|||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
type: object
|
type: object
|
||||||
|
domain-name:
|
||||||
|
default: your_company.com
|
||||||
|
examples:
|
||||||
|
- your_company.com
|
||||||
|
type: string
|
||||||
|
sub-domain:
|
||||||
|
default: erp
|
||||||
|
examples:
|
||||||
|
- erp
|
||||||
|
type: string
|
||||||
|
redis:
|
||||||
|
default:
|
||||||
|
exporter:
|
||||||
|
enabled: true
|
||||||
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
image: quay.io/opstree/redis:v7.0.5
|
||||||
|
storage: 2Gi
|
||||||
|
examples:
|
||||||
|
- exporter:
|
||||||
|
enabled: true
|
||||||
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
image: quay.io/opstree/redis:v7.0.5
|
||||||
|
storage: 2Gi
|
||||||
|
properties:
|
||||||
|
exporter:
|
||||||
|
default:
|
||||||
|
enabled: true
|
||||||
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
properties:
|
||||||
|
enabled:
|
||||||
|
default: true
|
||||||
|
type: boolean
|
||||||
|
image:
|
||||||
|
default: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
image:
|
||||||
|
default: quay.io/opstree/redis:v7.0.5
|
||||||
|
type: string
|
||||||
|
storage:
|
||||||
|
default: 2Gi
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
parameters:
|
||||||
|
default:
|
||||||
|
MAIN_LANG_DEFAULT: auto
|
||||||
|
examples:
|
||||||
|
- MAIN_LANG_DEFAULT: auto
|
||||||
|
properties:
|
||||||
|
MAIN_LANG_DEFAULT:
|
||||||
|
default: auto
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
backups:
|
backups:
|
||||||
default:
|
default:
|
||||||
enable: false
|
enable: false
|
||||||
@@ -290,11 +252,6 @@ options:
|
|||||||
default: backup-settings
|
default: backup-settings
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
domain:
|
|
||||||
default: your-company
|
|
||||||
examples:
|
|
||||||
- your-company
|
|
||||||
type: string
|
|
||||||
user-groups:
|
user-groups:
|
||||||
default:
|
default:
|
||||||
- admin: true
|
- admin: true
|
||||||
@@ -315,25 +272,35 @@ options:
|
|||||||
examples:
|
examples:
|
||||||
- 5
|
- 5
|
||||||
type: integer
|
type: integer
|
||||||
postgres:
|
issuer:
|
||||||
default:
|
default: letsencrypt-prod
|
||||||
replicas: 1
|
|
||||||
storage: 5Gi
|
|
||||||
version: '14'
|
|
||||||
examples:
|
examples:
|
||||||
- replicas: 1
|
- letsencrypt-prod
|
||||||
storage: 5Gi
|
type: string
|
||||||
version: '14'
|
domain:
|
||||||
|
default: your-company
|
||||||
|
examples:
|
||||||
|
- your-company
|
||||||
|
type: string
|
||||||
|
hpa:
|
||||||
|
default:
|
||||||
|
avg-cpu: 50
|
||||||
|
max-replicas: 5
|
||||||
|
min-replicas: 1
|
||||||
|
examples:
|
||||||
|
- avg-cpu: 50
|
||||||
|
max-replicas: 5
|
||||||
|
min-replicas: 1
|
||||||
properties:
|
properties:
|
||||||
replicas:
|
avg-cpu:
|
||||||
|
default: 50
|
||||||
|
type: integer
|
||||||
|
max-replicas:
|
||||||
|
default: 5
|
||||||
|
type: integer
|
||||||
|
min-replicas:
|
||||||
default: 1
|
default: 1
|
||||||
type: integer
|
type: integer
|
||||||
storage:
|
|
||||||
default: 5Gi
|
|
||||||
type: string
|
|
||||||
version:
|
|
||||||
default: '14'
|
|
||||||
type: string
|
|
||||||
type: object
|
type: object
|
||||||
resources:
|
resources:
|
||||||
default:
|
default:
|
||||||
@@ -376,6 +343,39 @@ options:
|
|||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
type: object
|
type: object
|
||||||
|
modules:
|
||||||
|
default:
|
||||||
|
- societe
|
||||||
|
examples:
|
||||||
|
- - societe
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
type: array
|
||||||
|
ingress-class:
|
||||||
|
default: traefik
|
||||||
|
examples:
|
||||||
|
- traefik
|
||||||
|
type: string
|
||||||
|
postgres:
|
||||||
|
default:
|
||||||
|
replicas: 1
|
||||||
|
storage: 5Gi
|
||||||
|
version: '14'
|
||||||
|
examples:
|
||||||
|
- replicas: 1
|
||||||
|
storage: 5Gi
|
||||||
|
version: '14'
|
||||||
|
properties:
|
||||||
|
replicas:
|
||||||
|
default: 1
|
||||||
|
type: integer
|
||||||
|
storage:
|
||||||
|
default: 5Gi
|
||||||
|
type: string
|
||||||
|
version:
|
||||||
|
default: '14'
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
dependencies:
|
dependencies:
|
||||||
- dist: null
|
- dist: null
|
||||||
category: share
|
category: share
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ locals {
|
|||||||
pg-labels = merge(local.common-labels, {
|
pg-labels = merge(local.common-labels, {
|
||||||
"app.kubernetes.io/component" = "pg"
|
"app.kubernetes.io/component" = "pg"
|
||||||
})
|
})
|
||||||
backup-def = var.backups.enable ? {
|
backup-def = {
|
||||||
retentionPolicy = var.backups.retention.db
|
retentionPolicy = var.backups.retention.db
|
||||||
barmanObjectStore = {
|
barmanObjectStore = {
|
||||||
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
||||||
@@ -18,7 +18,7 @@ locals {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} : {}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "kubectl_manifest" "prj_pg" {
|
resource "kubectl_manifest" "prj_pg" {
|
||||||
@@ -39,7 +39,7 @@ resource "kubectl_manifest" "prj_pg" {
|
|||||||
owner: "${var.component}"
|
owner: "${var.component}"
|
||||||
storage:
|
storage:
|
||||||
size: "${var.postgres.storage}"
|
size: "${var.postgres.storage}"
|
||||||
backup: ${jsonencode(local.backup-def)}
|
backup: ${jsonencode(var.backups.enable?local.backup-def:{})}
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,10 +9,20 @@ metadata:
|
|||||||
A painless self-hosted Git service.
|
A painless self-hosted Git service.
|
||||||
Gitea is a community managed lightweight code hosting solution written in Go. It is published under the MIT license.
|
Gitea is a community managed lightweight code hosting solution written in Go. It is published under the MIT license.
|
||||||
options:
|
options:
|
||||||
timezone:
|
volume:
|
||||||
default: Europe/Paris
|
default:
|
||||||
|
size: 10Gi
|
||||||
examples:
|
examples:
|
||||||
- Europe/Paris
|
- size: 10Gi
|
||||||
|
properties:
|
||||||
|
size:
|
||||||
|
default: 10Gi
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
issuer:
|
||||||
|
default: letsencrypt-prod
|
||||||
|
examples:
|
||||||
|
- letsencrypt-prod
|
||||||
type: string
|
type: string
|
||||||
load-balancer:
|
load-balancer:
|
||||||
default:
|
default:
|
||||||
@@ -24,16 +34,31 @@ options:
|
|||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
issuer:
|
|
||||||
default: letsencrypt-prod
|
|
||||||
examples:
|
|
||||||
- letsencrypt-prod
|
|
||||||
type: string
|
|
||||||
domain:
|
domain:
|
||||||
default: your-company
|
default: your-company
|
||||||
examples:
|
examples:
|
||||||
- your-company
|
- your-company
|
||||||
type: string
|
type: string
|
||||||
|
disable-registration:
|
||||||
|
default: true
|
||||||
|
examples:
|
||||||
|
- true
|
||||||
|
type: boolean
|
||||||
|
domain-name:
|
||||||
|
default: your_company.com
|
||||||
|
examples:
|
||||||
|
- your_company.com
|
||||||
|
type: string
|
||||||
|
ssh-port:
|
||||||
|
default: 2222
|
||||||
|
examples:
|
||||||
|
- 2222
|
||||||
|
type: integer
|
||||||
|
default-branch:
|
||||||
|
default: main
|
||||||
|
examples:
|
||||||
|
- main
|
||||||
|
type: string
|
||||||
webhook:
|
webhook:
|
||||||
default:
|
default:
|
||||||
allowed-hosts: private
|
allowed-hosts: private
|
||||||
@@ -49,51 +74,21 @@ options:
|
|||||||
default: false
|
default: false
|
||||||
type: boolean
|
type: boolean
|
||||||
type: object
|
type: object
|
||||||
sub-domain:
|
theme:
|
||||||
default: git
|
default: gitea-modern
|
||||||
examples:
|
examples:
|
||||||
- git
|
- gitea-modern
|
||||||
type: string
|
type: string
|
||||||
postgres:
|
|
||||||
default:
|
|
||||||
replicas: 1
|
|
||||||
storage: 10Gi
|
|
||||||
version: '14'
|
|
||||||
examples:
|
|
||||||
- replicas: 1
|
|
||||||
storage: 10Gi
|
|
||||||
version: '14'
|
|
||||||
properties:
|
|
||||||
replicas:
|
|
||||||
default: 1
|
|
||||||
type: integer
|
|
||||||
storage:
|
|
||||||
default: 10Gi
|
|
||||||
type: string
|
|
||||||
version:
|
|
||||||
default: '14'
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
release:
|
release:
|
||||||
default: 8.3.0
|
default: 8.3.0
|
||||||
examples:
|
examples:
|
||||||
- 8.3.0
|
- 8.3.0
|
||||||
type: string
|
type: string
|
||||||
disable-registration:
|
sub-domain:
|
||||||
default: true
|
default: git
|
||||||
examples:
|
examples:
|
||||||
- true
|
- git
|
||||||
type: boolean
|
|
||||||
ingress-class:
|
|
||||||
default: traefik
|
|
||||||
examples:
|
|
||||||
- traefik
|
|
||||||
type: string
|
type: string
|
||||||
replicas:
|
|
||||||
default: 1
|
|
||||||
examples:
|
|
||||||
- 1
|
|
||||||
type: integer
|
|
||||||
backups:
|
backups:
|
||||||
default:
|
default:
|
||||||
enable: false
|
enable: false
|
||||||
@@ -195,21 +190,51 @@ options:
|
|||||||
default: backup-settings
|
default: backup-settings
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
volume:
|
admin:
|
||||||
default:
|
default:
|
||||||
size: 10Gi
|
email: git-admin@git.your_company.com
|
||||||
|
name: gitea_admin
|
||||||
examples:
|
examples:
|
||||||
- size: 10Gi
|
- email: git-admin@git.your_company.com
|
||||||
|
name: gitea_admin
|
||||||
properties:
|
properties:
|
||||||
size:
|
email:
|
||||||
default: 10Gi
|
default: git-admin@git.your_company.com
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
default: gitea_admin
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
default-branch:
|
postgres:
|
||||||
default: main
|
default:
|
||||||
|
replicas: 1
|
||||||
|
storage: 10Gi
|
||||||
|
version: '14'
|
||||||
examples:
|
examples:
|
||||||
- main
|
- replicas: 1
|
||||||
|
storage: 10Gi
|
||||||
|
version: '14'
|
||||||
|
properties:
|
||||||
|
replicas:
|
||||||
|
default: 1
|
||||||
|
type: integer
|
||||||
|
storage:
|
||||||
|
default: 10Gi
|
||||||
|
type: string
|
||||||
|
version:
|
||||||
|
default: '14'
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
timezone:
|
||||||
|
default: Europe/Paris
|
||||||
|
examples:
|
||||||
|
- Europe/Paris
|
||||||
type: string
|
type: string
|
||||||
|
replicas:
|
||||||
|
default: 1
|
||||||
|
examples:
|
||||||
|
- 1
|
||||||
|
type: integer
|
||||||
push-create:
|
push-create:
|
||||||
default:
|
default:
|
||||||
org: 'true'
|
org: 'true'
|
||||||
@@ -230,26 +255,11 @@ options:
|
|||||||
default: 'true'
|
default: 'true'
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
admin:
|
ingress-class:
|
||||||
default:
|
default: traefik
|
||||||
email: git-admin@git.your_company.com
|
|
||||||
name: gitea_admin
|
|
||||||
examples:
|
examples:
|
||||||
- email: git-admin@git.your_company.com
|
- traefik
|
||||||
name: gitea_admin
|
type: string
|
||||||
properties:
|
|
||||||
email:
|
|
||||||
default: git-admin@git.your_company.com
|
|
||||||
type: string
|
|
||||||
name:
|
|
||||||
default: gitea_admin
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
ssh-port:
|
|
||||||
default: 2222
|
|
||||||
examples:
|
|
||||||
- 2222
|
|
||||||
type: integer
|
|
||||||
images:
|
images:
|
||||||
default:
|
default:
|
||||||
gitea:
|
gitea:
|
||||||
@@ -313,16 +323,6 @@ options:
|
|||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
type: object
|
type: object
|
||||||
theme:
|
|
||||||
default: gitea-modern
|
|
||||||
examples:
|
|
||||||
- gitea-modern
|
|
||||||
type: string
|
|
||||||
domain-name:
|
|
||||||
default: your_company.com
|
|
||||||
examples:
|
|
||||||
- your_company.com
|
|
||||||
type: string
|
|
||||||
dependencies:
|
dependencies:
|
||||||
- dist: null
|
- dist: null
|
||||||
category: share
|
category: share
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ locals {
|
|||||||
pg-labels = merge(local.common-labels, {
|
pg-labels = merge(local.common-labels, {
|
||||||
"app.kubernetes.io/component" = "pg"
|
"app.kubernetes.io/component" = "pg"
|
||||||
})
|
})
|
||||||
backup-def = var.backups.enable ? {
|
backup-def = {
|
||||||
retentionPolicy = var.backups.retention.db
|
retentionPolicy = var.backups.retention.db
|
||||||
barmanObjectStore = {
|
barmanObjectStore = {
|
||||||
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
||||||
@@ -18,7 +18,7 @@ locals {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} : {}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "kubectl_manifest" "prj_pg" {
|
resource "kubectl_manifest" "prj_pg" {
|
||||||
@@ -39,7 +39,7 @@ resource "kubectl_manifest" "prj_pg" {
|
|||||||
initdb:
|
initdb:
|
||||||
database: "${var.component}"
|
database: "${var.component}"
|
||||||
owner: "${var.component}"
|
owner: "${var.component}"
|
||||||
backup: ${jsonencode(local.backup-def)}
|
backup: ${jsonencode(var.backups.enable?local.backup-def:{})}
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,137 +6,54 @@ metadata:
|
|||||||
name: nextcloud
|
name: nextcloud
|
||||||
description: null
|
description: null
|
||||||
options:
|
options:
|
||||||
sub-domain:
|
domain-name:
|
||||||
default: files
|
default: your_company.com
|
||||||
examples:
|
examples:
|
||||||
- files
|
- your_company.com
|
||||||
type: string
|
type: string
|
||||||
hpa:
|
redis:
|
||||||
default:
|
default:
|
||||||
avg-cpu: 50
|
exporter:
|
||||||
max-replicas: 5
|
enabled: true
|
||||||
min-replicas: 1
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
image: quay.io/opstree/redis:v7.0.5
|
||||||
|
storage: 2Gi
|
||||||
examples:
|
examples:
|
||||||
- avg-cpu: 50
|
- exporter:
|
||||||
max-replicas: 5
|
enabled: true
|
||||||
min-replicas: 1
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
image: quay.io/opstree/redis:v7.0.5
|
||||||
|
storage: 2Gi
|
||||||
properties:
|
properties:
|
||||||
avg-cpu:
|
exporter:
|
||||||
default: 50
|
|
||||||
type: integer
|
|
||||||
max-replicas:
|
|
||||||
default: 5
|
|
||||||
type: integer
|
|
||||||
min-replicas:
|
|
||||||
default: 1
|
|
||||||
type: integer
|
|
||||||
type: object
|
|
||||||
ingress-class:
|
|
||||||
default: traefik
|
|
||||||
examples:
|
|
||||||
- traefik
|
|
||||||
type: string
|
|
||||||
backups:
|
|
||||||
default:
|
|
||||||
enable: false
|
|
||||||
endpoint: ''
|
|
||||||
key-id-key: s3-id
|
|
||||||
restic-key: bck-password
|
|
||||||
retention:
|
|
||||||
db: 30d
|
|
||||||
keepDaily: 14
|
|
||||||
keepMonthly: 12
|
|
||||||
keepWeekly: 6
|
|
||||||
keepYearly: 12
|
|
||||||
schedule:
|
|
||||||
backup: 30 3 * * *
|
|
||||||
check: 30 5 * * 1
|
|
||||||
db: 30 3 * * *
|
|
||||||
prune: 30 1 * * 0
|
|
||||||
secret-key: s3-secret
|
|
||||||
secret-name: backup-settings
|
|
||||||
examples:
|
|
||||||
- enable: false
|
|
||||||
endpoint: ''
|
|
||||||
key-id-key: s3-id
|
|
||||||
restic-key: bck-password
|
|
||||||
retention:
|
|
||||||
db: 30d
|
|
||||||
keepDaily: 14
|
|
||||||
keepMonthly: 12
|
|
||||||
keepWeekly: 6
|
|
||||||
keepYearly: 12
|
|
||||||
schedule:
|
|
||||||
backup: 30 3 * * *
|
|
||||||
check: 30 5 * * 1
|
|
||||||
db: 30 3 * * *
|
|
||||||
prune: 30 1 * * 0
|
|
||||||
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
|
|
||||||
restic-key:
|
|
||||||
default: bck-password
|
|
||||||
type: string
|
|
||||||
retention:
|
|
||||||
default:
|
default:
|
||||||
db: 30d
|
enabled: true
|
||||||
keepDaily: 14
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
keepMonthly: 12
|
|
||||||
keepWeekly: 6
|
|
||||||
keepYearly: 12
|
|
||||||
properties:
|
properties:
|
||||||
db:
|
enabled:
|
||||||
default: 30d
|
default: true
|
||||||
type: string
|
type: boolean
|
||||||
keepDaily:
|
image:
|
||||||
default: 14
|
default: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
type: integer
|
|
||||||
keepMonthly:
|
|
||||||
default: 12
|
|
||||||
type: integer
|
|
||||||
keepWeekly:
|
|
||||||
default: 6
|
|
||||||
type: integer
|
|
||||||
keepYearly:
|
|
||||||
default: 12
|
|
||||||
type: integer
|
|
||||||
type: object
|
|
||||||
schedule:
|
|
||||||
default:
|
|
||||||
backup: 30 3 * * *
|
|
||||||
check: 30 5 * * 1
|
|
||||||
db: 30 3 * * *
|
|
||||||
prune: 30 1 * * 0
|
|
||||||
properties:
|
|
||||||
backup:
|
|
||||||
default: 30 3 * * *
|
|
||||||
type: string
|
|
||||||
check:
|
|
||||||
default: 30 5 * * 1
|
|
||||||
type: string
|
|
||||||
db:
|
|
||||||
default: 30 3 * * *
|
|
||||||
type: string
|
|
||||||
prune:
|
|
||||||
default: 30 1 * * 0
|
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
secret-key:
|
image:
|
||||||
default: s3-secret
|
default: quay.io/opstree/redis:v7.0.5
|
||||||
type: string
|
type: string
|
||||||
secret-name:
|
storage:
|
||||||
default: backup-settings
|
default: 2Gi
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
|
issuer:
|
||||||
|
default: letsencrypt-prod
|
||||||
|
examples:
|
||||||
|
- letsencrypt-prod
|
||||||
|
type: string
|
||||||
|
domain:
|
||||||
|
default: your-company
|
||||||
|
examples:
|
||||||
|
- your-company
|
||||||
|
type: string
|
||||||
apps:
|
apps:
|
||||||
default:
|
default:
|
||||||
audioplayer: false
|
audioplayer: false
|
||||||
@@ -227,69 +144,6 @@ options:
|
|||||||
default: true
|
default: true
|
||||||
type: boolean
|
type: boolean
|
||||||
type: object
|
type: object
|
||||||
redis:
|
|
||||||
default:
|
|
||||||
exporter:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
image: quay.io/opstree/redis:v7.0.5
|
|
||||||
storage: 2Gi
|
|
||||||
examples:
|
|
||||||
- exporter:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
image: quay.io/opstree/redis:v7.0.5
|
|
||||||
storage: 2Gi
|
|
||||||
properties:
|
|
||||||
exporter:
|
|
||||||
default:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
properties:
|
|
||||||
enabled:
|
|
||||||
default: true
|
|
||||||
type: boolean
|
|
||||||
image:
|
|
||||||
default: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
image:
|
|
||||||
default: quay.io/opstree/redis:v7.0.5
|
|
||||||
type: string
|
|
||||||
storage:
|
|
||||||
default: 2Gi
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
postgres:
|
|
||||||
default:
|
|
||||||
replicas: 1
|
|
||||||
storage: 5Gi
|
|
||||||
version: '14'
|
|
||||||
examples:
|
|
||||||
- replicas: 1
|
|
||||||
storage: 5Gi
|
|
||||||
version: '14'
|
|
||||||
properties:
|
|
||||||
replicas:
|
|
||||||
default: 1
|
|
||||||
type: integer
|
|
||||||
storage:
|
|
||||||
default: 5Gi
|
|
||||||
type: string
|
|
||||||
version:
|
|
||||||
default: '14'
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
domain-name:
|
|
||||||
default: your_company.com
|
|
||||||
examples:
|
|
||||||
- your_company.com
|
|
||||||
type: string
|
|
||||||
issuer:
|
|
||||||
default: letsencrypt-prod
|
|
||||||
examples:
|
|
||||||
- letsencrypt-prod
|
|
||||||
type: string
|
|
||||||
storage:
|
storage:
|
||||||
default:
|
default:
|
||||||
accessMode: ReadWriteOnce
|
accessMode: ReadWriteOnce
|
||||||
@@ -319,16 +173,26 @@ options:
|
|||||||
default: nextcloud_admin
|
default: nextcloud_admin
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
domain:
|
hpa:
|
||||||
default: your-company
|
default:
|
||||||
|
avg-cpu: 50
|
||||||
|
max-replicas: 5
|
||||||
|
min-replicas: 1
|
||||||
examples:
|
examples:
|
||||||
- your-company
|
- avg-cpu: 50
|
||||||
type: string
|
max-replicas: 5
|
||||||
openid-name:
|
min-replicas: 1
|
||||||
default: vynil
|
properties:
|
||||||
examples:
|
avg-cpu:
|
||||||
- vynil
|
default: 50
|
||||||
type: string
|
type: integer
|
||||||
|
max-replicas:
|
||||||
|
default: 5
|
||||||
|
type: integer
|
||||||
|
min-replicas:
|
||||||
|
default: 1
|
||||||
|
type: integer
|
||||||
|
type: object
|
||||||
images:
|
images:
|
||||||
default:
|
default:
|
||||||
collabora:
|
collabora:
|
||||||
@@ -492,6 +356,142 @@ options:
|
|||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
type: object
|
type: object
|
||||||
|
postgres:
|
||||||
|
default:
|
||||||
|
replicas: 1
|
||||||
|
storage: 5Gi
|
||||||
|
version: '14'
|
||||||
|
examples:
|
||||||
|
- replicas: 1
|
||||||
|
storage: 5Gi
|
||||||
|
version: '14'
|
||||||
|
properties:
|
||||||
|
replicas:
|
||||||
|
default: 1
|
||||||
|
type: integer
|
||||||
|
storage:
|
||||||
|
default: 5Gi
|
||||||
|
type: string
|
||||||
|
version:
|
||||||
|
default: '14'
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
ingress-class:
|
||||||
|
default: traefik
|
||||||
|
examples:
|
||||||
|
- traefik
|
||||||
|
type: string
|
||||||
|
openid-name:
|
||||||
|
default: vynil
|
||||||
|
examples:
|
||||||
|
- vynil
|
||||||
|
type: string
|
||||||
|
sub-domain:
|
||||||
|
default: files
|
||||||
|
examples:
|
||||||
|
- files
|
||||||
|
type: string
|
||||||
|
backups:
|
||||||
|
default:
|
||||||
|
enable: false
|
||||||
|
endpoint: ''
|
||||||
|
key-id-key: s3-id
|
||||||
|
restic-key: bck-password
|
||||||
|
retention:
|
||||||
|
db: 30d
|
||||||
|
keepDaily: 14
|
||||||
|
keepMonthly: 12
|
||||||
|
keepWeekly: 6
|
||||||
|
keepYearly: 12
|
||||||
|
schedule:
|
||||||
|
backup: 30 3 * * *
|
||||||
|
check: 30 5 * * 1
|
||||||
|
db: 30 3 * * *
|
||||||
|
prune: 30 1 * * 0
|
||||||
|
secret-key: s3-secret
|
||||||
|
secret-name: backup-settings
|
||||||
|
examples:
|
||||||
|
- enable: false
|
||||||
|
endpoint: ''
|
||||||
|
key-id-key: s3-id
|
||||||
|
restic-key: bck-password
|
||||||
|
retention:
|
||||||
|
db: 30d
|
||||||
|
keepDaily: 14
|
||||||
|
keepMonthly: 12
|
||||||
|
keepWeekly: 6
|
||||||
|
keepYearly: 12
|
||||||
|
schedule:
|
||||||
|
backup: 30 3 * * *
|
||||||
|
check: 30 5 * * 1
|
||||||
|
db: 30 3 * * *
|
||||||
|
prune: 30 1 * * 0
|
||||||
|
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
|
||||||
|
restic-key:
|
||||||
|
default: bck-password
|
||||||
|
type: string
|
||||||
|
retention:
|
||||||
|
default:
|
||||||
|
db: 30d
|
||||||
|
keepDaily: 14
|
||||||
|
keepMonthly: 12
|
||||||
|
keepWeekly: 6
|
||||||
|
keepYearly: 12
|
||||||
|
properties:
|
||||||
|
db:
|
||||||
|
default: 30d
|
||||||
|
type: string
|
||||||
|
keepDaily:
|
||||||
|
default: 14
|
||||||
|
type: integer
|
||||||
|
keepMonthly:
|
||||||
|
default: 12
|
||||||
|
type: integer
|
||||||
|
keepWeekly:
|
||||||
|
default: 6
|
||||||
|
type: integer
|
||||||
|
keepYearly:
|
||||||
|
default: 12
|
||||||
|
type: integer
|
||||||
|
type: object
|
||||||
|
schedule:
|
||||||
|
default:
|
||||||
|
backup: 30 3 * * *
|
||||||
|
check: 30 5 * * 1
|
||||||
|
db: 30 3 * * *
|
||||||
|
prune: 30 1 * * 0
|
||||||
|
properties:
|
||||||
|
backup:
|
||||||
|
default: 30 3 * * *
|
||||||
|
type: string
|
||||||
|
check:
|
||||||
|
default: 30 5 * * 1
|
||||||
|
type: string
|
||||||
|
db:
|
||||||
|
default: 30 3 * * *
|
||||||
|
type: string
|
||||||
|
prune:
|
||||||
|
default: 30 1 * * 0
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
secret-key:
|
||||||
|
default: s3-secret
|
||||||
|
type: string
|
||||||
|
secret-name:
|
||||||
|
default: backup-settings
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
dependencies:
|
dependencies:
|
||||||
- dist: null
|
- dist: null
|
||||||
category: share
|
category: share
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ locals {
|
|||||||
pg-labels = merge(local.common-labels, {
|
pg-labels = merge(local.common-labels, {
|
||||||
"app.kubernetes.io/component" = "pg"
|
"app.kubernetes.io/component" = "pg"
|
||||||
})
|
})
|
||||||
backup-def = var.backups.enable ? {
|
backup-def = {
|
||||||
barmanObjectStore = {
|
barmanObjectStore = {
|
||||||
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
||||||
endpointURL = "${var.backups.endpoint}/barman"
|
endpointURL = "${var.backups.endpoint}/barman"
|
||||||
@@ -17,7 +17,7 @@ locals {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} : {}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "kubectl_manifest" "prj_pg" {
|
resource "kubectl_manifest" "prj_pg" {
|
||||||
@@ -38,7 +38,7 @@ resource "kubectl_manifest" "prj_pg" {
|
|||||||
initdb:
|
initdb:
|
||||||
database: "${var.component}"
|
database: "${var.component}"
|
||||||
owner: "${var.component}"
|
owner: "${var.component}"
|
||||||
backup: ${jsonencode(local.backup-def)}
|
backup: ${jsonencode(var.backups.enable?local.backup-def:{})}
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -11,16 +11,164 @@ options:
|
|||||||
examples:
|
examples:
|
||||||
- info
|
- info
|
||||||
type: string
|
type: string
|
||||||
geoip:
|
admin:
|
||||||
default: /geoip/GeoLite2-City.mmdb
|
default:
|
||||||
|
email: auth-admin
|
||||||
examples:
|
examples:
|
||||||
- /geoip/GeoLite2-City.mmdb
|
- email: auth-admin
|
||||||
type: string
|
properties:
|
||||||
|
email:
|
||||||
|
default: auth-admin
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
email:
|
||||||
|
default:
|
||||||
|
port: 587
|
||||||
|
timeout: 30
|
||||||
|
use_ssl: false
|
||||||
|
use_tls: false
|
||||||
|
examples:
|
||||||
|
- port: 587
|
||||||
|
timeout: 30
|
||||||
|
use_ssl: false
|
||||||
|
use_tls: false
|
||||||
|
properties:
|
||||||
|
port:
|
||||||
|
default: 587
|
||||||
|
type: integer
|
||||||
|
timeout:
|
||||||
|
default: 30
|
||||||
|
type: integer
|
||||||
|
use_ssl:
|
||||||
|
default: false
|
||||||
|
type: boolean
|
||||||
|
use_tls:
|
||||||
|
default: false
|
||||||
|
type: boolean
|
||||||
|
type: object
|
||||||
|
redis:
|
||||||
|
default:
|
||||||
|
exporter:
|
||||||
|
enabled: true
|
||||||
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
image: quay.io/opstree/redis:v7.0.5
|
||||||
|
storage: 8Gi
|
||||||
|
examples:
|
||||||
|
- exporter:
|
||||||
|
enabled: true
|
||||||
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
image: quay.io/opstree/redis:v7.0.5
|
||||||
|
storage: 8Gi
|
||||||
|
properties:
|
||||||
|
exporter:
|
||||||
|
default:
|
||||||
|
enabled: true
|
||||||
|
image: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
properties:
|
||||||
|
enabled:
|
||||||
|
default: true
|
||||||
|
type: boolean
|
||||||
|
image:
|
||||||
|
default: quay.io/opstree/redis-exporter:v1.44.0
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
image:
|
||||||
|
default: quay.io/opstree/redis:v7.0.5
|
||||||
|
type: string
|
||||||
|
storage:
|
||||||
|
default: 8Gi
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
ingress-class:
|
ingress-class:
|
||||||
default: traefik
|
default: traefik
|
||||||
examples:
|
examples:
|
||||||
- traefik
|
- traefik
|
||||||
type: string
|
type: string
|
||||||
|
domain-name:
|
||||||
|
default: your_company.com
|
||||||
|
examples:
|
||||||
|
- your_company.com
|
||||||
|
type: string
|
||||||
|
image:
|
||||||
|
default:
|
||||||
|
project: goauthentik
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
registry: ghcr.io
|
||||||
|
repository: goauthentik/server
|
||||||
|
tag: 2023.5.4
|
||||||
|
examples:
|
||||||
|
- project: goauthentik
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
registry: ghcr.io
|
||||||
|
repository: goauthentik/server
|
||||||
|
tag: 2023.5.4
|
||||||
|
properties:
|
||||||
|
project:
|
||||||
|
default: goauthentik
|
||||||
|
type: string
|
||||||
|
pullPolicy:
|
||||||
|
default: IfNotPresent
|
||||||
|
type: string
|
||||||
|
registry:
|
||||||
|
default: ghcr.io
|
||||||
|
type: string
|
||||||
|
repository:
|
||||||
|
default: goauthentik/server
|
||||||
|
type: string
|
||||||
|
tag:
|
||||||
|
default: 2023.5.4
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
postgres:
|
||||||
|
default:
|
||||||
|
replicas: 1
|
||||||
|
storage: 8Gi
|
||||||
|
version: '14'
|
||||||
|
examples:
|
||||||
|
- replicas: 1
|
||||||
|
storage: 8Gi
|
||||||
|
version: '14'
|
||||||
|
properties:
|
||||||
|
replicas:
|
||||||
|
default: 1
|
||||||
|
type: integer
|
||||||
|
storage:
|
||||||
|
default: 8Gi
|
||||||
|
type: string
|
||||||
|
version:
|
||||||
|
default: '14'
|
||||||
|
type: string
|
||||||
|
type: object
|
||||||
|
sub-domain:
|
||||||
|
default: auth
|
||||||
|
examples:
|
||||||
|
- auth
|
||||||
|
type: string
|
||||||
|
issuer:
|
||||||
|
default: letsencrypt-prod
|
||||||
|
examples:
|
||||||
|
- letsencrypt-prod
|
||||||
|
type: string
|
||||||
|
error_reporting:
|
||||||
|
default:
|
||||||
|
enabled: false
|
||||||
|
environment: k8s
|
||||||
|
send_pii: false
|
||||||
|
examples:
|
||||||
|
- enabled: false
|
||||||
|
environment: k8s
|
||||||
|
send_pii: false
|
||||||
|
properties:
|
||||||
|
enabled:
|
||||||
|
default: false
|
||||||
|
type: boolean
|
||||||
|
environment:
|
||||||
|
default: k8s
|
||||||
|
type: string
|
||||||
|
send_pii:
|
||||||
|
default: false
|
||||||
|
type: boolean
|
||||||
|
type: object
|
||||||
backups:
|
backups:
|
||||||
default:
|
default:
|
||||||
enable: false
|
enable: false
|
||||||
@@ -75,164 +223,16 @@ options:
|
|||||||
default: backup-settings
|
default: backup-settings
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
error_reporting:
|
|
||||||
default:
|
|
||||||
enabled: false
|
|
||||||
environment: k8s
|
|
||||||
send_pii: false
|
|
||||||
examples:
|
|
||||||
- enabled: false
|
|
||||||
environment: k8s
|
|
||||||
send_pii: false
|
|
||||||
properties:
|
|
||||||
enabled:
|
|
||||||
default: false
|
|
||||||
type: boolean
|
|
||||||
environment:
|
|
||||||
default: k8s
|
|
||||||
type: string
|
|
||||||
send_pii:
|
|
||||||
default: false
|
|
||||||
type: boolean
|
|
||||||
type: object
|
|
||||||
postgres:
|
|
||||||
default:
|
|
||||||
replicas: 1
|
|
||||||
storage: 8Gi
|
|
||||||
version: '14'
|
|
||||||
examples:
|
|
||||||
- replicas: 1
|
|
||||||
storage: 8Gi
|
|
||||||
version: '14'
|
|
||||||
properties:
|
|
||||||
replicas:
|
|
||||||
default: 1
|
|
||||||
type: integer
|
|
||||||
storage:
|
|
||||||
default: 8Gi
|
|
||||||
type: string
|
|
||||||
version:
|
|
||||||
default: '14'
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
redis:
|
|
||||||
default:
|
|
||||||
exporter:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
image: quay.io/opstree/redis:v7.0.5
|
|
||||||
storage: 8Gi
|
|
||||||
examples:
|
|
||||||
- exporter:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
image: quay.io/opstree/redis:v7.0.5
|
|
||||||
storage: 8Gi
|
|
||||||
properties:
|
|
||||||
exporter:
|
|
||||||
default:
|
|
||||||
enabled: true
|
|
||||||
image: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
properties:
|
|
||||||
enabled:
|
|
||||||
default: true
|
|
||||||
type: boolean
|
|
||||||
image:
|
|
||||||
default: quay.io/opstree/redis-exporter:v1.44.0
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
image:
|
|
||||||
default: quay.io/opstree/redis:v7.0.5
|
|
||||||
type: string
|
|
||||||
storage:
|
|
||||||
default: 8Gi
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
image:
|
|
||||||
default:
|
|
||||||
project: goauthentik
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
registry: ghcr.io
|
|
||||||
repository: goauthentik/server
|
|
||||||
tag: 2023.5.4
|
|
||||||
examples:
|
|
||||||
- project: goauthentik
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
registry: ghcr.io
|
|
||||||
repository: goauthentik/server
|
|
||||||
tag: 2023.5.4
|
|
||||||
properties:
|
|
||||||
project:
|
|
||||||
default: goauthentik
|
|
||||||
type: string
|
|
||||||
pullPolicy:
|
|
||||||
default: IfNotPresent
|
|
||||||
type: string
|
|
||||||
registry:
|
|
||||||
default: ghcr.io
|
|
||||||
type: string
|
|
||||||
repository:
|
|
||||||
default: goauthentik/server
|
|
||||||
type: string
|
|
||||||
tag:
|
|
||||||
default: 2023.5.4
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
domain-name:
|
|
||||||
default: your_company.com
|
|
||||||
examples:
|
|
||||||
- your_company.com
|
|
||||||
type: string
|
|
||||||
sub-domain:
|
|
||||||
default: auth
|
|
||||||
examples:
|
|
||||||
- auth
|
|
||||||
type: string
|
|
||||||
admin:
|
|
||||||
default:
|
|
||||||
email: auth-admin
|
|
||||||
examples:
|
|
||||||
- email: auth-admin
|
|
||||||
properties:
|
|
||||||
email:
|
|
||||||
default: auth-admin
|
|
||||||
type: string
|
|
||||||
type: object
|
|
||||||
issuer:
|
|
||||||
default: letsencrypt-prod
|
|
||||||
examples:
|
|
||||||
- letsencrypt-prod
|
|
||||||
type: string
|
|
||||||
email:
|
|
||||||
default:
|
|
||||||
port: 587
|
|
||||||
timeout: 30
|
|
||||||
use_ssl: false
|
|
||||||
use_tls: false
|
|
||||||
examples:
|
|
||||||
- port: 587
|
|
||||||
timeout: 30
|
|
||||||
use_ssl: false
|
|
||||||
use_tls: false
|
|
||||||
properties:
|
|
||||||
port:
|
|
||||||
default: 587
|
|
||||||
type: integer
|
|
||||||
timeout:
|
|
||||||
default: 30
|
|
||||||
type: integer
|
|
||||||
use_ssl:
|
|
||||||
default: false
|
|
||||||
type: boolean
|
|
||||||
use_tls:
|
|
||||||
default: false
|
|
||||||
type: boolean
|
|
||||||
type: object
|
|
||||||
domain:
|
domain:
|
||||||
default: your-company
|
default: your-company
|
||||||
examples:
|
examples:
|
||||||
- your-company
|
- your-company
|
||||||
type: string
|
type: string
|
||||||
|
geoip:
|
||||||
|
default: /geoip/GeoLite2-City.mmdb
|
||||||
|
examples:
|
||||||
|
- /geoip/GeoLite2-City.mmdb
|
||||||
|
type: string
|
||||||
dependencies:
|
dependencies:
|
||||||
- dist: null
|
- dist: null
|
||||||
category: core
|
category: core
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ locals {
|
|||||||
pool-labels = merge(local.common-labels, {
|
pool-labels = merge(local.common-labels, {
|
||||||
"app.kubernetes.io/component" = "pg-pool"
|
"app.kubernetes.io/component" = "pg-pool"
|
||||||
})
|
})
|
||||||
backup-def = var.backups.enable ? {
|
backup-def = {
|
||||||
retentionPolicy = var.backups.retention.db
|
retentionPolicy = var.backups.retention.db
|
||||||
barmanObjectStore = {
|
barmanObjectStore = {
|
||||||
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
destinationPath = "s3://${var.instance}-${var.namespace}/"
|
||||||
@@ -21,7 +21,7 @@ locals {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} : {}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "kubectl_manifest" "prj_pg" {
|
resource "kubectl_manifest" "prj_pg" {
|
||||||
@@ -42,7 +42,7 @@ resource "kubectl_manifest" "prj_pg" {
|
|||||||
initdb:
|
initdb:
|
||||||
database: "${var.component}"
|
database: "${var.component}"
|
||||||
owner: "${var.component}"
|
owner: "${var.component}"
|
||||||
backup: ${jsonencode(local.backup-def)}
|
backup: ${jsonencode(var.backups.enable?local.backup-def:{})}
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user