commit 90a11d11b0fa0763e70852b77c978b33bdbc59e1
parent 292a55f2729203b63ad6eb57c72fbddb7f97dbe4
Author: MTRNord <mtrnord1@gmail.com>
Date: Tue, 7 Jan 2025 23:01:56 +0100
Add mariadb and prepare osticket
Diffstat:
8 files changed, 118 insertions(+), 1 deletion(-)
diff --git a/apps/2024_cluster/namespaces/kustomization.yaml b/apps/2024_cluster/namespaces/kustomization.yaml
@@ -24,3 +24,4 @@ resources:
- gerrit.yaml
- jenkins.yaml
- mariadb-operator.yaml
+ - osticket.yaml
diff --git a/apps/2024_cluster/namespaces/osticket.yaml b/apps/2024_cluster/namespaces/osticket.yaml
@@ -0,0 +1,4 @@
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: osticket
diff --git a/apps/2024_cluster/secrets/kustomization.yaml b/apps/2024_cluster/secrets/kustomization.yaml
@@ -16,3 +16,4 @@ resources:
- postgres-exporter.yaml
- pg-secrets.yaml
- gerrit.yaml
+ - mariadb-operator.yaml
diff --git a/apps/2024_cluster/secrets/mariadb-operator.yaml b/apps/2024_cluster/secrets/mariadb-operator.yaml
@@ -0,0 +1,27 @@
+apiVersion: v1
+stringData:
+ password: ENC[AES256_GCM,data:kY53tTCUmSbY9dNKyISq9TEkrULxqlSaiz7EhOmaSe2VTz9DP/XDDsen5shHZIq60tJfPVrZ4kSb6B4KNLtGnA==,iv:5hfT4V5heotzQzPqrQkwJ0z4Pk9TS5qfuAqLMdq/zhk=,tag:8yW3xOsKR7/dJvwnWMyajA==,type:str]
+kind: Secret
+metadata:
+ name: mariadb-osticket
+ namespace: mariadb-operator
+sops:
+ kms: []
+ gcp_kms: []
+ azure_kv: []
+ hc_vault: []
+ age:
+ - recipient: age1esjyg2qfy49awv0ptkzvpk425adczjr38m37w2mmcahzc4p8n54sll2nzh
+ enc: |
+ -----BEGIN AGE ENCRYPTED FILE-----
+ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQVHhZaGcyUFFUZHQwRTFG
+ Y0cwc3NWaUxOVXdLb3N1WEl1NWlHMzdJbDJJClJMSkYrKy9UMXZyMkRNTTNuU1JM
+ UDZjNUhqWGFiczIwLy94REdYVEp1UlEKLS0tIEVPZ0tmbzVueW1neTJ4bG9VYVhC
+ TERGKzhyZDJFS05EbW1taG4xckdrQUkKNamaTUZek5Rlx4WnNEG1leHJ4PViVA5m
+ NrtDpL214EyEd3GqdhvwbCTdVu9px8a5+6eQWvOZp/CHhRJHIKTRzQ==
+ -----END AGE ENCRYPTED FILE-----
+ lastmodified: "2025-01-07T22:01:16Z"
+ mac: ENC[AES256_GCM,data:KlLKz8hv/6VJD92YYehfh/kXt1+NLi26rnCd1K1Eh7mSyWveTviFyQ4OUE2VsLtcPlqWKT1eRyKCRNyA4iWdgCrMu5bDW+aAQCb2GHsdfRHmsj6NSS1BoTPLDxCClQ/LdUh2cvoZNxCO8pJfIrG+mm5KgrKcxaN6W+OG/TFQGGw=,iv:6vNynE/CHE22QJW+/E4bzxCA1p7xb/T91xZYOiSUGaE=,tag:qHx34Gk3I4PtjuH1OKJcvQ==,type:str]
+ pgp: []
+ encrypted_regex: ^(adminPassword|adminEmail|jenkinsAdminEmail|securityRealm|gerrit.config|routing_key|DATABASE_URL|SMTP_PASSWORD|SECRET_KEY_BASE|admin_password|extraCommands|key|clickhouseDatabaseURL|databaseURL|client_id|client_secret|secret_key_base|otp_secret|private_key|public_key|primaryKey|deterministicKey|keyDerivationSalt|token|clientId|secretKey|installationId|installationKey|uriOverride|adminToken.value|password.value|sql_password|erlangCookie|AUTHENTICATION_PASSWORD|ROOM_API_SECRET_KEY|adminPassword|configPassword|adminUser|configUser|MAIL_PASSWORD|APP_KEY|api_key|api_secret|keys|livekit_key|livekit_secret|secret_key|admin_pass|admin_email|mariadbPassword|mariadbRootPassword|privateKey|data|stringData|PASSWD|password|pass|postgresPassword|postgresqlPassword|redminePassword|smtpPassword|registration_shared_secret|shared_secret|secret|admin_token|integrationKey|rootPassword)$
+ version: 3.9.1
diff --git a/apps/base/osticket/kustomization.yaml b/apps/base/osticket/kustomization.yaml
@@ -0,0 +1,6 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+namespace: osticket
+resources:
+ - repository.yaml
+ - release.yaml
diff --git a/apps/base/osticket/release.yaml b/apps/base/osticket/release.yaml
@@ -0,0 +1,68 @@
+apiVersion: helm.toolkit.fluxcd.io/v2beta2
+kind: HelmRelease
+metadata:
+ name: osticket
+ namespace: osticket
+spec:
+ releaseName: osticket
+ interval: 60m
+ chart:
+ spec:
+ chart: ./charts/osticket
+ sourceRef:
+ kind: GitRepository
+ name: osticket
+ namespace: osticket
+ values:
+ ostName: Midnightthoughts osTicket
+ ostEmail: support@midnightthoughts.space
+ adminFirstName: MTR
+ adminLastName: Nord
+ adminEmail: ENC[AES256_GCM,data:PsSwlZwtddGd4YpVJAJr6TM/290RKrOr,iv:CcaEhVlArN9kGoMoczHFXIQ6te2jDR5AXAVSwh47ZAQ=,tag:WeXK4SKSvAG0JNBTGJUwEw==,type:str]
+ adminUserName: mtrnord
+ adminPassword: ENC[AES256_GCM,data:HoT4JJ3Dn11r,iv:PL8wJZCYMXAcDeqlNHmxCsVDIHtmYty+9SaDUTN+DK8=,tag:x0TtK9EkxGa/8HeTqkCafQ==,type:str]
+ timezone: Europe/Berlin
+ service:
+ type: ClusterIP
+ port: 80
+ ingress:
+ enabled: true
+ annotations:
+ external-dns.alpha.kubernetes.io/hostname: midnightthoughts.space
+ cert-manager.io/cluster-issuer: letsencrypt-dns
+ hosts:
+ - host: osticket.midnightthoughts.space
+ paths:
+ - path: /
+ pathType: ImplementationSpecific
+ tls:
+ - secretName: osticket.midnightthoughts.space-tls
+ hosts:
+ - osticket.midnightthoughts.space
+ mysql:
+ enabled: false
+ externalAddress: mariadb-maxscale.mariadb-operator.svc.cluster.local
+ auth:
+ database: osticket
+ username: osticket
+ password: ENC[AES256_GCM,data:P9nr60VD2bDh/5FzPQPf1/70bd/yJjeI8tZZdAiUp6UHCjfTVhx02DD6JjIqtFrvZLqAx30DjTRsDXBxvY5KyQ==,iv:dBj43ab4A3fW3m7h4MY8xSLAuKAOTBouFgAJp5rH25g=,tag:vDtyLMMGqHAUu7c3e0RthQ==,type:str]
+sops:
+ kms: []
+ gcp_kms: []
+ azure_kv: []
+ hc_vault: []
+ age:
+ - recipient: age1esjyg2qfy49awv0ptkzvpk425adczjr38m37w2mmcahzc4p8n54sll2nzh
+ enc: |
+ -----BEGIN AGE ENCRYPTED FILE-----
+ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBNM09ZdjlNYUdpQXlUUDlS
+ WjF4SjVzNFdQTG5iMGcxUGtHdmV6ZmU5eFVjClQ1b1NlSkZlQ0ZjblFXaGdXaFhJ
+ ZWNidk5Wa1paOFYvdmZxdmpNYVYvMWcKLS0tIG9yU2VlTU1wbW44S1g1Y3l1YUF0
+ eGFLZkd5OG8rUWlxdjZhUU5TOXdhMmMKsA9WAluYt3SOsVAi8hqpDPsIfcdRBd6v
+ XjcHiPG0l6gGhMHsIXrbuE02J9NPe9QFte5C//FNetFBZAmKWGHiVw==
+ -----END AGE ENCRYPTED FILE-----
+ lastmodified: "2025-01-07T22:01:35Z"
+ mac: ENC[AES256_GCM,data:0+irWwOBQgbP+dci/TdPzZHZh86fg0AEKAM9ewFlwntbOtuzKXJkpb9hGeHcjTxNgoWLaKwpx0KZtw11DE/oTyLeLL2n20lVtbD4BcZGirkVUZ0NeHlUg+826evzkKmMI5ONv4JBdOWiAvF237//Gnu6/tFML50HBoaPUFHTdOQ=,iv:JkqgGBRT8C4TOl4oYRVcgVsJZ42AGVQOcJmqN0oU5P8=,tag:Vz8G9l4wccrAJ1Yz9EKmFg==,type:str]
+ pgp: []
+ encrypted_regex: ^(adminPassword|adminEmail|jenkinsAdminEmail|securityRealm|gerrit.config|routing_key|DATABASE_URL|SMTP_PASSWORD|SECRET_KEY_BASE|admin_password|extraCommands|key|clickhouseDatabaseURL|databaseURL|client_id|client_secret|secret_key_base|otp_secret|private_key|public_key|primaryKey|deterministicKey|keyDerivationSalt|token|clientId|secretKey|installationId|installationKey|uriOverride|adminToken.value|password.value|sql_password|erlangCookie|AUTHENTICATION_PASSWORD|ROOM_API_SECRET_KEY|adminPassword|configPassword|adminUser|configUser|MAIL_PASSWORD|APP_KEY|api_key|api_secret|keys|livekit_key|livekit_secret|secret_key|admin_pass|admin_email|mariadbPassword|mariadbRootPassword|privateKey|data|stringData|PASSWD|password|pass|postgresPassword|postgresqlPassword|redminePassword|smtpPassword|registration_shared_secret|shared_secret|secret|admin_token|integrationKey|rootPassword)$
+ version: 3.9.1
diff --git a/apps/base/osticket/repository.yaml b/apps/base/osticket/repository.yaml
@@ -0,0 +1,10 @@
+apiVersion: source.toolkit.fluxcd.io/v1beta2
+kind: GitRepository
+metadata:
+ name: osticket
+ namespace: osticket
+spec:
+ interval: 8h
+ url: https://github.com/MTRNord/osTicket-helm.git
+ ref:
+ branch: main
diff --git a/encrypt.sh b/encrypt.sh
@@ -2,5 +2,5 @@
sops --age=age1esjyg2qfy49awv0ptkzvpk425adczjr38m37w2mmcahzc4p8n54sll2nzh \
--encrypt \
- --encrypted-regex '^(jenkinsAdminEmail|securityRealm|gerrit.config|routing_key|DATABASE_URL|SMTP_PASSWORD|SECRET_KEY_BASE|admin_password|extraCommands|key|clickhouseDatabaseURL|databaseURL|client_id|client_secret|secret_key_base|otp_secret|private_key|public_key|primaryKey|deterministicKey|keyDerivationSalt|token|clientId|secretKey|installationId|installationKey|uriOverride|adminToken.value|password.value|sql_password|erlangCookie|AUTHENTICATION_PASSWORD|ROOM_API_SECRET_KEY|adminPassword|configPassword|adminUser|configUser|MAIL_PASSWORD|APP_KEY|api_key|api_secret|keys|livekit_key|livekit_secret|secret_key|admin_pass|admin_email|mariadbPassword|mariadbRootPassword|privateKey|data|stringData|PASSWD|password|pass|postgresPassword|postgresqlPassword|redminePassword|smtpPassword|registration_shared_secret|shared_secret|secret|admin_token|integrationKey|rootPassword)$' \
+ --encrypted-regex '^(adminPassword|adminEmail|jenkinsAdminEmail|securityRealm|gerrit.config|routing_key|DATABASE_URL|SMTP_PASSWORD|SECRET_KEY_BASE|admin_password|extraCommands|key|clickhouseDatabaseURL|databaseURL|client_id|client_secret|secret_key_base|otp_secret|private_key|public_key|primaryKey|deterministicKey|keyDerivationSalt|token|clientId|secretKey|installationId|installationKey|uriOverride|adminToken.value|password.value|sql_password|erlangCookie|AUTHENTICATION_PASSWORD|ROOM_API_SECRET_KEY|adminPassword|configPassword|adminUser|configUser|MAIL_PASSWORD|APP_KEY|api_key|api_secret|keys|livekit_key|livekit_secret|secret_key|admin_pass|admin_email|mariadbPassword|mariadbRootPassword|privateKey|data|stringData|PASSWD|password|pass|postgresPassword|postgresqlPassword|redminePassword|smtpPassword|registration_shared_secret|shared_secret|secret|admin_token|integrationKey|rootPassword)$' \
--in-place "$1"