This commit is contained in:
2024-02-04 11:24:31 +01:00
parent cf29a7252d
commit 61514824a1
63 changed files with 630 additions and 609 deletions

View File

@@ -58,7 +58,7 @@ resource "kubectl_manifest" "deploy" {
name: "${var.component}-${var.instance}"
env: ${jsonencode(local.deploy-envs)}
image: "${var.images.dbgate.registry}/${var.images.dbgate.repository}:${var.images.dbgate.tag}"
imagePullPolicy: "${var.images.dbgate.pullPolicy}"
imagePullPolicy: "${var.images.dbgate.pull_policy}"
ports:
- containerPort: 3000
name: http

View File

@@ -6,6 +6,156 @@ metadata:
name: dbgate
description: null
options:
app_group:
default: dev
examples:
- dev
type: string
ingress_class:
default: traefik
examples:
- traefik
type: string
images:
default:
dbgate:
pull_policy: IfNotPresent
registry: docker.io
repository: dbgate/dbgate
tag: 5.2.7-alpine
examples:
- dbgate:
pull_policy: IfNotPresent
registry: docker.io
repository: dbgate/dbgate
tag: 5.2.7-alpine
properties:
dbgate:
default:
pull_policy: IfNotPresent
registry: docker.io
repository: dbgate/dbgate
tag: 5.2.7-alpine
properties:
pull_policy:
default: IfNotPresent
enum:
- Always
- Never
- IfNotPresent
type: string
registry:
default: docker.io
type: string
repository:
default: dbgate/dbgate
type: string
tag:
default: 5.2.7-alpine
type: string
type: object
type: object
domain:
default: your-company
examples:
- your-company
type: string
pg:
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
storage:
default:
volume:
accessMode: ReadWriteOnce
class: ''
size: 1Gi
type: Filesystem
description: Configure this app storage
examples:
- volume:
accessMode: ReadWriteOnce
class: ''
size: 1Gi
type: Filesystem
properties:
volume:
default:
accessMode: ReadWriteOnce
class: ''
size: 1Gi
type: Filesystem
properties:
accessMode:
default: ReadWriteOnce
enum:
- ReadWriteOnce
- ReadOnlyMany
- ReadWriteMany
type: string
class:
default: ''
type: string
size:
default: 1Gi
type: string
type:
default: Filesystem
enum:
- Filesystem
- Block
type: string
type: object
type: object
issuer:
default: letsencrypt-prod
examples:
- letsencrypt-prod
type: string
sub_domain:
default: dbgate
examples:
- dbgate
type: string
redis:
default: []
examples:
- []
items:
properties:
name:
default: ''
type: string
namespace:
default: ''
type: string
type: object
type: array
maria:
default: []
examples:
@@ -64,156 +214,6 @@ options:
type: string
type: object
type: array
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
redis:
default: []
examples:
- []
items:
properties:
name:
default: ''
type: string
namespace:
default: ''
type: string
type: object
type: array
pg:
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
sub_domain:
default: dbgate
examples:
- dbgate
type: string
images:
default:
dbgate:
pullPolicy: IfNotPresent
registry: docker.io
repository: dbgate/dbgate
tag: 5.2.7-alpine
examples:
- dbgate:
pullPolicy: IfNotPresent
registry: docker.io
repository: dbgate/dbgate
tag: 5.2.7-alpine
properties:
dbgate:
default:
pullPolicy: IfNotPresent
registry: docker.io
repository: dbgate/dbgate
tag: 5.2.7-alpine
properties:
pullPolicy:
default: IfNotPresent
enum:
- Always
- Never
- IfNotPresent
type: string
registry:
default: docker.io
type: string
repository:
default: dbgate/dbgate
type: string
tag:
default: 5.2.7-alpine
type: string
type: object
type: object
storage:
default:
volume:
accessMode: ReadWriteOnce
class: ''
size: 1Gi
type: Filesystem
description: Configure this app storage
examples:
- volume:
accessMode: ReadWriteOnce
class: ''
size: 1Gi
type: Filesystem
properties:
volume:
default:
accessMode: ReadWriteOnce
class: ''
size: 1Gi
type: Filesystem
properties:
accessMode:
default: ReadWriteOnce
enum:
- ReadWriteOnce
- ReadOnlyMany
- ReadWriteMany
type: string
class:
default: ''
type: string
size:
default: 1Gi
type: string
type:
default: Filesystem
enum:
- Filesystem
- Block
type: string
type: object
type: object
app_group:
default: dev
examples:
- dev
type: string
domain_name:
default: your_company.com
examples:
@@ -228,7 +228,8 @@ providers:
authentik: true
kubectl: true
postgresql: null
restapi: true
http: true
mysql: null
restapi: null
http: null
gitea: null
tfaddtype: null

View File

@@ -7,12 +7,6 @@ locals {
"Content-Type" = "application/json"
Authorization = "Bearer ${data.kubernetes_secret_v1.authentik.data["AUTHENTIK_BOOTSTRAP_TOKEN"]}"
}
service = {
"name" = "${var.component}-${var.instance}"
"port" = {
"number" = 80
}
}
}
module "service" {
@@ -22,7 +16,6 @@ module "service" {
namespace = var.namespace
labels = local.common-labels
targets = ["http"]
ports = [local.service.port.number]
providers = {
kubectl = kubectl
}
@@ -38,7 +31,7 @@ module "ingress" {
labels = local.common-labels
dns_names = local.dns_names
middlewares = []
services = [local.service]
services = [module.service.default_definition]
providers = {
kubectl = kubectl
}
@@ -72,13 +65,3 @@ module "oauth2" {
authentik = authentik
}
}
provider "restapi" {
uri = "http://authentik.${var.domain}-auth.svc/api/v3/"
headers = local.request_headers
create_method = "PATCH"
update_method = "PATCH"
destroy_method = "PATCH"
write_returns_object = true
id_attribute = "name"
}