fix
This commit is contained in:
@@ -7,11 +7,41 @@ locals {
|
|||||||
forward-outpost-providers = jsondecode(data.http.get_forward_outpost.response_body).results[0].providers
|
forward-outpost-providers = jsondecode(data.http.get_forward_outpost.response_body).results[0].providers
|
||||||
forward-outpost-pk = jsondecode(data.http.get_forward_outpost.response_body).results[0].pk
|
forward-outpost-pk = jsondecode(data.http.get_forward_outpost.response_body).results[0].pk
|
||||||
app-name = var.component == var.instance ? var.instance : format("%s-%s", var.component, var.instance)
|
app-name = var.component == var.instance ? var.instance : format("%s-%s", var.component, var.instance)
|
||||||
app-icon = "dashboard/statics/icons/favicon-96x96.png"
|
app-icon = "_static/src/browser/media/favicon-dark-support.svg"
|
||||||
main-group = format("%s-users", local.app-name)
|
main-group = format("%s-users", local.app-name)
|
||||||
sub-groups = []
|
sub-groups = []
|
||||||
external-url = format("https://%s", local.dns-names[0])
|
external-url = format("https://%s", local.dns-names[0])
|
||||||
access-token-validity = "hours=10" // ;minutes=10
|
access-token-validity = "hours=10" // ;minutes=10
|
||||||
|
rules-icons = [ for v in local.dns-names : {
|
||||||
|
"host" = "${v}"
|
||||||
|
"http" = {
|
||||||
|
"paths" = [{
|
||||||
|
"backend" = {
|
||||||
|
"service" = local.service
|
||||||
|
}
|
||||||
|
"path" = "/${local.app-icon}"
|
||||||
|
"pathType" = "Prefix"
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "kubectl_manifest" "prj_ingress_icon" {
|
||||||
|
force_conflicts = true
|
||||||
|
yaml_body = <<-EOF
|
||||||
|
apiVersion: "networking.k8s.io/v1"
|
||||||
|
kind: "Ingress"
|
||||||
|
metadata:
|
||||||
|
name: "${var.instance}-icons"
|
||||||
|
namespace: "${var.namespace}"
|
||||||
|
labels: ${jsonencode(local.common-labels)}
|
||||||
|
spec:
|
||||||
|
ingressClassName: "${var.ingress-class}"
|
||||||
|
rules: ${jsonencode(local.rules-icons)}
|
||||||
|
tls:
|
||||||
|
- hosts: ${jsonencode(local.dns-names)}
|
||||||
|
secretName: "${var.instance}-cert"
|
||||||
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
data "authentik_flow" "default-authorization-flow" {
|
data "authentik_flow" "default-authorization-flow" {
|
||||||
|
|||||||
@@ -6,6 +6,26 @@ metadata:
|
|||||||
name: code-server
|
name: code-server
|
||||||
description: null
|
description: null
|
||||||
options:
|
options:
|
||||||
|
issuer:
|
||||||
|
default: letsencrypt-prod
|
||||||
|
examples:
|
||||||
|
- letsencrypt-prod
|
||||||
|
type: string
|
||||||
|
ingress-class:
|
||||||
|
default: traefik
|
||||||
|
examples:
|
||||||
|
- traefik
|
||||||
|
type: string
|
||||||
|
domain:
|
||||||
|
default: your-company
|
||||||
|
examples:
|
||||||
|
- your-company
|
||||||
|
type: string
|
||||||
|
domain-name:
|
||||||
|
default: your_company.com
|
||||||
|
examples:
|
||||||
|
- your_company.com
|
||||||
|
type: string
|
||||||
images:
|
images:
|
||||||
default:
|
default:
|
||||||
codeserver:
|
codeserver:
|
||||||
@@ -45,11 +65,6 @@ options:
|
|||||||
type: number
|
type: number
|
||||||
type: object
|
type: object
|
||||||
type: object
|
type: object
|
||||||
issuer:
|
|
||||||
default: letsencrypt-prod
|
|
||||||
examples:
|
|
||||||
- letsencrypt-prod
|
|
||||||
type: string
|
|
||||||
timezone:
|
timezone:
|
||||||
default: Europe/Paris
|
default: Europe/Paris
|
||||||
examples:
|
examples:
|
||||||
@@ -70,16 +85,6 @@ options:
|
|||||||
default: false
|
default: false
|
||||||
type: boolean
|
type: boolean
|
||||||
type: object
|
type: object
|
||||||
domain:
|
|
||||||
default: your-company
|
|
||||||
examples:
|
|
||||||
- your-company
|
|
||||||
type: string
|
|
||||||
ingress-class:
|
|
||||||
default: traefik
|
|
||||||
examples:
|
|
||||||
- traefik
|
|
||||||
type: string
|
|
||||||
storage:
|
storage:
|
||||||
default:
|
default:
|
||||||
accessMode: ReadWriteOnce
|
accessMode: ReadWriteOnce
|
||||||
@@ -107,21 +112,16 @@ options:
|
|||||||
- block
|
- block
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
sub-domain:
|
|
||||||
default: code
|
|
||||||
examples:
|
|
||||||
- code
|
|
||||||
type: string
|
|
||||||
domain-name:
|
|
||||||
default: your_company.com
|
|
||||||
examples:
|
|
||||||
- your_company.com
|
|
||||||
type: string
|
|
||||||
no-editor:
|
no-editor:
|
||||||
default: false
|
default: false
|
||||||
examples:
|
examples:
|
||||||
- false
|
- false
|
||||||
type: boolean
|
type: boolean
|
||||||
|
sub-domain:
|
||||||
|
default: code
|
||||||
|
examples:
|
||||||
|
- code
|
||||||
|
type: string
|
||||||
dependencies:
|
dependencies:
|
||||||
- dist: null
|
- dist: null
|
||||||
category: share
|
category: share
|
||||||
|
|||||||
@@ -11,8 +11,37 @@ locals {
|
|||||||
main-group = format("%s-users", local.app-name)
|
main-group = format("%s-users", local.app-name)
|
||||||
sub-groups = []
|
sub-groups = []
|
||||||
access-token-validity = "minutes=10"
|
access-token-validity = "minutes=10"
|
||||||
|
rules-icons = [ for v in local.dns-names : {
|
||||||
|
"host" = "${v}"
|
||||||
|
"http" = {
|
||||||
|
"paths" = [{
|
||||||
|
"backend" = {
|
||||||
|
"service" = local.service
|
||||||
|
}
|
||||||
|
"path" = "/${local.app-icon}"
|
||||||
|
"pathType" = "Prefix"
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
}]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resource "kubectl_manifest" "prj_ingress_icon" {
|
||||||
|
force_conflicts = true
|
||||||
|
yaml_body = <<-EOF
|
||||||
|
apiVersion: "networking.k8s.io/v1"
|
||||||
|
kind: "Ingress"
|
||||||
|
metadata:
|
||||||
|
name: "${var.instance}-icons"
|
||||||
|
namespace: "${var.namespace}"
|
||||||
|
labels: ${jsonencode(local.common-labels)}
|
||||||
|
spec:
|
||||||
|
ingressClassName: "${var.ingress-class}"
|
||||||
|
rules: ${jsonencode(local.rules-icons)}
|
||||||
|
tls:
|
||||||
|
- hosts: ${jsonencode(local.dns-names)}
|
||||||
|
secretName: "${var.instance}-cert"
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
data "authentik_flow" "default-authorization-flow" {
|
data "authentik_flow" "default-authorization-flow" {
|
||||||
depends_on = [authentik_group.prj_users]
|
depends_on = [authentik_group.prj_users]
|
||||||
|
|||||||
@@ -6,12 +6,12 @@ metadata:
|
|||||||
name: traefik-ui
|
name: traefik-ui
|
||||||
description: Access to the Traefik UI
|
description: Access to the Traefik UI
|
||||||
options:
|
options:
|
||||||
sub-domain:
|
issuer:
|
||||||
default: traefik
|
default: letsencrypt-prod
|
||||||
examples:
|
examples:
|
||||||
- traefik
|
- letsencrypt-prod
|
||||||
type: string
|
type: string
|
||||||
ingress-class:
|
sub-domain:
|
||||||
default: traefik
|
default: traefik
|
||||||
examples:
|
examples:
|
||||||
- traefik
|
- traefik
|
||||||
@@ -21,16 +21,16 @@ options:
|
|||||||
examples:
|
examples:
|
||||||
- your_company.com
|
- your_company.com
|
||||||
type: string
|
type: string
|
||||||
|
ingress-class:
|
||||||
|
default: traefik
|
||||||
|
examples:
|
||||||
|
- traefik
|
||||||
|
type: string
|
||||||
domain:
|
domain:
|
||||||
default: your-company
|
default: your-company
|
||||||
examples:
|
examples:
|
||||||
- your-company
|
- your-company
|
||||||
type: string
|
type: string
|
||||||
issuer:
|
|
||||||
default: letsencrypt-prod
|
|
||||||
examples:
|
|
||||||
- letsencrypt-prod
|
|
||||||
type: string
|
|
||||||
dependencies:
|
dependencies:
|
||||||
- dist: null
|
- dist: null
|
||||||
category: share
|
category: share
|
||||||
@@ -42,3 +42,4 @@ providers:
|
|||||||
postgresql: null
|
postgresql: null
|
||||||
restapi: true
|
restapi: true
|
||||||
http: true
|
http: true
|
||||||
|
tfaddtype: null
|
||||||
|
|||||||
Reference in New Issue
Block a user