Files
zeekayandHanzo Dev 425b96f66e the cluster is named, not addressed by a gone account
Every provenance line and manifest still named a DigitalOcean context, and
the ARC values described a pool that died with it. A cluster gets a name
here; the address it answers on belongs to the private record.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-16 16:15:33 -07:00

124 lines
3.1 KiB
YAML

# Generated from the live lux-bridge/lux-bridge Deployment on lux-k8s
# by hack/live2values.py. Live is the source: a repo of hand-applied
# manifests has unknown currency, the running fleet does not.
replicas: 1
selectorLabels:
app: lux-bridge
containerName: bridge
image:
repository: ghcr.io/luxfi/bridge
# Held at e377ac59 because main does not start here. cmd/bridge/Dockerfile
# go:embeds the SPA, so the tab icon only reaches this site with a new
# binary — and sha-2181f76-server exits on boot: it bootstraps a 10-wallet
# MPC release pool before serving, mchain answers keygen with 401, and the
# process treats that as fatal. e377ac59 predates that bootstrap. The icon
# here waits on the MPC credential, not on another build.
tag: e377ac59
pullPolicy: Always
labels:
component: api
env:
- name: BRIDGE_ADDR
value: :8080
- name: BRIDGE_CONFIG
value: /etc/bridge/networks.yaml
- name: BRIDGE_DATA_DIR
value: /var/lib/lux-bridge
- name: BRIDGE_API_HOST
value: https://bridge.lux.network
- name: BRIDGE_BACKEND_URL
- name: BRIDGE_BCHAIN_URL
- name: BRIDGE_MPC_URL
value: http://mpc-api-svc.lux-bridge.svc:8081
- name: BRIDGE_MPC_TOKEN
valueFrom:
secretKeyRef:
key: MPC_API_TOKEN
name: bridge-mpc-token
- name: BRIDGE_MPC_ORG_ID
value: bridge
- name: BRIDGE_PROFILE
value: classical-compat
- name: BRIDGE_COINGECKO
value: 'true'
- name: BRIDGE_ENV
value: mainnet
resources:
limits:
cpu: 500m
memory: 1Gi
requests:
cpu: 100m
memory: 256Mi
volumeMounts:
- mountPath: /etc/bridge
name: config
readOnly: true
- mountPath: /var/lib/lux-bridge
name: data
- mountPath: /tmp
name: tmp
livenessProbe:
failureThreshold: 3
httpGet:
path: /health
port: http
scheme: HTTP
initialDelaySeconds: 5
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
readinessProbe:
failureThreshold: 2
httpGet:
path: /health
port: http
scheme: HTTP
initialDelaySeconds: 2
periodSeconds: 5
successThreshold: 1
timeoutSeconds: 1
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: true
ports:
- containerPort: 8080
name: http
servicePort: 80
targetPort: http
volumes:
- configMap:
name: lux-bridge-config
name: config
- name: data
persistentVolumeClaim:
claimName: lux-bridge-data
- emptyDir:
sizeLimit: 50Mi
name: tmp
fsGroup: 65532
podSecurityContext:
runAsUser: 65532
runAsGroup: 65532
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
strategy: Recreate
topologySpread:
enabled: false
lifecycle: null
terminationGracePeriodSeconds: 30
imagePullSecrets: []
# Enforcement switch, read by the lux-fleet ApplicationSet's templatePatch —
# not by the chart. Every other Application in this namespace already carries
# it; this one did not, so the tag written here was never what ran. Verified
# against live first, as the ApplicationSet asks: helm template of this file
# against the running Deployment differs in exactly one field, HANZO_VERSION,
# which the chart injects from the tag. prune stays off.
cd:
automated: false