diff --git a/todo/backend/database-secrets.yaml b/todo/backend/database-secrets.yaml new file mode 100644 index 0000000..aec036a --- /dev/null +++ b/todo/backend/database-secrets.yaml @@ -0,0 +1,17 @@ +--- +apiVersion: bitnami.com/v1alpha1 +kind: SealedSecret +metadata: + creationTimestamp: null + name: database-secrets + namespace: todo +spec: + encryptedData: + ADMIN_PASSWORD: AgBPpWA8X0L8pWBXSDW3TzPgcZCyUjGbRbAbgCHUvPhqLUR0dxorVfGQBWu/xCnhGOBR4HxjSQTY+qQVy6XP2Mzm3S+RXwX4vqys0d0f154VOSeagJwCzNhVdIXjcIWQZ+pov4rBYQnYCP+0/Tv7ZF2AWeSc8CbNYp+wcBP0tw8Huo9NBf9jxGDyukTepCPLMs8l0NEImKe8rMoOMRaGEkx4KZWK3/8E4Md8dA6+QST0+M/LFXYScp4r0ooq/8inuSW6sDLXO8Eg5MU7hozEGQBg550j0z8wNtz2G8dKSo4We1ObsscbFkVx0Yeg+bQeh34IJSJn30JQEbTYpoqsPaJ1ZZcpMM+3gP2ES+x9rHbV/3zTztOZxcuO2x8exY2tSFXgTWGIfL/n5MoTD02FfnPSRbzgxo+Xx6B4BOwtdDDapDw0yHGlw3aIPrP75d8PxUcGZMhrUFim1whucw4R2YTveKRg8+uv4weCis8Kut4N7J4YjUkLE+OUcFP7DIFLCH5g1lE/o5tqF8FJ/zeCgoMGnhR3BsS6LIlx+8rhdf146h1726mjMqf9jORx6GAoUBUhLvlCWmO5SW2ksXjA5gc/zNhE6Yxn58jHGqjJU/MAEeSaKHqp3YVxWeO4EiUVZYa7REbsG/00uG3XzTdQUNcNcp//UjXOTgFmXgauYtGUdEAHzS4bdsTdLDAvELklo6evWFZpYiCKd2S+25dZ/as6yL8zhgK18RETBSFC0fo= + REPLICATION_PASSWORD: AgBlJpe+ie26A/jWaDTD1vy1n7nx1vrXu9x4ULEhJ5OIpoJSJFYZTBqK7OyVWsUkc0gWiQMKxZdCuck3k857BWP7fIPBX15Kmvpp1gRRbNx3Wlv4IgsFp0tUEMH7YEezLML6uO18n5jilLLVx7z9EbjTrv8xYf5ufptRZrKzm6WtJXaQoj+3Y2unNIdPhUhHq7ltkPepm4EIRNiESpK+SijkdENH5o9Ci16xjoeZhbThMM8j4GqPhiRuxsy9rCBunQxvyRhPR7bZwe5N/CsKzhljbbmybZjRMVYZSeU/6uDsEm9HHA6Et7AUtcg51Z2LwtsmWq9jDnkAWFEfIFnjqrlTz2ET5TTseYAIfmCbEMYQqVSzRM56TyWmUAtPD/kjVQRtXVgryiIwu55+4nvvmzjq6brsoeBAAX+4TKmDqk+o92xT0saPFbdFSRP41MhFyxYYaUtv/1woo84491x+mHk1GeaiqytCXQjq8D2Yd/LiSzDBumA1aXEJ5esKna2FKbqclr693SS+SRwWDtH8twKHpEwW9aURhITT2qcQMN/67kJtpYTkhgWEik+w/PCIxpTRBQD9slBDsYQ0ZVXfM3sC8dxHhfdPnvBcMgztyfemAOehTxdsb/fyduPA6VIJjq8CjS8E6mzTahmz2UryximFUFtSzDOkeD8suOyhRqbCcjSE7ygk2ih9hjDHNrmbFUcQ3uLfCKXrT4n8HVrljcP5Ptw1uH/gu370Dq3siaM= + USER_PASSWORD: AgBfB5PAe8EkFObVo/or5MS3fOecSURgociP9FOSeT+OxqrrpSURudeo1LUHP0tzUqnEHiu67eoOvjXtyL3X5sxrpzMkPHORiOxEGOEc4EdwvvGSm/mIS10b25lKR54kh9u6QG7g033DJTbWdmegMtC59ZERiTp+nZoy1JTh2Qyprgfj9Ip+F73hgu+cZpQQwQnxUVbrfJ3McOp+eO76K0m9ecJqul9RsAKbY14N+9qCdE+ObmRfSRx2Eck0F9/6mNaqAl/lZ61YVJbyPWGcu5sZy+ZM/rBPdpJYJF24La1X4j5ru+wPvuETsOhFqKbKbpPBuXdBaLYwYYI+6GWH1BMk9bUxlCEhdF8fBQULJqMCpJMW2nKfdDf+PqKR/MR4rH2GcZiYOc9AXT6POjU7YstuFW5CUL6lX/wcQtkPvqRAxI31m8bISESQ/mUnEZZ+8wZ54C2qmw0wmPpMQbkvGm0g77Bwl3vUsbMgCTu82b3ShSde/zQMEfId21G54uPcJCyqlhiYI3wxhFN//W0elCRzACt36t90VH1/f268oo+m72j+mmIfPoV/2EXYLJaQCdjj/QTxYz1Q7TCTpYoscTxpHQFEwMVtf6sRTrKdy8PgUcSSOilklINlNto7283ZwdCoFgVg+dazrZQSKwKKLD2yvdKgwSXTTq9CcrFKu8cJU82n7y5FjufpccVwGYbTPVu7BSrO/6M64o+G71DxyR37kOW1HEddUIY77Im+ZCc= + template: + metadata: + creationTimestamp: null + name: database-secrets + namespace: todo diff --git a/todo/backend/helmrelease-postgresql.yaml b/todo/backend/helmrelease-postgresql.yaml new file mode 100644 index 0000000..624ad49 --- /dev/null +++ b/todo/backend/helmrelease-postgresql.yaml @@ -0,0 +1,35 @@ +apiVersion: helm.toolkit.fluxcd.io/v2beta2 +kind: HelmRelease +metadata: + name: todo-postgresql + namespace: todo +spec: + chart: + spec: + chart: postgresql + version: 15.x + sourceRef: + kind: HelmRepository + name: bitnami + namespace: flux-system + interval: 15m + timeout: 5m + releaseName: postgresql + values: + global: + storageClass: "longhorn" + postgresql: + auth: + username: "todo" + database: "todos" + existingSecret: "database-secrets" + secretKeys: + adminPasswordKey: "ADMIN_PASSWORD" + userPasswordKey: "USER_PASSWORD" + replicationPasswordKey: "REPLICATION_PASSWORD" + primary: + persistence: + size: 1Gi + readReplicas: + persistence: + size: 1Gi diff --git a/todo/app-secret.yaml b/todo/frontend/app-secret.yaml similarity index 100% rename from todo/app-secret.yaml rename to todo/frontend/app-secret.yaml diff --git a/todo/deployment.yaml b/todo/frontend/deployment.yaml similarity index 82% rename from todo/deployment.yaml rename to todo/frontend/deployment.yaml index 89d1f53..d520ff4 100644 --- a/todo/deployment.yaml +++ b/todo/frontend/deployment.yaml @@ -1,23 +1,23 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: todo + name: todo-app namespace: todo labels: - app: todo + app: todo-app spec: replicas: 1 selector: matchLabels: - app: todo + app: todo-app template: metadata: labels: - app: todo + app: todo-app spec: containers: - image: gitea.michaelthomson.dev/mthomson/go-todos-app:latest - name: todo + name: todo-app ports: - name: http containerPort: 3000 diff --git a/todo/ingress.yaml b/todo/frontend/ingress.yaml similarity index 100% rename from todo/ingress.yaml rename to todo/frontend/ingress.yaml diff --git a/todo/service.yaml b/todo/frontend/service.yaml similarity index 89% rename from todo/service.yaml rename to todo/frontend/service.yaml index 0689259..00a0859 100644 --- a/todo/service.yaml +++ b/todo/frontend/service.yaml @@ -5,7 +5,7 @@ metadata: namespace: todo spec: selector: - app: todo + app: todo-app ports: - port: 80 targetPort: http diff --git a/todo/sec.yaml b/todo/sec.yaml new file mode 100644 index 0000000..08e0ab1 --- /dev/null +++ b/todo/sec.yaml @@ -0,0 +1,10 @@ +apiVersion: v1 +data: + ADMIN_PASSWORD: TFJLajlReHM5dUY3ZFVCVWJQOUdQVjhVZWZrTUFZ + REPLICATION_PASSWORD: TFJLajlReHM5dUY3ZFVCVWJQOUdQVjhVZWZrTUFZ + USER_PASSWORD: TFJLajlReHM5dUY3ZFVCVWJQOUdQVjhVZWZrTUFZ +kind: Secret +metadata: + creationTimestamp: null + name: database-secrets + namespace: todo