From abfa43f85f9015afd64a35348d939e5e9afd2042 Mon Sep 17 00:00:00 2001 From: Ashwin Kumar Date: Thu, 9 Apr 2026 00:48:46 +0200 Subject: [PATCH] feat: add K8s manifests and ArgoCD Applications for new Rust/SolidStart stack Adds Kustomize base+prod overlays for nxtgauge-frontend-solid, nxtgauge-admin-solid, and nxtgauge-backend-rust (18 services). ArgoCD Image Updater configured for auto-deploy on high-performance-latest tag. Co-Authored-By: Claude Sonnet 4.6 --- apps/nxtgauge-admin-solid/base/configmap.yaml | 9 +++ .../nxtgauge-admin-solid/base/deployment.yaml | 52 +++++++++++++ apps/nxtgauge-admin-solid/base/ingress.yaml | 18 +++++ .../base/kustomization.yaml | 9 +++ apps/nxtgauge-admin-solid/base/namespace.yaml | 4 + apps/nxtgauge-admin-solid/base/secret.yaml | 12 +++ apps/nxtgauge-admin-solid/base/service.yaml | 16 ++++ .../overlays/prod/kustomization.yaml | 9 +++ .../overlays/prod/replicas-patch.yaml | 7 ++ .../base/catering-services-deployment.yaml | 52 +++++++++++++ .../base/catering-services-service.yaml | 16 ++++ .../base/companies-deployment.yaml | 52 +++++++++++++ .../base/companies-service.yaml | 16 ++++ .../nxtgauge-backend-rust/base/configmap.yaml | 26 +++++++ .../base/cron-deployment.yaml | 33 ++++++++ .../base/customers-deployment.yaml | 52 +++++++++++++ .../base/customers-service.yaml | 16 ++++ .../base/developers-deployment.yaml | 52 +++++++++++++ .../base/developers-service.yaml | 16 ++++ .../base/employees-deployment.yaml | 52 +++++++++++++ .../base/employees-service.yaml | 16 ++++ .../base/fitness-trainers-deployment.yaml | 52 +++++++++++++ .../base/fitness-trainers-service.yaml | 16 ++++ .../base/gateway-deployment.yaml | 52 +++++++++++++ .../base/gateway-service.yaml | 16 ++++ .../base/graphic-designers-deployment.yaml | 52 +++++++++++++ .../base/graphic-designers-service.yaml | 16 ++++ apps/nxtgauge-backend-rust/base/ingress.yaml | 18 +++++ .../base/job-seekers-deployment.yaml | 52 +++++++++++++ .../base/job-seekers-service.yaml | 16 ++++ .../base/kustomization.yaml | 42 ++++++++++ .../base/makeup-artists-deployment.yaml | 52 +++++++++++++ .../base/makeup-artists-service.yaml | 16 ++++ .../nxtgauge-backend-rust/base/namespace.yaml | 4 + .../base/payments-deployment.yaml | 52 +++++++++++++ .../base/payments-service.yaml | 16 ++++ .../base/photographers-deployment.yaml | 52 +++++++++++++ .../base/photographers-service.yaml | 16 ++++ apps/nxtgauge-backend-rust/base/secret.yaml | 22 ++++++ .../social-media-managers-deployment.yaml | 52 +++++++++++++ .../base/social-media-managers-service.yaml | 16 ++++ .../base/tutors-deployment.yaml | 52 +++++++++++++ .../base/tutors-service.yaml | 16 ++++ .../base/ugc-content-creators-deployment.yaml | 52 +++++++++++++ .../base/ugc-content-creators-service.yaml | 16 ++++ .../base/users-deployment.yaml | 52 +++++++++++++ .../base/users-service.yaml | 16 ++++ .../base/video-editors-deployment.yaml | 52 +++++++++++++ .../base/video-editors-service.yaml | 16 ++++ .../overlays/prod/kustomization.yaml | 43 +++++++++++ .../overlays/prod/replicas-patch.yaml | 7 ++ .../base/configmap.yaml | 9 +++ .../base/deployment.yaml | 52 +++++++++++++ .../nxtgauge-frontend-solid/base/ingress.yaml | 28 +++++++ .../base/kustomization.yaml | 9 +++ .../base/namespace.yaml | 4 + apps/nxtgauge-frontend-solid/base/secret.yaml | 12 +++ .../nxtgauge-frontend-solid/base/service.yaml | 16 ++++ .../overlays/prod/kustomization.yaml | 9 +++ .../overlays/prod/replicas-patch.yaml | 7 ++ argocd/nxtgauge-admin-solid-application.yaml | 25 ++++++ argocd/nxtgauge-backend-rust-application.yaml | 77 +++++++++++++++++++ .../nxtgauge-frontend-solid-application.yaml | 25 ++++++ 63 files changed, 1760 insertions(+) create mode 100644 apps/nxtgauge-admin-solid/base/configmap.yaml create mode 100644 apps/nxtgauge-admin-solid/base/deployment.yaml create mode 100644 apps/nxtgauge-admin-solid/base/ingress.yaml create mode 100644 apps/nxtgauge-admin-solid/base/kustomization.yaml create mode 100644 apps/nxtgauge-admin-solid/base/namespace.yaml create mode 100644 apps/nxtgauge-admin-solid/base/secret.yaml create mode 100644 apps/nxtgauge-admin-solid/base/service.yaml create mode 100644 apps/nxtgauge-admin-solid/overlays/prod/kustomization.yaml create mode 100644 apps/nxtgauge-admin-solid/overlays/prod/replicas-patch.yaml create mode 100644 apps/nxtgauge-backend-rust/base/catering-services-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/catering-services-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/companies-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/companies-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/configmap.yaml create mode 100644 apps/nxtgauge-backend-rust/base/cron-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/customers-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/customers-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/developers-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/developers-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/employees-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/employees-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/fitness-trainers-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/fitness-trainers-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/gateway-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/gateway-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/graphic-designers-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/graphic-designers-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/ingress.yaml create mode 100644 apps/nxtgauge-backend-rust/base/job-seekers-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/job-seekers-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/kustomization.yaml create mode 100644 apps/nxtgauge-backend-rust/base/makeup-artists-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/makeup-artists-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/namespace.yaml create mode 100644 apps/nxtgauge-backend-rust/base/payments-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/payments-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/photographers-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/photographers-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/secret.yaml create mode 100644 apps/nxtgauge-backend-rust/base/social-media-managers-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/social-media-managers-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/tutors-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/tutors-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/ugc-content-creators-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/ugc-content-creators-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/users-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/users-service.yaml create mode 100644 apps/nxtgauge-backend-rust/base/video-editors-deployment.yaml create mode 100644 apps/nxtgauge-backend-rust/base/video-editors-service.yaml create mode 100644 apps/nxtgauge-backend-rust/overlays/prod/kustomization.yaml create mode 100644 apps/nxtgauge-backend-rust/overlays/prod/replicas-patch.yaml create mode 100644 apps/nxtgauge-frontend-solid/base/configmap.yaml create mode 100644 apps/nxtgauge-frontend-solid/base/deployment.yaml create mode 100644 apps/nxtgauge-frontend-solid/base/ingress.yaml create mode 100644 apps/nxtgauge-frontend-solid/base/kustomization.yaml create mode 100644 apps/nxtgauge-frontend-solid/base/namespace.yaml create mode 100644 apps/nxtgauge-frontend-solid/base/secret.yaml create mode 100644 apps/nxtgauge-frontend-solid/base/service.yaml create mode 100644 apps/nxtgauge-frontend-solid/overlays/prod/kustomization.yaml create mode 100644 apps/nxtgauge-frontend-solid/overlays/prod/replicas-patch.yaml create mode 100644 argocd/nxtgauge-admin-solid-application.yaml create mode 100644 argocd/nxtgauge-backend-rust-application.yaml create mode 100644 argocd/nxtgauge-frontend-solid-application.yaml diff --git a/apps/nxtgauge-admin-solid/base/configmap.yaml b/apps/nxtgauge-admin-solid/base/configmap.yaml new file mode 100644 index 0000000..8b20eac --- /dev/null +++ b/apps/nxtgauge-admin-solid/base/configmap.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: nxtgauge-admin-solid-config + namespace: nxtgauge +data: + NODE_ENV: "production" + PORT: "3000" + GATEWAY_URL: "http://nxtgauge-rust-gateway:8000" diff --git a/apps/nxtgauge-admin-solid/base/deployment.yaml b/apps/nxtgauge-admin-solid/base/deployment.yaml new file mode 100644 index 0000000..24ea1ba --- /dev/null +++ b/apps/nxtgauge-admin-solid/base/deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-admin-solid + namespace: nxtgauge + labels: + app: nxtgauge-admin-solid +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-admin-solid + template: + metadata: + labels: + app: nxtgauge-admin-solid + spec: + containers: + - name: admin-solid + image: ghcr.io/traceworks2023/nxtgauge-admin-solid + imagePullPolicy: Always + ports: + - containerPort: 3000 + name: http + envFrom: + - configMapRef: + name: nxtgauge-admin-solid-config + - secretRef: + name: nxtgauge-admin-solid-secrets + readinessProbe: + httpGet: + path: / + port: 3000 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: / + port: 3000 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 3 + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 500m + memory: 512Mi diff --git a/apps/nxtgauge-admin-solid/base/ingress.yaml b/apps/nxtgauge-admin-solid/base/ingress.yaml new file mode 100644 index 0000000..315b27d --- /dev/null +++ b/apps/nxtgauge-admin-solid/base/ingress.yaml @@ -0,0 +1,18 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: nxtgauge-admin-solid + namespace: nxtgauge +spec: + ingressClassName: traefik + rules: + - host: admin.nxtgauge.com + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: nxtgauge-admin-solid + port: + number: 80 diff --git a/apps/nxtgauge-admin-solid/base/kustomization.yaml b/apps/nxtgauge-admin-solid/base/kustomization.yaml new file mode 100644 index 0000000..dffdde5 --- /dev/null +++ b/apps/nxtgauge-admin-solid/base/kustomization.yaml @@ -0,0 +1,9 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - namespace.yaml + - configmap.yaml + - secret.yaml + - deployment.yaml + - service.yaml + - ingress.yaml diff --git a/apps/nxtgauge-admin-solid/base/namespace.yaml b/apps/nxtgauge-admin-solid/base/namespace.yaml new file mode 100644 index 0000000..358f183 --- /dev/null +++ b/apps/nxtgauge-admin-solid/base/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: nxtgauge diff --git a/apps/nxtgauge-admin-solid/base/secret.yaml b/apps/nxtgauge-admin-solid/base/secret.yaml new file mode 100644 index 0000000..7fa399e --- /dev/null +++ b/apps/nxtgauge-admin-solid/base/secret.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Secret +metadata: + name: nxtgauge-admin-solid-secrets + namespace: nxtgauge +type: Opaque +stringData: + SMTP_HOST: "mail.nxtgauge.com" + SMTP_PORT: "587" + SMTP_USER: "noreply@nxtgauge.com" + SMTP_PASS: "Nxtguage@1128" + SMTP_FROM: "noreply@nxtgauge.com" diff --git a/apps/nxtgauge-admin-solid/base/service.yaml b/apps/nxtgauge-admin-solid/base/service.yaml new file mode 100644 index 0000000..969dca3 --- /dev/null +++ b/apps/nxtgauge-admin-solid/base/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-admin-solid + namespace: nxtgauge + labels: + app: nxtgauge-admin-solid +spec: + type: ClusterIP + selector: + app: nxtgauge-admin-solid + ports: + - name: http + port: 80 + targetPort: 3000 + protocol: TCP diff --git a/apps/nxtgauge-admin-solid/overlays/prod/kustomization.yaml b/apps/nxtgauge-admin-solid/overlays/prod/kustomization.yaml new file mode 100644 index 0000000..71c07c5 --- /dev/null +++ b/apps/nxtgauge-admin-solid/overlays/prod/kustomization.yaml @@ -0,0 +1,9 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ../../base +patchesStrategicMerge: + - replicas-patch.yaml +images: + - name: ghcr.io/traceworks2023/nxtgauge-admin-solid + newTag: high-performance-latest diff --git a/apps/nxtgauge-admin-solid/overlays/prod/replicas-patch.yaml b/apps/nxtgauge-admin-solid/overlays/prod/replicas-patch.yaml new file mode 100644 index 0000000..aab9a8e --- /dev/null +++ b/apps/nxtgauge-admin-solid/overlays/prod/replicas-patch.yaml @@ -0,0 +1,7 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-admin-solid + namespace: nxtgauge +spec: + replicas: 1 diff --git a/apps/nxtgauge-backend-rust/base/catering-services-deployment.yaml b/apps/nxtgauge-backend-rust/base/catering-services-deployment.yaml new file mode 100644 index 0000000..a1d6ddc --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/catering-services-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-catering-services + namespace: nxtgauge + labels: + app: nxtgauge-rust-catering-services +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-catering-services + template: + metadata: + labels: + app: nxtgauge-rust-catering-services + spec: + containers: + - name: catering_services + image: ghcr.io/traceworks2023/nxtgauge-rust-catering-services + imagePullPolicy: Always + ports: + - containerPort: 8093 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8093 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8093 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/catering-services-service.yaml b/apps/nxtgauge-backend-rust/base/catering-services-service.yaml new file mode 100644 index 0000000..8938428 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/catering-services-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-catering-services + namespace: nxtgauge + labels: + app: nxtgauge-rust-catering-services +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-catering-services + ports: + - name: http + port: 8093 + targetPort: 8093 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/companies-deployment.yaml b/apps/nxtgauge-backend-rust/base/companies-deployment.yaml new file mode 100644 index 0000000..c0f5530 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/companies-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-companies + namespace: nxtgauge + labels: + app: nxtgauge-rust-companies +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-companies + template: + metadata: + labels: + app: nxtgauge-rust-companies + spec: + containers: + - name: companies + image: ghcr.io/traceworks2023/nxtgauge-rust-companies + imagePullPolicy: Always + ports: + - containerPort: 8081 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8081 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8081 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/companies-service.yaml b/apps/nxtgauge-backend-rust/base/companies-service.yaml new file mode 100644 index 0000000..f8c22bf --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/companies-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-companies + namespace: nxtgauge + labels: + app: nxtgauge-rust-companies +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-companies + ports: + - name: http + port: 8081 + targetPort: 8081 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/configmap.yaml b/apps/nxtgauge-backend-rust/base/configmap.yaml new file mode 100644 index 0000000..8d16587 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/configmap.yaml @@ -0,0 +1,26 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: nxtgauge-backend-rust-config + namespace: nxtgauge +data: + RUST_LOG: "info" + PORT: "8000" + FRONTEND_URL: "https://nxtgauge.com" + ADMIN_URL: "https://admin.nxtgauge.com" + USERS_SERVICE_URL: "http://nxtgauge-rust-users:8080" + COMPANIES_SERVICE_URL: "http://nxtgauge-rust-companies:8081" + JOB_SEEKERS_SERVICE_URL: "http://nxtgauge-rust-job-seekers:8082" + CUSTOMERS_SERVICE_URL: "http://nxtgauge-rust-customers:8083" + PAYMENTS_SERVICE_URL: "http://nxtgauge-rust-payments:8094" + EMPLOYEES_SERVICE_URL: "http://nxtgauge-rust-employees:8096" + PHOTOGRAPHERS_SERVICE_URL: "http://nxtgauge-rust-photographers:8085" + MAKEUP_ARTISTS_SERVICE_URL: "http://nxtgauge-rust-makeup-artists:8086" + TUTORS_SERVICE_URL: "http://nxtgauge-rust-tutors:8087" + DEVELOPERS_SERVICE_URL: "http://nxtgauge-rust-developers:8088" + VIDEO_EDITORS_SERVICE_URL: "http://nxtgauge-rust-video-editors:8089" + GRAPHIC_DESIGNERS_SERVICE_URL: "http://nxtgauge-rust-graphic-designers:8090" + SOCIAL_MEDIA_MANAGERS_SERVICE_URL: "http://nxtgauge-rust-social-media-managers:8091" + FITNESS_TRAINERS_SERVICE_URL: "http://nxtgauge-rust-fitness-trainers:8092" + CATERING_SERVICES_SERVICE_URL: "http://nxtgauge-rust-catering-services:8093" + UGC_CONTENT_CREATORS_SERVICE_URL: "http://nxtgauge-rust-ugc-content-creators:8095" diff --git a/apps/nxtgauge-backend-rust/base/cron-deployment.yaml b/apps/nxtgauge-backend-rust/base/cron-deployment.yaml new file mode 100644 index 0000000..ea39b29 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/cron-deployment.yaml @@ -0,0 +1,33 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-cron + namespace: nxtgauge + labels: + app: nxtgauge-rust-cron +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-cron + template: + metadata: + labels: + app: nxtgauge-rust-cron + spec: + containers: + - name: cron + image: ghcr.io/traceworks2023/nxtgauge-rust-cron + imagePullPolicy: Always + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 200m + memory: 128Mi diff --git a/apps/nxtgauge-backend-rust/base/customers-deployment.yaml b/apps/nxtgauge-backend-rust/base/customers-deployment.yaml new file mode 100644 index 0000000..da3c57c --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/customers-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-customers + namespace: nxtgauge + labels: + app: nxtgauge-rust-customers +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-customers + template: + metadata: + labels: + app: nxtgauge-rust-customers + spec: + containers: + - name: customers + image: ghcr.io/traceworks2023/nxtgauge-rust-customers + imagePullPolicy: Always + ports: + - containerPort: 8083 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8083 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8083 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/customers-service.yaml b/apps/nxtgauge-backend-rust/base/customers-service.yaml new file mode 100644 index 0000000..fe5cd7f --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/customers-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-customers + namespace: nxtgauge + labels: + app: nxtgauge-rust-customers +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-customers + ports: + - name: http + port: 8083 + targetPort: 8083 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/developers-deployment.yaml b/apps/nxtgauge-backend-rust/base/developers-deployment.yaml new file mode 100644 index 0000000..f0aed16 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/developers-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-developers + namespace: nxtgauge + labels: + app: nxtgauge-rust-developers +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-developers + template: + metadata: + labels: + app: nxtgauge-rust-developers + spec: + containers: + - name: developers + image: ghcr.io/traceworks2023/nxtgauge-rust-developers + imagePullPolicy: Always + ports: + - containerPort: 8088 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8088 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8088 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/developers-service.yaml b/apps/nxtgauge-backend-rust/base/developers-service.yaml new file mode 100644 index 0000000..d6067b5 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/developers-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-developers + namespace: nxtgauge + labels: + app: nxtgauge-rust-developers +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-developers + ports: + - name: http + port: 8088 + targetPort: 8088 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/employees-deployment.yaml b/apps/nxtgauge-backend-rust/base/employees-deployment.yaml new file mode 100644 index 0000000..f5d6f09 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/employees-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-employees + namespace: nxtgauge + labels: + app: nxtgauge-rust-employees +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-employees + template: + metadata: + labels: + app: nxtgauge-rust-employees + spec: + containers: + - name: employees + image: ghcr.io/traceworks2023/nxtgauge-rust-employees + imagePullPolicy: Always + ports: + - containerPort: 8096 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8096 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8096 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/employees-service.yaml b/apps/nxtgauge-backend-rust/base/employees-service.yaml new file mode 100644 index 0000000..1dd73f8 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/employees-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-employees + namespace: nxtgauge + labels: + app: nxtgauge-rust-employees +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-employees + ports: + - name: http + port: 8096 + targetPort: 8096 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/fitness-trainers-deployment.yaml b/apps/nxtgauge-backend-rust/base/fitness-trainers-deployment.yaml new file mode 100644 index 0000000..87a935d --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/fitness-trainers-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-fitness-trainers + namespace: nxtgauge + labels: + app: nxtgauge-rust-fitness-trainers +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-fitness-trainers + template: + metadata: + labels: + app: nxtgauge-rust-fitness-trainers + spec: + containers: + - name: fitness_trainers + image: ghcr.io/traceworks2023/nxtgauge-rust-fitness-trainers + imagePullPolicy: Always + ports: + - containerPort: 8092 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8092 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8092 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/fitness-trainers-service.yaml b/apps/nxtgauge-backend-rust/base/fitness-trainers-service.yaml new file mode 100644 index 0000000..ada28b1 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/fitness-trainers-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-fitness-trainers + namespace: nxtgauge + labels: + app: nxtgauge-rust-fitness-trainers +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-fitness-trainers + ports: + - name: http + port: 8092 + targetPort: 8092 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/gateway-deployment.yaml b/apps/nxtgauge-backend-rust/base/gateway-deployment.yaml new file mode 100644 index 0000000..92274ca --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/gateway-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-gateway + namespace: nxtgauge + labels: + app: nxtgauge-rust-gateway +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-gateway + template: + metadata: + labels: + app: nxtgauge-rust-gateway + spec: + containers: + - name: gateway + image: ghcr.io/traceworks2023/nxtgauge-rust-gateway + imagePullPolicy: Always + ports: + - containerPort: 8000 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8000 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8000 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/gateway-service.yaml b/apps/nxtgauge-backend-rust/base/gateway-service.yaml new file mode 100644 index 0000000..c44bf28 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/gateway-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-gateway + namespace: nxtgauge + labels: + app: nxtgauge-rust-gateway +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-gateway + ports: + - name: http + port: 8000 + targetPort: 8000 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/graphic-designers-deployment.yaml b/apps/nxtgauge-backend-rust/base/graphic-designers-deployment.yaml new file mode 100644 index 0000000..e729981 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/graphic-designers-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-graphic-designers + namespace: nxtgauge + labels: + app: nxtgauge-rust-graphic-designers +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-graphic-designers + template: + metadata: + labels: + app: nxtgauge-rust-graphic-designers + spec: + containers: + - name: graphic_designers + image: ghcr.io/traceworks2023/nxtgauge-rust-graphic-designers + imagePullPolicy: Always + ports: + - containerPort: 8090 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8090 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8090 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/graphic-designers-service.yaml b/apps/nxtgauge-backend-rust/base/graphic-designers-service.yaml new file mode 100644 index 0000000..e22ebb9 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/graphic-designers-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-graphic-designers + namespace: nxtgauge + labels: + app: nxtgauge-rust-graphic-designers +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-graphic-designers + ports: + - name: http + port: 8090 + targetPort: 8090 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/ingress.yaml b/apps/nxtgauge-backend-rust/base/ingress.yaml new file mode 100644 index 0000000..c10ec01 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/ingress.yaml @@ -0,0 +1,18 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: nxtgauge-backend-rust + namespace: nxtgauge +spec: + ingressClassName: traefik + rules: + - host: api.nxtgauge.com + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: nxtgauge-rust-gateway + port: + number: 8000 diff --git a/apps/nxtgauge-backend-rust/base/job-seekers-deployment.yaml b/apps/nxtgauge-backend-rust/base/job-seekers-deployment.yaml new file mode 100644 index 0000000..0305c52 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/job-seekers-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-job-seekers + namespace: nxtgauge + labels: + app: nxtgauge-rust-job-seekers +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-job-seekers + template: + metadata: + labels: + app: nxtgauge-rust-job-seekers + spec: + containers: + - name: job_seekers + image: ghcr.io/traceworks2023/nxtgauge-rust-job-seekers + imagePullPolicy: Always + ports: + - containerPort: 8082 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8082 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8082 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/job-seekers-service.yaml b/apps/nxtgauge-backend-rust/base/job-seekers-service.yaml new file mode 100644 index 0000000..a94f976 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/job-seekers-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-job-seekers + namespace: nxtgauge + labels: + app: nxtgauge-rust-job-seekers +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-job-seekers + ports: + - name: http + port: 8082 + targetPort: 8082 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/kustomization.yaml b/apps/nxtgauge-backend-rust/base/kustomization.yaml new file mode 100644 index 0000000..86853b0 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/kustomization.yaml @@ -0,0 +1,42 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - namespace.yaml + - configmap.yaml + - secret.yaml + - ingress.yaml + - gateway-deployment.yaml + - gateway-service.yaml + - users-deployment.yaml + - users-service.yaml + - companies-deployment.yaml + - companies-service.yaml + - job-seekers-deployment.yaml + - job-seekers-service.yaml + - customers-deployment.yaml + - customers-service.yaml + - payments-deployment.yaml + - payments-service.yaml + - employees-deployment.yaml + - employees-service.yaml + - photographers-deployment.yaml + - photographers-service.yaml + - makeup-artists-deployment.yaml + - makeup-artists-service.yaml + - tutors-deployment.yaml + - tutors-service.yaml + - developers-deployment.yaml + - developers-service.yaml + - video-editors-deployment.yaml + - video-editors-service.yaml + - graphic-designers-deployment.yaml + - graphic-designers-service.yaml + - social-media-managers-deployment.yaml + - social-media-managers-service.yaml + - fitness-trainers-deployment.yaml + - fitness-trainers-service.yaml + - catering-services-deployment.yaml + - catering-services-service.yaml + - ugc-content-creators-deployment.yaml + - ugc-content-creators-service.yaml + - cron-deployment.yaml diff --git a/apps/nxtgauge-backend-rust/base/makeup-artists-deployment.yaml b/apps/nxtgauge-backend-rust/base/makeup-artists-deployment.yaml new file mode 100644 index 0000000..2fcb8f8 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/makeup-artists-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-makeup-artists + namespace: nxtgauge + labels: + app: nxtgauge-rust-makeup-artists +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-makeup-artists + template: + metadata: + labels: + app: nxtgauge-rust-makeup-artists + spec: + containers: + - name: makeup_artists + image: ghcr.io/traceworks2023/nxtgauge-rust-makeup-artists + imagePullPolicy: Always + ports: + - containerPort: 8086 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8086 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8086 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/makeup-artists-service.yaml b/apps/nxtgauge-backend-rust/base/makeup-artists-service.yaml new file mode 100644 index 0000000..21e1eff --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/makeup-artists-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-makeup-artists + namespace: nxtgauge + labels: + app: nxtgauge-rust-makeup-artists +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-makeup-artists + ports: + - name: http + port: 8086 + targetPort: 8086 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/namespace.yaml b/apps/nxtgauge-backend-rust/base/namespace.yaml new file mode 100644 index 0000000..358f183 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: nxtgauge diff --git a/apps/nxtgauge-backend-rust/base/payments-deployment.yaml b/apps/nxtgauge-backend-rust/base/payments-deployment.yaml new file mode 100644 index 0000000..2296aeb --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/payments-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-payments + namespace: nxtgauge + labels: + app: nxtgauge-rust-payments +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-payments + template: + metadata: + labels: + app: nxtgauge-rust-payments + spec: + containers: + - name: payments + image: ghcr.io/traceworks2023/nxtgauge-rust-payments + imagePullPolicy: Always + ports: + - containerPort: 8094 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8094 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8094 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/payments-service.yaml b/apps/nxtgauge-backend-rust/base/payments-service.yaml new file mode 100644 index 0000000..2087985 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/payments-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-payments + namespace: nxtgauge + labels: + app: nxtgauge-rust-payments +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-payments + ports: + - name: http + port: 8094 + targetPort: 8094 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/photographers-deployment.yaml b/apps/nxtgauge-backend-rust/base/photographers-deployment.yaml new file mode 100644 index 0000000..ad03380 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/photographers-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-photographers + namespace: nxtgauge + labels: + app: nxtgauge-rust-photographers +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-photographers + template: + metadata: + labels: + app: nxtgauge-rust-photographers + spec: + containers: + - name: photographers + image: ghcr.io/traceworks2023/nxtgauge-rust-photographers + imagePullPolicy: Always + ports: + - containerPort: 8085 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8085 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8085 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/photographers-service.yaml b/apps/nxtgauge-backend-rust/base/photographers-service.yaml new file mode 100644 index 0000000..042d659 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/photographers-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-photographers + namespace: nxtgauge + labels: + app: nxtgauge-rust-photographers +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-photographers + ports: + - name: http + port: 8085 + targetPort: 8085 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/secret.yaml b/apps/nxtgauge-backend-rust/base/secret.yaml new file mode 100644 index 0000000..740938b --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/secret.yaml @@ -0,0 +1,22 @@ +apiVersion: v1 +kind: Secret +metadata: + name: nxtgauge-backend-rust-secrets + namespace: nxtgauge +type: Opaque +stringData: + DATABASE_URL: "postgresql://postgres:chandan2026%401@pg-postgresql.data.svc.cluster.local:5432/nxtgauge" + JWT_SECRET: "bPU0RQ/N7JW8CDCioe6AFBw/lBLTm++pGtta20pcsTX36p3OyheplgUyiD66OCuV" + REDIS_URL: "redis://redis-master.data.svc.cluster.local:6379" + SMTP_HOST: "mail.nxtgauge.com" + SMTP_PORT: "587" + SMTP_USER: "noreply@nxtgauge.com" + SMTP_PASS: "Nxtguage@1128" + SMTP_FROM_NAME: "NXTGAUGE" + SMTP_FROM_EMAIL: "noreply@nxtgauge.com" + SMTP_SECURE: "false" + SMTP_REQUIRE_TLS: "true" + B2_BUCKET_NAME: "nxtgauge" + B2_ENDPOINT: "" + B2_ACCESS_KEY_ID: "" + B2_SECRET_ACCESS_KEY: "" diff --git a/apps/nxtgauge-backend-rust/base/social-media-managers-deployment.yaml b/apps/nxtgauge-backend-rust/base/social-media-managers-deployment.yaml new file mode 100644 index 0000000..e215852 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/social-media-managers-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-social-media-managers + namespace: nxtgauge + labels: + app: nxtgauge-rust-social-media-managers +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-social-media-managers + template: + metadata: + labels: + app: nxtgauge-rust-social-media-managers + spec: + containers: + - name: social_media_managers + image: ghcr.io/traceworks2023/nxtgauge-rust-social-media-managers + imagePullPolicy: Always + ports: + - containerPort: 8091 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8091 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8091 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/social-media-managers-service.yaml b/apps/nxtgauge-backend-rust/base/social-media-managers-service.yaml new file mode 100644 index 0000000..89f15cf --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/social-media-managers-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-social-media-managers + namespace: nxtgauge + labels: + app: nxtgauge-rust-social-media-managers +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-social-media-managers + ports: + - name: http + port: 8091 + targetPort: 8091 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/tutors-deployment.yaml b/apps/nxtgauge-backend-rust/base/tutors-deployment.yaml new file mode 100644 index 0000000..b0a347b --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/tutors-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-tutors + namespace: nxtgauge + labels: + app: nxtgauge-rust-tutors +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-tutors + template: + metadata: + labels: + app: nxtgauge-rust-tutors + spec: + containers: + - name: tutors + image: ghcr.io/traceworks2023/nxtgauge-rust-tutors + imagePullPolicy: Always + ports: + - containerPort: 8087 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8087 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8087 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/tutors-service.yaml b/apps/nxtgauge-backend-rust/base/tutors-service.yaml new file mode 100644 index 0000000..092e005 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/tutors-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-tutors + namespace: nxtgauge + labels: + app: nxtgauge-rust-tutors +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-tutors + ports: + - name: http + port: 8087 + targetPort: 8087 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/ugc-content-creators-deployment.yaml b/apps/nxtgauge-backend-rust/base/ugc-content-creators-deployment.yaml new file mode 100644 index 0000000..3a5f98e --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/ugc-content-creators-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-ugc-content-creators + namespace: nxtgauge + labels: + app: nxtgauge-rust-ugc-content-creators +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-ugc-content-creators + template: + metadata: + labels: + app: nxtgauge-rust-ugc-content-creators + spec: + containers: + - name: ugc_content_creators + image: ghcr.io/traceworks2023/nxtgauge-rust-ugc-content-creators + imagePullPolicy: Always + ports: + - containerPort: 8095 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8095 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8095 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/ugc-content-creators-service.yaml b/apps/nxtgauge-backend-rust/base/ugc-content-creators-service.yaml new file mode 100644 index 0000000..32e697e --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/ugc-content-creators-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-ugc-content-creators + namespace: nxtgauge + labels: + app: nxtgauge-rust-ugc-content-creators +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-ugc-content-creators + ports: + - name: http + port: 8095 + targetPort: 8095 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/users-deployment.yaml b/apps/nxtgauge-backend-rust/base/users-deployment.yaml new file mode 100644 index 0000000..31c0b30 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/users-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-users + namespace: nxtgauge + labels: + app: nxtgauge-rust-users +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-users + template: + metadata: + labels: + app: nxtgauge-rust-users + spec: + containers: + - name: users + image: ghcr.io/traceworks2023/nxtgauge-rust-users + imagePullPolicy: Always + ports: + - containerPort: 8080 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8080 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8080 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/users-service.yaml b/apps/nxtgauge-backend-rust/base/users-service.yaml new file mode 100644 index 0000000..90fcbd4 --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/users-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-users + namespace: nxtgauge + labels: + app: nxtgauge-rust-users +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-users + ports: + - name: http + port: 8080 + targetPort: 8080 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/base/video-editors-deployment.yaml b/apps/nxtgauge-backend-rust/base/video-editors-deployment.yaml new file mode 100644 index 0000000..230fbbe --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/video-editors-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-video-editors + namespace: nxtgauge + labels: + app: nxtgauge-rust-video-editors +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-rust-video-editors + template: + metadata: + labels: + app: nxtgauge-rust-video-editors + spec: + containers: + - name: video_editors + image: ghcr.io/traceworks2023/nxtgauge-rust-video-editors + imagePullPolicy: Always + ports: + - containerPort: 8089 + name: http + envFrom: + - configMapRef: + name: nxtgauge-backend-rust-config + - secretRef: + name: nxtgauge-backend-rust-secrets + readinessProbe: + httpGet: + path: /health + port: 8089 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: /health + port: 8089 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 5 + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi diff --git a/apps/nxtgauge-backend-rust/base/video-editors-service.yaml b/apps/nxtgauge-backend-rust/base/video-editors-service.yaml new file mode 100644 index 0000000..235e79b --- /dev/null +++ b/apps/nxtgauge-backend-rust/base/video-editors-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-rust-video-editors + namespace: nxtgauge + labels: + app: nxtgauge-rust-video-editors +spec: + type: ClusterIP + selector: + app: nxtgauge-rust-video-editors + ports: + - name: http + port: 8089 + targetPort: 8089 + protocol: TCP diff --git a/apps/nxtgauge-backend-rust/overlays/prod/kustomization.yaml b/apps/nxtgauge-backend-rust/overlays/prod/kustomization.yaml new file mode 100644 index 0000000..09a133c --- /dev/null +++ b/apps/nxtgauge-backend-rust/overlays/prod/kustomization.yaml @@ -0,0 +1,43 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ../../base +patchesStrategicMerge: + - replicas-patch.yaml +images: + - name: ghcr.io/traceworks2023/nxtgauge-rust-gateway + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-users + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-companies + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-job-seekers + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-customers + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-payments + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-employees + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-photographers + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-makeup-artists + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-tutors + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-developers + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-video-editors + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-graphic-designers + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-social-media-managers + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-fitness-trainers + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-catering-services + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-ugc-content-creators + newTag: high-performance-latest + - name: ghcr.io/traceworks2023/nxtgauge-rust-cron + newTag: high-performance-latest diff --git a/apps/nxtgauge-backend-rust/overlays/prod/replicas-patch.yaml b/apps/nxtgauge-backend-rust/overlays/prod/replicas-patch.yaml new file mode 100644 index 0000000..114cca5 --- /dev/null +++ b/apps/nxtgauge-backend-rust/overlays/prod/replicas-patch.yaml @@ -0,0 +1,7 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-rust-gateway + namespace: nxtgauge +spec: + replicas: 2 diff --git a/apps/nxtgauge-frontend-solid/base/configmap.yaml b/apps/nxtgauge-frontend-solid/base/configmap.yaml new file mode 100644 index 0000000..b1e2384 --- /dev/null +++ b/apps/nxtgauge-frontend-solid/base/configmap.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: nxtgauge-frontend-solid-config + namespace: nxtgauge +data: + NODE_ENV: "production" + PORT: "3000" + GATEWAY_URL: "http://nxtgauge-rust-gateway:8000" diff --git a/apps/nxtgauge-frontend-solid/base/deployment.yaml b/apps/nxtgauge-frontend-solid/base/deployment.yaml new file mode 100644 index 0000000..0ddbf02 --- /dev/null +++ b/apps/nxtgauge-frontend-solid/base/deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-frontend-solid + namespace: nxtgauge + labels: + app: nxtgauge-frontend-solid +spec: + replicas: 1 + selector: + matchLabels: + app: nxtgauge-frontend-solid + template: + metadata: + labels: + app: nxtgauge-frontend-solid + spec: + containers: + - name: frontend-solid + image: ghcr.io/traceworks2023/nxtgauge-frontend-solid + imagePullPolicy: Always + ports: + - containerPort: 3000 + name: http + envFrom: + - configMapRef: + name: nxtgauge-frontend-solid-config + - secretRef: + name: nxtgauge-frontend-solid-secrets + readinessProbe: + httpGet: + path: / + port: 3000 + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 3 + livenessProbe: + httpGet: + path: / + port: 3000 + initialDelaySeconds: 20 + periodSeconds: 20 + timeoutSeconds: 3 + failureThreshold: 3 + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 500m + memory: 512Mi diff --git a/apps/nxtgauge-frontend-solid/base/ingress.yaml b/apps/nxtgauge-frontend-solid/base/ingress.yaml new file mode 100644 index 0000000..9fdde2d --- /dev/null +++ b/apps/nxtgauge-frontend-solid/base/ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: nxtgauge-frontend-solid + namespace: nxtgauge +spec: + ingressClassName: traefik + rules: + - host: nxtgauge.com + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: nxtgauge-frontend-solid + port: + number: 80 + - host: www.nxtgauge.com + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: nxtgauge-frontend-solid + port: + number: 80 diff --git a/apps/nxtgauge-frontend-solid/base/kustomization.yaml b/apps/nxtgauge-frontend-solid/base/kustomization.yaml new file mode 100644 index 0000000..dffdde5 --- /dev/null +++ b/apps/nxtgauge-frontend-solid/base/kustomization.yaml @@ -0,0 +1,9 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - namespace.yaml + - configmap.yaml + - secret.yaml + - deployment.yaml + - service.yaml + - ingress.yaml diff --git a/apps/nxtgauge-frontend-solid/base/namespace.yaml b/apps/nxtgauge-frontend-solid/base/namespace.yaml new file mode 100644 index 0000000..358f183 --- /dev/null +++ b/apps/nxtgauge-frontend-solid/base/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: nxtgauge diff --git a/apps/nxtgauge-frontend-solid/base/secret.yaml b/apps/nxtgauge-frontend-solid/base/secret.yaml new file mode 100644 index 0000000..474aa82 --- /dev/null +++ b/apps/nxtgauge-frontend-solid/base/secret.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Secret +metadata: + name: nxtgauge-frontend-solid-secrets + namespace: nxtgauge +type: Opaque +stringData: + SMTP_HOST: "mail.nxtgauge.com" + SMTP_PORT: "587" + SMTP_USER: "noreply@nxtgauge.com" + SMTP_PASS: "Nxtguage@1128" + SMTP_FROM: "noreply@nxtgauge.com" diff --git a/apps/nxtgauge-frontend-solid/base/service.yaml b/apps/nxtgauge-frontend-solid/base/service.yaml new file mode 100644 index 0000000..05d2778 --- /dev/null +++ b/apps/nxtgauge-frontend-solid/base/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: nxtgauge-frontend-solid + namespace: nxtgauge + labels: + app: nxtgauge-frontend-solid +spec: + type: ClusterIP + selector: + app: nxtgauge-frontend-solid + ports: + - name: http + port: 80 + targetPort: 3000 + protocol: TCP diff --git a/apps/nxtgauge-frontend-solid/overlays/prod/kustomization.yaml b/apps/nxtgauge-frontend-solid/overlays/prod/kustomization.yaml new file mode 100644 index 0000000..628254c --- /dev/null +++ b/apps/nxtgauge-frontend-solid/overlays/prod/kustomization.yaml @@ -0,0 +1,9 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ../../base +patchesStrategicMerge: + - replicas-patch.yaml +images: + - name: ghcr.io/traceworks2023/nxtgauge-frontend-solid + newTag: high-performance-latest diff --git a/apps/nxtgauge-frontend-solid/overlays/prod/replicas-patch.yaml b/apps/nxtgauge-frontend-solid/overlays/prod/replicas-patch.yaml new file mode 100644 index 0000000..533ceca --- /dev/null +++ b/apps/nxtgauge-frontend-solid/overlays/prod/replicas-patch.yaml @@ -0,0 +1,7 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nxtgauge-frontend-solid + namespace: nxtgauge +spec: + replicas: 1 diff --git a/argocd/nxtgauge-admin-solid-application.yaml b/argocd/nxtgauge-admin-solid-application.yaml new file mode 100644 index 0000000..2b1ab39 --- /dev/null +++ b/argocd/nxtgauge-admin-solid-application.yaml @@ -0,0 +1,25 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: nxtgauge-admin-solid + namespace: argocd + annotations: + argocd-image-updater.argoproj.io/image-list: admin=ghcr.io/traceworks2023/nxtgauge-admin-solid:high-performance-latest + argocd-image-updater.argoproj.io/admin.update-strategy: digest + argocd-image-updater.argoproj.io/admin.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/write-back-method: argocd +spec: + project: default + source: + repoURL: https://github.com/Traceworks2023/nxtgauge-gitops.git + targetRevision: main + path: apps/nxtgauge-admin-solid/overlays/prod + destination: + server: https://kubernetes.default.svc + namespace: nxtgauge + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true diff --git a/argocd/nxtgauge-backend-rust-application.yaml b/argocd/nxtgauge-backend-rust-application.yaml new file mode 100644 index 0000000..636c7a6 --- /dev/null +++ b/argocd/nxtgauge-backend-rust-application.yaml @@ -0,0 +1,77 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: nxtgauge-backend-rust + namespace: argocd + annotations: + argocd-image-updater.argoproj.io/image-list: >- + gateway=ghcr.io/traceworks2023/nxtgauge-rust-gateway:high-performance-latest, + users=ghcr.io/traceworks2023/nxtgauge-rust-users:high-performance-latest, + companies=ghcr.io/traceworks2023/nxtgauge-rust-companies:high-performance-latest, + job-seekers=ghcr.io/traceworks2023/nxtgauge-rust-job_seekers:high-performance-latest, + customers=ghcr.io/traceworks2023/nxtgauge-rust-customers:high-performance-latest, + payments=ghcr.io/traceworks2023/nxtgauge-rust-payments:high-performance-latest, + employees=ghcr.io/traceworks2023/nxtgauge-rust-employees:high-performance-latest, + photographers=ghcr.io/traceworks2023/nxtgauge-rust-photographers:high-performance-latest, + makeup-artists=ghcr.io/traceworks2023/nxtgauge-rust-makeup_artists:high-performance-latest, + tutors=ghcr.io/traceworks2023/nxtgauge-rust-tutors:high-performance-latest, + developers=ghcr.io/traceworks2023/nxtgauge-rust-developers:high-performance-latest, + video-editors=ghcr.io/traceworks2023/nxtgauge-rust-video_editors:high-performance-latest, + graphic-designers=ghcr.io/traceworks2023/nxtgauge-rust-graphic_designers:high-performance-latest, + social-media-managers=ghcr.io/traceworks2023/nxtgauge-rust-social_media_managers:high-performance-latest, + fitness-trainers=ghcr.io/traceworks2023/nxtgauge-rust-fitness_trainers:high-performance-latest, + catering-services=ghcr.io/traceworks2023/nxtgauge-rust-catering_services:high-performance-latest, + ugc-content-creators=ghcr.io/traceworks2023/nxtgauge-rust-ugc_content_creators:high-performance-latest, + cron=ghcr.io/traceworks2023/nxtgauge-rust-cron:high-performance-latest + argocd-image-updater.argoproj.io/gateway.update-strategy: digest + argocd-image-updater.argoproj.io/gateway.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/users.update-strategy: digest + argocd-image-updater.argoproj.io/users.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/companies.update-strategy: digest + argocd-image-updater.argoproj.io/companies.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/job-seekers.update-strategy: digest + argocd-image-updater.argoproj.io/job-seekers.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/customers.update-strategy: digest + argocd-image-updater.argoproj.io/customers.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/payments.update-strategy: digest + argocd-image-updater.argoproj.io/payments.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/employees.update-strategy: digest + argocd-image-updater.argoproj.io/employees.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/photographers.update-strategy: digest + argocd-image-updater.argoproj.io/photographers.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/makeup-artists.update-strategy: digest + argocd-image-updater.argoproj.io/makeup-artists.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/tutors.update-strategy: digest + argocd-image-updater.argoproj.io/tutors.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/developers.update-strategy: digest + argocd-image-updater.argoproj.io/developers.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/video-editors.update-strategy: digest + argocd-image-updater.argoproj.io/video-editors.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/graphic-designers.update-strategy: digest + argocd-image-updater.argoproj.io/graphic-designers.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/social-media-managers.update-strategy: digest + argocd-image-updater.argoproj.io/social-media-managers.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/fitness-trainers.update-strategy: digest + argocd-image-updater.argoproj.io/fitness-trainers.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/catering-services.update-strategy: digest + argocd-image-updater.argoproj.io/catering-services.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/ugc-content-creators.update-strategy: digest + argocd-image-updater.argoproj.io/ugc-content-creators.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/cron.update-strategy: digest + argocd-image-updater.argoproj.io/cron.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/write-back-method: argocd +spec: + project: default + source: + repoURL: https://github.com/Traceworks2023/nxtgauge-gitops.git + targetRevision: main + path: apps/nxtgauge-backend-rust/overlays/prod + destination: + server: https://kubernetes.default.svc + namespace: nxtgauge + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true diff --git a/argocd/nxtgauge-frontend-solid-application.yaml b/argocd/nxtgauge-frontend-solid-application.yaml new file mode 100644 index 0000000..debbaaf --- /dev/null +++ b/argocd/nxtgauge-frontend-solid-application.yaml @@ -0,0 +1,25 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: nxtgauge-frontend-solid + namespace: argocd + annotations: + argocd-image-updater.argoproj.io/image-list: frontend=ghcr.io/traceworks2023/nxtgauge-frontend-solid:high-performance-latest + argocd-image-updater.argoproj.io/frontend.update-strategy: digest + argocd-image-updater.argoproj.io/frontend.allow-tags: regexp:^high-performance-latest$ + argocd-image-updater.argoproj.io/write-back-method: argocd +spec: + project: default + source: + repoURL: https://github.com/Traceworks2023/nxtgauge-gitops.git + targetRevision: main + path: apps/nxtgauge-frontend-solid/overlays/prod + destination: + server: https://kubernetes.default.svc + namespace: nxtgauge + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true