gcloud-lab/apps/base/customer1/trading-platform/execute-service/deployment.yaml
Sirius Devops abecefe0e1 fix(execute-service): update startupProbe to /health/ready with 30 failureThreshold
The service was 'running but not ready' because:
- startupProbe used /health (always-ok) with only failureThreshold: 6 (~30s grace)
- Executor initialization (Hyperliquid SDK network calls + Solana client) takes longer

Now uses /health/ready (checks actual executor state) with failureThreshold: 30 (~5min grace), matching the pattern used for data-service and dashboard.

Also updated Helm template for consistency.
2026-05-25 06:09:20 +00:00

84 lines
2.3 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: trading-execute-service
namespace: customer1
labels:
app: trading-execute-service
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: trading-execute-service
template:
metadata:
labels:
app: trading-execute-service
annotations:
checksum/config: trading-execute-service-config
spec:
terminationGracePeriodSeconds: 30
securityContext:
runAsNonRoot: true
runAsUser: 1000
fsGroup: 1000
containers:
- name: execute-service
image: ghcr.io/sirius0xdev/trading-execute-service:latest
imagePullPolicy: Always
ports:
- containerPort: 8002
name: http
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop:
- ALL
envFrom:
- configMapRef:
name: trading-execute-service-config
env:
- name: EXECUTE_DB_USER
valueFrom:
secretKeyRef:
name: trading-db-credentials
key: username
- name: EXECUTE_DB_PASSWORD
valueFrom:
secretKeyRef:
name: trading-db-credentials
key: password
- name: JWT_SECRET_KEY
valueFrom:
secretKeyRef:
name: execute-service-jwt-secret
key: JWT_SECRET_KEY
startupProbe:
httpGet:
path: /health/ready
port: 8002
initialDelaySeconds: 15
periodSeconds: 10
failureThreshold: 30
livenessProbe:
httpGet:
path: /health
port: 8002
initialDelaySeconds: 30
periodSeconds: 30
readinessProbe:
httpGet:
path: /health/ready
port: 8002
initialDelaySeconds: 5
periodSeconds: 10