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 <noreply@anthropic.com>
This commit is contained in:
parent
941cb999ec
commit
abfa43f85f
63 changed files with 1760 additions and 0 deletions
9
apps/nxtgauge-admin-solid/base/configmap.yaml
Normal file
9
apps/nxtgauge-admin-solid/base/configmap.yaml
Normal file
|
|
@ -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"
|
||||||
52
apps/nxtgauge-admin-solid/base/deployment.yaml
Normal file
52
apps/nxtgauge-admin-solid/base/deployment.yaml
Normal file
|
|
@ -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
|
||||||
18
apps/nxtgauge-admin-solid/base/ingress.yaml
Normal file
18
apps/nxtgauge-admin-solid/base/ingress.yaml
Normal file
|
|
@ -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
|
||||||
9
apps/nxtgauge-admin-solid/base/kustomization.yaml
Normal file
9
apps/nxtgauge-admin-solid/base/kustomization.yaml
Normal file
|
|
@ -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
|
||||||
4
apps/nxtgauge-admin-solid/base/namespace.yaml
Normal file
4
apps/nxtgauge-admin-solid/base/namespace.yaml
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: nxtgauge
|
||||||
12
apps/nxtgauge-admin-solid/base/secret.yaml
Normal file
12
apps/nxtgauge-admin-solid/base/secret.yaml
Normal file
|
|
@ -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"
|
||||||
16
apps/nxtgauge-admin-solid/base/service.yaml
Normal file
16
apps/nxtgauge-admin-solid/base/service.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: nxtgauge-admin-solid
|
||||||
|
namespace: nxtgauge
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/companies-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/companies-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/companies-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/companies-service.yaml
Normal file
|
|
@ -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
|
||||||
26
apps/nxtgauge-backend-rust/base/configmap.yaml
Normal file
26
apps/nxtgauge-backend-rust/base/configmap.yaml
Normal file
|
|
@ -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"
|
||||||
33
apps/nxtgauge-backend-rust/base/cron-deployment.yaml
Normal file
33
apps/nxtgauge-backend-rust/base/cron-deployment.yaml
Normal file
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/customers-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/customers-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/customers-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/customers-service.yaml
Normal file
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/developers-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/developers-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/developers-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/developers-service.yaml
Normal file
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/employees-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/employees-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/employees-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/employees-service.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/gateway-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/gateway-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/gateway-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/gateway-service.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
18
apps/nxtgauge-backend-rust/base/ingress.yaml
Normal file
18
apps/nxtgauge-backend-rust/base/ingress.yaml
Normal file
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/job-seekers-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/job-seekers-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/job-seekers-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/job-seekers-service.yaml
Normal file
|
|
@ -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
|
||||||
42
apps/nxtgauge-backend-rust/base/kustomization.yaml
Normal file
42
apps/nxtgauge-backend-rust/base/kustomization.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/makeup-artists-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/makeup-artists-service.yaml
Normal file
|
|
@ -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
|
||||||
4
apps/nxtgauge-backend-rust/base/namespace.yaml
Normal file
4
apps/nxtgauge-backend-rust/base/namespace.yaml
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: nxtgauge
|
||||||
52
apps/nxtgauge-backend-rust/base/payments-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/payments-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/payments-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/payments-service.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/photographers-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/photographers-service.yaml
Normal file
|
|
@ -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
|
||||||
22
apps/nxtgauge-backend-rust/base/secret.yaml
Normal file
22
apps/nxtgauge-backend-rust/base/secret.yaml
Normal file
|
|
@ -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: ""
|
||||||
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/tutors-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/tutors-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/tutors-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/tutors-service.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
52
apps/nxtgauge-backend-rust/base/users-deployment.yaml
Normal file
52
apps/nxtgauge-backend-rust/base/users-deployment.yaml
Normal file
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/users-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/users-service.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
16
apps/nxtgauge-backend-rust/base/video-editors-service.yaml
Normal file
16
apps/nxtgauge-backend-rust/base/video-editors-service.yaml
Normal file
|
|
@ -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
|
||||||
43
apps/nxtgauge-backend-rust/overlays/prod/kustomization.yaml
Normal file
43
apps/nxtgauge-backend-rust/overlays/prod/kustomization.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: nxtgauge-rust-gateway
|
||||||
|
namespace: nxtgauge
|
||||||
|
spec:
|
||||||
|
replicas: 2
|
||||||
9
apps/nxtgauge-frontend-solid/base/configmap.yaml
Normal file
9
apps/nxtgauge-frontend-solid/base/configmap.yaml
Normal file
|
|
@ -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"
|
||||||
52
apps/nxtgauge-frontend-solid/base/deployment.yaml
Normal file
52
apps/nxtgauge-frontend-solid/base/deployment.yaml
Normal file
|
|
@ -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
|
||||||
28
apps/nxtgauge-frontend-solid/base/ingress.yaml
Normal file
28
apps/nxtgauge-frontend-solid/base/ingress.yaml
Normal file
|
|
@ -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
|
||||||
9
apps/nxtgauge-frontend-solid/base/kustomization.yaml
Normal file
9
apps/nxtgauge-frontend-solid/base/kustomization.yaml
Normal file
|
|
@ -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
|
||||||
4
apps/nxtgauge-frontend-solid/base/namespace.yaml
Normal file
4
apps/nxtgauge-frontend-solid/base/namespace.yaml
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: nxtgauge
|
||||||
12
apps/nxtgauge-frontend-solid/base/secret.yaml
Normal file
12
apps/nxtgauge-frontend-solid/base/secret.yaml
Normal file
|
|
@ -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"
|
||||||
16
apps/nxtgauge-frontend-solid/base/service.yaml
Normal file
16
apps/nxtgauge-frontend-solid/base/service.yaml
Normal file
|
|
@ -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
|
||||||
|
|
@ -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
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: nxtgauge-frontend-solid
|
||||||
|
namespace: nxtgauge
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
25
argocd/nxtgauge-admin-solid-application.yaml
Normal file
25
argocd/nxtgauge-admin-solid-application.yaml
Normal file
|
|
@ -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
|
||||||
77
argocd/nxtgauge-backend-rust-application.yaml
Normal file
77
argocd/nxtgauge-backend-rust-application.yaml
Normal file
|
|
@ -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
|
||||||
25
argocd/nxtgauge-frontend-solid-application.yaml
Normal file
25
argocd/nxtgauge-frontend-solid-application.yaml
Normal file
|
|
@ -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
|
||||||
Loading…
Add table
Reference in a new issue