Compare commits
8 commits
1a38ffd6f1
...
724d9de37c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
724d9de37c | ||
|
|
3a8807d3dd | ||
|
|
471f1da66c | ||
|
|
6eb14ec411 | ||
|
|
6ed66fce6f | ||
|
|
914461a63b | ||
|
|
d6317d82a2 | ||
|
|
744ec42ab0 |
15 changed files with 34 additions and 375 deletions
|
|
@ -6,4 +6,4 @@ patchesStrategicMerge:
|
||||||
- replicas-patch.yaml
|
- replicas-patch.yaml
|
||||||
images:
|
images:
|
||||||
- name: registry.nxtgauge.com/nxtgauge-admin-solid
|
- name: registry.nxtgauge.com/nxtgauge-admin-solid
|
||||||
newTag: high-performance-latest
|
newTag: ed368607182cba2d57b2987849bf887a9714da53
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@ data:
|
||||||
DEVELOPERS_SERVICE_URL: "http://nxtgauge-rust-developers:9110"
|
DEVELOPERS_SERVICE_URL: "http://nxtgauge-rust-developers:9110"
|
||||||
VIDEO_EDITORS_SERVICE_URL: "http://nxtgauge-rust-video-editors:9111"
|
VIDEO_EDITORS_SERVICE_URL: "http://nxtgauge-rust-video-editors:9111"
|
||||||
GRAPHIC_DESIGNERS_SERVICE_URL: "http://nxtgauge-rust-graphic-designers:9112"
|
GRAPHIC_DESIGNERS_SERVICE_URL: "http://nxtgauge-rust-graphic-designers:9112"
|
||||||
SOCIAL_MEDIA_MANAGERS_SERVICE_URL: "http://nxtgauge-rust-social-media-managers:9113"
|
|
||||||
FITNESS_TRAINERS_SERVICE_URL: "http://nxtgauge-rust-fitness-trainers:9114"
|
FITNESS_TRAINERS_SERVICE_URL: "http://nxtgauge-rust-fitness-trainers:9114"
|
||||||
CATERING_SERVICES_SERVICE_URL: "http://nxtgauge-rust-catering-services:9115"
|
CATERING_SERVICES_SERVICE_URL: "http://nxtgauge-rust-catering-services:9115"
|
||||||
PAYMENTS_SERVICE_URL: "http://nxtgauge-rust-payments:9116"
|
PAYMENTS_SERVICE_URL: "http://nxtgauge-rust-payments:9116"
|
||||||
|
|
|
||||||
|
|
@ -36,8 +36,6 @@ resources:
|
||||||
- video-editors-service.yaml
|
- video-editors-service.yaml
|
||||||
- graphic-designers-deployment.yaml
|
- graphic-designers-deployment.yaml
|
||||||
- graphic-designers-service.yaml
|
- graphic-designers-service.yaml
|
||||||
- social-media-managers-deployment.yaml
|
|
||||||
- social-media-managers-service.yaml
|
|
||||||
- fitness-trainers-deployment.yaml
|
- fitness-trainers-deployment.yaml
|
||||||
- fitness-trainers-service.yaml
|
- fitness-trainers-service.yaml
|
||||||
- catering-services-deployment.yaml
|
- catering-services-deployment.yaml
|
||||||
|
|
@ -45,7 +43,3 @@ resources:
|
||||||
- ugc-content-creators-deployment.yaml
|
- ugc-content-creators-deployment.yaml
|
||||||
- ugc-content-creators-service.yaml
|
- ugc-content-creators-service.yaml
|
||||||
- cron-deployment.yaml
|
- cron-deployment.yaml
|
||||||
- openobserve-endpoint-monitor-secret.yaml
|
|
||||||
- openobserve-endpoint-monitor-cronjob.yaml
|
|
||||||
- openobserve-k8s-monitor-rbac.yaml
|
|
||||||
- openobserve-k8s-monitor-cronjob.yaml
|
|
||||||
|
|
|
||||||
|
|
@ -1,51 +0,0 @@
|
||||||
apiVersion: batch/v1
|
|
||||||
kind: CronJob
|
|
||||||
metadata:
|
|
||||||
name: nxtgauge-openobserve-endpoint-monitor
|
|
||||||
namespace: nxtgauge
|
|
||||||
spec:
|
|
||||||
schedule: "*/1 * * * *"
|
|
||||||
concurrencyPolicy: Forbid
|
|
||||||
successfulJobsHistoryLimit: 1
|
|
||||||
failedJobsHistoryLimit: 3
|
|
||||||
jobTemplate:
|
|
||||||
spec:
|
|
||||||
template:
|
|
||||||
spec:
|
|
||||||
restartPolicy: OnFailure
|
|
||||||
containers:
|
|
||||||
- name: endpoint-monitor
|
|
||||||
image: curlimages/curl:8.10.1
|
|
||||||
imagePullPolicy: IfNotPresent
|
|
||||||
envFrom:
|
|
||||||
- secretRef:
|
|
||||||
name: nxtgauge-openobserve-endpoint-monitor-secret
|
|
||||||
command: ["/bin/sh", "-ec"]
|
|
||||||
args:
|
|
||||||
- |
|
|
||||||
post_result() {
|
|
||||||
name="$1"
|
|
||||||
url="$2"
|
|
||||||
checked_at="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
|
|
||||||
out="$(curl -sS -o /dev/null -w '%{http_code} %{time_total}' --max-time 15 "$url" || true)"
|
|
||||||
code="$(printf '%s' "$out" | awk '{print $1}')"
|
|
||||||
total="$(printf '%s' "$out" | awk '{print $2}')"
|
|
||||||
[ -n "$code" ] || code="0"
|
|
||||||
[ -n "$total" ] || total="0"
|
|
||||||
latency_ms="$(awk "BEGIN { printf \"%.0f\", $total * 1000 }")"
|
|
||||||
if [ "$code" -ge 200 ] && [ "$code" -lt 400 ]; then
|
|
||||||
ok="true"
|
|
||||||
else
|
|
||||||
ok="false"
|
|
||||||
fi
|
|
||||||
payload="$(printf '[{"endpoint":"%s","url":"%s","status_code":%s,"ok":%s,"latency_ms":%s,"checked_at":"%s"}]' "$name" "$url" "$code" "$ok" "$latency_ms" "$checked_at")"
|
|
||||||
curl -sS -X POST \
|
|
||||||
"${OO_ENDPOINT}/api/${OO_ORG}/${OO_STREAM}/_json" \
|
|
||||||
-H "Authorization: ${OO_AUTH_HEADER}" \
|
|
||||||
-H "Content-Type: application/json" \
|
|
||||||
-d "$payload" >/dev/null
|
|
||||||
}
|
|
||||||
|
|
||||||
post_result "frontend" "https://test121.nxtgauge.com/"
|
|
||||||
post_result "admin" "https://admin.nxtgauge.com/"
|
|
||||||
post_result "api-health" "https://api.nxtgauge.com/health"
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
apiVersion: v1
|
|
||||||
kind: Secret
|
|
||||||
metadata:
|
|
||||||
name: nxtgauge-openobserve-endpoint-monitor-secret
|
|
||||||
namespace: nxtgauge
|
|
||||||
type: Opaque
|
|
||||||
stringData:
|
|
||||||
OO_ENDPOINT: "http://o2-openobserve-standalone.openobserve.svc.cluster.local:5080"
|
|
||||||
OO_ORG: "default"
|
|
||||||
OO_STREAM: "nxtgauge_endpoints"
|
|
||||||
OO_AUTH_HEADER: "Basic cm9vdEBleGFtcGxlLmNvbTpDb21wbGV4cGFzcyMxMjM="
|
|
||||||
|
|
@ -1,176 +0,0 @@
|
||||||
apiVersion: batch/v1
|
|
||||||
kind: CronJob
|
|
||||||
metadata:
|
|
||||||
name: nxtgauge-openobserve-k8s-monitor
|
|
||||||
namespace: nxtgauge
|
|
||||||
spec:
|
|
||||||
schedule: "*/1 * * * *"
|
|
||||||
concurrencyPolicy: Forbid
|
|
||||||
successfulJobsHistoryLimit: 1
|
|
||||||
failedJobsHistoryLimit: 3
|
|
||||||
jobTemplate:
|
|
||||||
spec:
|
|
||||||
template:
|
|
||||||
spec:
|
|
||||||
serviceAccountName: nxtgauge-openobserve-k8s-monitor
|
|
||||||
restartPolicy: OnFailure
|
|
||||||
containers:
|
|
||||||
- name: k8s-monitor
|
|
||||||
image: python:3.12-alpine
|
|
||||||
imagePullPolicy: IfNotPresent
|
|
||||||
envFrom:
|
|
||||||
- secretRef:
|
|
||||||
name: nxtgauge-openobserve-endpoint-monitor-secret
|
|
||||||
command: ["python", "-c"]
|
|
||||||
args:
|
|
||||||
- |
|
|
||||||
import datetime
|
|
||||||
import json
|
|
||||||
import os
|
|
||||||
import ssl
|
|
||||||
import time
|
|
||||||
import urllib.error
|
|
||||||
import urllib.request
|
|
||||||
|
|
||||||
token_path = "/var/run/secrets/kubernetes.io/serviceaccount/token"
|
|
||||||
ca_path = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
|
|
||||||
with open(token_path, "r", encoding="utf-8") as f:
|
|
||||||
token = f.read().strip()
|
|
||||||
|
|
||||||
kube_ctx = ssl.create_default_context(cafile=ca_path)
|
|
||||||
kube_api = "https://kubernetes.default.svc"
|
|
||||||
|
|
||||||
def kube_get(path: str):
|
|
||||||
req = urllib.request.Request(
|
|
||||||
kube_api + path,
|
|
||||||
headers={"Authorization": f"Bearer {token}"},
|
|
||||||
)
|
|
||||||
with urllib.request.urlopen(req, context=kube_ctx, timeout=20) as resp:
|
|
||||||
return json.loads(resp.read().decode("utf-8"))
|
|
||||||
|
|
||||||
def check_url(name: str, url: str):
|
|
||||||
start = time.time()
|
|
||||||
status = 0
|
|
||||||
ok = False
|
|
||||||
err = ""
|
|
||||||
try:
|
|
||||||
req = urllib.request.Request(url)
|
|
||||||
with urllib.request.urlopen(req, timeout=15) as resp:
|
|
||||||
status = int(getattr(resp, "status", 0) or 0)
|
|
||||||
ok = 200 <= status < 400
|
|
||||||
except urllib.error.HTTPError as e:
|
|
||||||
status = int(getattr(e, "code", 0) or 0)
|
|
||||||
ok = 200 <= status < 400
|
|
||||||
err = str(e)
|
|
||||||
except Exception as e:
|
|
||||||
err = str(e)
|
|
||||||
if name == "registry-svc" and status in (200, 401):
|
|
||||||
ok = True
|
|
||||||
latency_ms = int((time.time() - start) * 1000)
|
|
||||||
return {
|
|
||||||
"kind": "endpoint",
|
|
||||||
"endpoint": name,
|
|
||||||
"url": url,
|
|
||||||
"status_code": status,
|
|
||||||
"ok": ok,
|
|
||||||
"latency_ms": latency_ms,
|
|
||||||
"error": err,
|
|
||||||
}
|
|
||||||
|
|
||||||
now = datetime.datetime.utcnow().replace(microsecond=0).isoformat() + "Z"
|
|
||||||
records = []
|
|
||||||
|
|
||||||
nodes = kube_get("/api/v1/nodes").get("items", [])
|
|
||||||
ready_count = 0
|
|
||||||
for n in nodes:
|
|
||||||
conds = {c.get("type"): c.get("status") for c in n.get("status", {}).get("conditions", [])}
|
|
||||||
ready = conds.get("Ready") == "True"
|
|
||||||
if ready:
|
|
||||||
ready_count += 1
|
|
||||||
records.append(
|
|
||||||
{
|
|
||||||
"kind": "node",
|
|
||||||
"node": n.get("metadata", {}).get("name", "unknown"),
|
|
||||||
"ready": ready,
|
|
||||||
"memory_pressure": conds.get("MemoryPressure"),
|
|
||||||
"disk_pressure": conds.get("DiskPressure"),
|
|
||||||
"pid_pressure": conds.get("PIDPressure"),
|
|
||||||
"network_unavailable": conds.get("NetworkUnavailable"),
|
|
||||||
"checked_at": now,
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
pod_issues = 0
|
|
||||||
pods = kube_get("/api/v1/pods").get("items", [])
|
|
||||||
for p in pods:
|
|
||||||
ns = p.get("metadata", {}).get("namespace", "")
|
|
||||||
name = p.get("metadata", {}).get("name", "")
|
|
||||||
phase = p.get("status", {}).get("phase", "")
|
|
||||||
reason = p.get("status", {}).get("reason", "") or ""
|
|
||||||
message = p.get("status", {}).get("message", "") or ""
|
|
||||||
crash = False
|
|
||||||
|
|
||||||
for cs in p.get("status", {}).get("containerStatuses", []) or []:
|
|
||||||
waiting = (cs.get("state") or {}).get("waiting") or {}
|
|
||||||
if waiting.get("reason") in ("CrashLoopBackOff", "ImagePullBackOff", "ErrImagePull"):
|
|
||||||
crash = True
|
|
||||||
reason = waiting.get("reason", reason)
|
|
||||||
message = waiting.get("message", message)
|
|
||||||
|
|
||||||
if phase in ("Pending", "Failed", "Unknown") or crash:
|
|
||||||
pod_issues += 1
|
|
||||||
records.append(
|
|
||||||
{
|
|
||||||
"kind": "pod",
|
|
||||||
"namespace": ns,
|
|
||||||
"pod": name,
|
|
||||||
"phase": phase,
|
|
||||||
"reason": reason,
|
|
||||||
"message": message[:300],
|
|
||||||
"checked_at": now,
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
endpoints = [
|
|
||||||
("frontend-svc", "http://nxtgauge-frontend-solid.nxtgauge.svc.cluster.local/"),
|
|
||||||
("admin-svc", "http://nxtgauge-admin-solid.nxtgauge.svc.cluster.local/"),
|
|
||||||
("api-gateway-svc", "http://nxtgauge-rust-gateway.nxtgauge.svc.cluster.local:9100/health"),
|
|
||||||
("registry-svc", "http://docker-registry.registry.svc.cluster.local:5000/v2/"),
|
|
||||||
("woodpecker-svc", "http://woodpecker-server.woodpecker.svc.cluster.local/"),
|
|
||||||
("argocd-metrics", "http://argocd-server-metrics.argocd.svc.cluster.local:8083/metrics"),
|
|
||||||
("openobserve-svc", "http://o2-openobserve-standalone.openobserve.svc.cluster.local:5080/healthz"),
|
|
||||||
]
|
|
||||||
for name, url in endpoints:
|
|
||||||
rec = check_url(name, url)
|
|
||||||
rec["checked_at"] = now
|
|
||||||
records.append(rec)
|
|
||||||
|
|
||||||
records.append(
|
|
||||||
{
|
|
||||||
"kind": "cluster_summary",
|
|
||||||
"cluster": "nxtgauge",
|
|
||||||
"node_total": len(nodes),
|
|
||||||
"node_ready": ready_count,
|
|
||||||
"node_not_ready": len(nodes) - ready_count,
|
|
||||||
"pod_issues": pod_issues,
|
|
||||||
"checked_at": now,
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
oo_endpoint = os.environ["OO_ENDPOINT"].rstrip("/")
|
|
||||||
oo_org = os.environ.get("OO_ORG", "default")
|
|
||||||
stream = "nxtgauge_k8s_health"
|
|
||||||
auth_header = os.environ["OO_AUTH_HEADER"]
|
|
||||||
payload = json.dumps(records).encode("utf-8")
|
|
||||||
|
|
||||||
req = urllib.request.Request(
|
|
||||||
f"{oo_endpoint}/api/{oo_org}/{stream}/_json",
|
|
||||||
data=payload,
|
|
||||||
headers={
|
|
||||||
"Content-Type": "application/json",
|
|
||||||
"Authorization": auth_header,
|
|
||||||
},
|
|
||||||
method="POST",
|
|
||||||
)
|
|
||||||
with urllib.request.urlopen(req, timeout=30) as resp:
|
|
||||||
_ = resp.read()
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
apiVersion: v1
|
|
||||||
kind: ServiceAccount
|
|
||||||
metadata:
|
|
||||||
name: nxtgauge-openobserve-k8s-monitor
|
|
||||||
namespace: nxtgauge
|
|
||||||
---
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
kind: ClusterRole
|
|
||||||
metadata:
|
|
||||||
name: nxtgauge-openobserve-k8s-monitor
|
|
||||||
rules:
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["nodes", "pods", "namespaces"]
|
|
||||||
verbs: ["get", "list"]
|
|
||||||
---
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
kind: ClusterRoleBinding
|
|
||||||
metadata:
|
|
||||||
name: nxtgauge-openobserve-k8s-monitor
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: nxtgauge-openobserve-k8s-monitor
|
|
||||||
namespace: nxtgauge
|
|
||||||
roleRef:
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
kind: ClusterRole
|
|
||||||
name: nxtgauge-openobserve-k8s-monitor
|
|
||||||
|
|
@ -1,51 +0,0 @@
|
||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: nxtgauge-rust-social-media-managers
|
|
||||||
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: registry.nxtgauge.com/nxtgauge-rust-social-media-managers
|
|
||||||
imagePullPolicy: Always
|
|
||||||
ports:
|
|
||||||
- containerPort: 9113
|
|
||||||
name: http
|
|
||||||
envFrom:
|
|
||||||
- configMapRef:
|
|
||||||
name: nxtgauge-backend-rust-config
|
|
||||||
- secretRef:
|
|
||||||
name: nxtgauge-backend-rust-secrets
|
|
||||||
readinessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: /health
|
|
||||||
port: 9113
|
|
||||||
initialDelaySeconds: 10
|
|
||||||
periodSeconds: 10
|
|
||||||
timeoutSeconds: 3
|
|
||||||
failureThreshold: 3
|
|
||||||
livenessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: /health
|
|
||||||
port: 9113
|
|
||||||
initialDelaySeconds: 20
|
|
||||||
periodSeconds: 20
|
|
||||||
timeoutSeconds: 3
|
|
||||||
failureThreshold: 5
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
cpu: 50m
|
|
||||||
memory: 64Mi
|
|
||||||
limits:
|
|
||||||
cpu: 500m
|
|
||||||
memory: 256Mi
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
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: 9113
|
|
||||||
targetPort: 9113
|
|
||||||
protocol: TCP
|
|
||||||
|
|
@ -9,44 +9,42 @@ patches:
|
||||||
name: nxtgauge-rust-gateway
|
name: nxtgauge-rust-gateway
|
||||||
images:
|
images:
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-gateway
|
- name: registry.nxtgauge.com/nxtgauge-rust-gateway
|
||||||
newTag: d084491
|
newTag: 09075087f07ef70dc13281944c1f2ce4bf7c2a29
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-users
|
- name: registry.nxtgauge.com/nxtgauge-rust-users
|
||||||
newTag: d084491
|
digest: sha256:376c6aea22b5d898a5d63fa5020201354db19ea20381a61b06cd6c50b1cf22f5
|
||||||
- name: registry.nxtgauge.com/nxtgauge-frontend-solid
|
- name: registry.nxtgauge.com/nxtgauge-frontend-solid
|
||||||
newTag: high-performance-latest
|
newTag: high-performance-latest
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-companies
|
- name: registry.nxtgauge.com/nxtgauge-rust-companies
|
||||||
newTag: high-performance-latest
|
digest: sha256:3b2f44f7ea5c76ebb55e50bb4fef3afef2c4122645cef2a3d289bd4eb4107798
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-job-seekers
|
- name: registry.nxtgauge.com/nxtgauge-rust-job-seekers
|
||||||
newTag: high-performance-latest
|
digest: sha256:f0f21fba7298e6246e90a08ca5ef28c2eb1f21b79f73e82659baf37104fcb516
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-jobs
|
- name: registry.nxtgauge.com/nxtgauge-rust-jobs
|
||||||
newTag: high-performance-latest
|
digest: sha256:6d5a3902945196ead6f379497a7da6c1cd8185e6184479b789911440effafae8
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-leads
|
- name: registry.nxtgauge.com/nxtgauge-rust-leads
|
||||||
newTag: high-performance-latest
|
digest: sha256:c3a747091de49b69282679c1de33db97d9270d9d6f68272e7ec46655f141cb25
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-customers
|
- name: registry.nxtgauge.com/nxtgauge-rust-customers
|
||||||
newTag: high-performance-latest
|
digest: sha256:cfe62ab2a8e7327bf4c26e707dde035668f60de81315d3b36d4a51dc7273e5c7
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-payments
|
- name: registry.nxtgauge.com/nxtgauge-rust-payments
|
||||||
newTag: high-performance-latest
|
digest: sha256:80f487f8ad6dc58c467de96faad72cc534a94a08426600c0a59b1d530972964d
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-employees
|
- name: registry.nxtgauge.com/nxtgauge-rust-employees
|
||||||
newTag: high-performance-latest
|
digest: sha256:f7fadb1da91199a891687439fc895dbac99b2f18e4ea0321d7964a14339b1dc3
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-photographers
|
- name: registry.nxtgauge.com/nxtgauge-rust-photographers
|
||||||
newTag: high-performance-latest
|
digest: sha256:33fda308731a6283005448d25c541b817d1b3f902b27a00f9ce34d5a5c360981
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-makeup-artists
|
- name: registry.nxtgauge.com/nxtgauge-rust-makeup-artists
|
||||||
newTag: high-performance-latest
|
digest: sha256:06d448448ee4888ab4c4d3556ea779ccbe976eba86570c1f61baa9c984ede7a2
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-tutors
|
- name: registry.nxtgauge.com/nxtgauge-rust-tutors
|
||||||
newTag: high-performance-latest
|
digest: sha256:4af3a1a2e91f0b62ed43fbbe952c51f746e4f497054836504ae8ca4d1a53f974
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-developers
|
- name: registry.nxtgauge.com/nxtgauge-rust-developers
|
||||||
newTag: high-performance-latest
|
digest: sha256:14b3de1f40ffef0155e0c1b4b45cc4479da52acb29a1c07cc13987aebab9faf7
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-video-editors
|
- name: registry.nxtgauge.com/nxtgauge-rust-video-editors
|
||||||
newTag: high-performance-latest
|
digest: sha256:2f1ba4d769b1780ce67e5dc58307830b6f2cc7252a28b8c710fdef7832c3067a
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-graphic-designers
|
- name: registry.nxtgauge.com/nxtgauge-rust-graphic-designers
|
||||||
newTag: high-performance-latest
|
digest: sha256:824609ac1d31e590802ecb05574e7cb84c3f0fb0074ffee1bce618735642e70b
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-social-media-managers
|
|
||||||
newTag: high-performance-latest
|
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-fitness-trainers
|
- name: registry.nxtgauge.com/nxtgauge-rust-fitness-trainers
|
||||||
newTag: high-performance-latest
|
digest: sha256:3e12ba4e859e3e553231046c34886370fbe220ab5d1ac324123df429e491e09d
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-catering-services
|
- name: registry.nxtgauge.com/nxtgauge-rust-catering-services
|
||||||
newTag: high-performance-latest
|
digest: sha256:5f16e93ff07f2b1989684a477fdc0b078a96e7ad222629624f3f3a0d80d22234
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-ugc-content-creators
|
- name: registry.nxtgauge.com/nxtgauge-rust-ugc-content-creators
|
||||||
newTag: high-performance-latest
|
digest: sha256:3f1641a9e602623d5fb2db102ce50be33f23f575888fd02a8469e391d32cba52
|
||||||
- name: registry.nxtgauge.com/nxtgauge-rust-cron
|
- name: registry.nxtgauge.com/nxtgauge-rust-cron
|
||||||
newTag: high-performance-latest
|
digest: sha256:529f6767efe43a101b2aa5d3e2f52d4855387a626bcf77bc7f4e192d09b86ec1
|
||||||
|
|
|
||||||
|
|
@ -10,10 +10,10 @@ spec:
|
||||||
ingressClassName: traefik
|
ingressClassName: traefik
|
||||||
tls:
|
tls:
|
||||||
- hosts:
|
- hosts:
|
||||||
- test121.nxtgauge.com
|
- test111.nxtgauge.com
|
||||||
secretName: test121-tls
|
secretName: test111-tls
|
||||||
rules:
|
rules:
|
||||||
- host: test121.nxtgauge.com
|
- host: test111.nxtgauge.com
|
||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
- path: /
|
- path: /
|
||||||
|
|
|
||||||
|
|
@ -6,4 +6,4 @@ patchesStrategicMerge:
|
||||||
- replicas-patch.yaml
|
- replicas-patch.yaml
|
||||||
images:
|
images:
|
||||||
- name: registry.nxtgauge.com/nxtgauge-frontend-solid
|
- name: registry.nxtgauge.com/nxtgauge-frontend-solid
|
||||||
newTag: d084491
|
newTag: f18c89d7fe73248a4cbe6a434dd243d88a25361b
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,9 @@ metadata:
|
||||||
name: nxtgauge-admin-solid
|
name: nxtgauge-admin-solid
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
annotations:
|
annotations:
|
||||||
argocd-image-updater.argoproj.io/image-list: admin=registry.nxtgauge.com/nxtgauge-admin-solid:high-performance-latest
|
argocd-image-updater.argoproj.io/image-list: admin=registry.nxtgauge.com/nxtgauge-admin-solid:ed368607182cba2d57b2987849bf887a9714da53
|
||||||
argocd-image-updater.argoproj.io/admin.update-strategy: digest
|
argocd-image-updater.argoproj.io/admin.update-strategy: latest
|
||||||
argocd-image-updater.argoproj.io/admin.allow-tags: regexp:^high-performance-latest$
|
argocd-image-updater.argoproj.io/admin.allow-tags: regexp:^ed36860
|
||||||
argocd-image-updater.argoproj.io/write-back-method: argocd
|
argocd-image-updater.argoproj.io/write-back-method: argocd
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,8 @@ metadata:
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
annotations:
|
annotations:
|
||||||
argocd-image-updater.argoproj.io/image-list: >-
|
argocd-image-updater.argoproj.io/image-list: >-
|
||||||
gateway=registry.nxtgauge.com/nxtgauge-rust-gateway:d084491,
|
gateway=registry.nxtgauge.com/nxtgauge-rust-gateway:09075087f07ef70dc13281944c1f2ce4bf7c2a29,
|
||||||
users=registry.nxtgauge.com/nxtgauge-rust-users:d084491,
|
users=registry.nxtgauge.com/nxtgauge-rust-users:high-performance-latest,
|
||||||
companies=registry.nxtgauge.com/nxtgauge-rust-companies:high-performance-latest,
|
companies=registry.nxtgauge.com/nxtgauge-rust-companies:high-performance-latest,
|
||||||
job-seekers=registry.nxtgauge.com/nxtgauge-rust-job-seekers:high-performance-latest,
|
job-seekers=registry.nxtgauge.com/nxtgauge-rust-job-seekers:high-performance-latest,
|
||||||
customers=registry.nxtgauge.com/nxtgauge-rust-customers:high-performance-latest,
|
customers=registry.nxtgauge.com/nxtgauge-rust-customers:high-performance-latest,
|
||||||
|
|
@ -23,9 +23,9 @@ metadata:
|
||||||
catering-services=registry.nxtgauge.com/nxtgauge-rust-catering-services:high-performance-latest,
|
catering-services=registry.nxtgauge.com/nxtgauge-rust-catering-services:high-performance-latest,
|
||||||
ugc-content-creators=registry.nxtgauge.com/nxtgauge-rust-ugc-content-creators:high-performance-latest,
|
ugc-content-creators=registry.nxtgauge.com/nxtgauge-rust-ugc-content-creators:high-performance-latest,
|
||||||
cron=registry.nxtgauge.com/nxtgauge-rust-cron:high-performance-latest
|
cron=registry.nxtgauge.com/nxtgauge-rust-cron:high-performance-latest
|
||||||
argocd-image-updater.argoproj.io/gateway.update-strategy: digest
|
argocd-image-updater.argoproj.io/gateway.update-strategy: latest
|
||||||
argocd-image-updater.argoproj.io/gateway.allow-tags: regexp:^high-performance-latest$
|
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.update-strategy: latest
|
||||||
argocd-image-updater.argoproj.io/users.allow-tags: regexp:^high-performance-latest$
|
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.update-strategy: digest
|
||||||
argocd-image-updater.argoproj.io/companies.allow-tags: regexp:^high-performance-latest$
|
argocd-image-updater.argoproj.io/companies.allow-tags: regexp:^high-performance-latest$
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,9 @@ metadata:
|
||||||
name: nxtgauge-frontend-solid
|
name: nxtgauge-frontend-solid
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
annotations:
|
annotations:
|
||||||
argocd-image-updater.argoproj.io/image-list: frontend=registry.nxtgauge.com/nxtgauge-frontend-solid:bb6db6c
|
argocd-image-updater.argoproj.io/image-list: frontend=registry.nxtgauge.com/nxtgauge-frontend-solid:f18c89d7fe73248a4cbe6a434dd243d88a25361b
|
||||||
argocd-image-updater.argoproj.io/frontend.update-strategy: digest
|
argocd-image-updater.argoproj.io/frontend.update-strategy: latest
|
||||||
argocd-image-updater.argoproj.io/frontend.allow-tags: regexp:^high-performance-latest$
|
argocd-image-updater.argoproj.io/frontend.allow-tags: regexp:^f18c89d
|
||||||
argocd-image-updater.argoproj.io/write-back-method: argocd
|
argocd-image-updater.argoproj.io/write-back-method: argocd
|
||||||
spec:
|
spec:
|
||||||
project: default
|
project: default
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue