This commit is contained in:
2023-10-23 17:52:24 +02:00
parent 9a7091fab6
commit a241bb588b
2 changed files with 58 additions and 38 deletions

View File

@@ -2,6 +2,7 @@ locals {
directus-labels = merge(local.common-labels, { directus-labels = merge(local.common-labels, {
"app.kubernetes.io/component" = "directus" "app.kubernetes.io/component" = "directus"
}) })
directus-icon = "apps/theming/favicon"
directus-dns-name = "directus.${local.dns-name}" directus-dns-name = "directus.${local.dns-name}"
directus-service = { directus-service = {
"name" = "directus-${var.instance}" "name" = "directus-${var.instance}"
@@ -46,7 +47,7 @@ resource "kubectl_manifest" "directus_config" {
TELEMETRY: "false" TELEMETRY: "false"
AUTH_PROVIDERS: "vynil" AUTH_PROVIDERS: "vynil"
AUTH_VYNIL_DRIVER: "oauth2" AUTH_VYNIL_DRIVER: "oauth2"
AUTH_VYNIL_ISSUER_URL: "https://${data.kubernetes_ingress_v1.authentik.spec[0].rule[0].host}/application/o/directus-${var.instance}/.well-known/openid-configuration" AUTH_VYNIL_ISSUER_URL: "https://${data.kubernetes_ingress_v1.authentik.spec[0].rule[0].host}/application/o/${replace(var.sub-domain, ".", "-")}-${var.instance}/.well-known/openid-configuration"
AUTH_VYNIL_IDENTIFIER_KEY: "nickname" AUTH_VYNIL_IDENTIFIER_KEY: "nickname"
PUBLIC_URL: "https://${local.directus-dns-name}" PUBLIC_URL: "https://${local.directus-dns-name}"
EOF EOF
@@ -215,10 +216,24 @@ module "directus-ingress" {
} }
} }
module "directus-application" {
count = var.extentions.directus.enable ? 1 : 0
source = "/dist/modules/application"
component = replace(var.sub-domain, ".", "-")
instance = var.instance
app-group = var.app-group
dns-name = local.directus-dns-name
icon = local.directus-icon
protocol_provider = module.directus-oauth2.provider-id
providers = {
authentik = authentik
}
}
module "directus-oauth2" { module "directus-oauth2" {
count = var.extentions.directus.enable ? 1 : 0 count = var.extentions.directus.enable ? 1 : 0
source = "/dist/modules/oauth2" source = "/dist/modules/oauth2"
component = "directus" component = replace(var.sub-domain, ".", "-")
instance = var.instance instance = var.instance
namespace = var.namespace namespace = var.namespace
labels = local.directus-labels labels = local.directus-labels

View File

@@ -6,21 +6,54 @@ metadata:
name: dataset-pg name: dataset-pg
description: null description: null
options: options:
sub-domain:
default: dataset-pg
examples:
- dataset-pg
type: string
storage: storage:
default: 8Gi default: 8Gi
examples: examples:
- 8Gi - 8Gi
type: string type: string
domain:
default: your-company
examples:
- your-company
type: string
domain-name:
default: your_company.com
examples:
- your_company.com
type: string
databases:
default: []
items:
properties:
name:
default: db
type: string
type: object
type: array
roles:
default: []
items:
properties:
name:
default: alt-account
type: string
type: object
type: array
replicas:
default: 1
examples:
- 1
type: integer
issuer: issuer:
default: letsencrypt-prod default: letsencrypt-prod
examples: examples:
- letsencrypt-prod - letsencrypt-prod
type: string type: string
sub-domain:
default: dataset-pg
examples:
- dataset-pg
type: string
extentions: extentions:
default: default:
directus: directus:
@@ -202,29 +235,10 @@ options:
type: object type: object
type: object type: object
type: object type: object
replicas: app-group:
default: 1 default: api
examples: examples:
- 1 - api
type: integer
databases:
default: []
items:
properties:
name:
default: db
type: string
type: object
type: array
domain-name:
default: your_company.com
examples:
- your_company.com
type: string
domain:
default: your-company
examples:
- your-company
type: string type: string
backups: backups:
default: default:
@@ -280,15 +294,6 @@ options:
default: backup-settings default: backup-settings
type: string type: string
type: object type: object
roles:
default: []
items:
properties:
name:
default: alt-account
type: string
type: object
type: array
ingress-class: ingress-class:
default: traefik default: traefik
examples: examples: