Files
zeekay 37225b81ae infra: import lux-targeted manifests from hanzo universe
Per separation-of-concerns: hanzo universe was holding 11 manifests
that target lux-k8s. Moved them here where they belong.

Imported into k8s/lux-k8s/:
  - agnost/, api-gateway/, bootnode-lux/, bridge/, exchange/,
    explorer/, operator/  (unique to hanzo universe, fresh copies)
  - gateway/  (hanzo had newer pins than lux's local copy)

Skipped: validators/ — lux universe already has the newer
(luxd v1.27.4) version. Hanzo's older v1.23.31 copy is being
dropped, not merged.

Imported into k8s/:
  - status/{deployment,configmap,ingressroute}.yaml
    (Hanzo status SPA in lux-system ns on lux-k8s)
  - nchain/crs/mainnet.yaml
    (Network CR for lux-mainnet ns on lux-k8s)
2026-05-22 20:36:19 -07:00

103 lines
2.0 KiB
YAML

# Lux Exchange — Uniswap V2/V3 DEX
# Deployed at exchange.lux.network
# Image: ghcr.io/luxfi/exchange:0.1.0 (Vite + hanzoai/static)
---
apiVersion: v1
kind: Namespace
metadata:
name: lux-exchange
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: exchange
namespace: lux-exchange
labels:
app: exchange
spec:
replicas: 2
selector:
matchLabels:
app: exchange
template:
metadata:
labels:
app: exchange
spec:
imagePullSecrets:
- name: ghcr-luxfi
containers:
- name: exchange
image: ghcr.io/luxfi/exchange:5.147.4
imagePullPolicy: Always
ports:
- containerPort: 3000
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
cpu: 200m
memory: 256Mi
readinessProbe:
httpGet:
path: /
port: 3000
initialDelaySeconds: 5
periodSeconds: 10
livenessProbe:
httpGet:
path: /
port: 3000
initialDelaySeconds: 10
periodSeconds: 30
---
apiVersion: v1
kind: Service
metadata:
name: exchange
namespace: lux-exchange
spec:
type: ClusterIP
ports:
- port: 3000
targetPort: 3000
selector:
app: exchange
---
apiVersion: hanzo.ai/v1alpha1
kind: IngressRoute
metadata:
name: exchange
namespace: lux-exchange
spec:
entryPoints:
- websecure
routes:
- match: Host(`exchange.lux.network`)
kind: Rule
services:
- name: exchange
port: 3000
- match: Host(`lux.exchange`)
kind: Rule
services:
- name: exchange
port: 3000
tls:
secretName: exchange-lux-network-tls
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: exchange-lux-network-tls
namespace: lux-exchange
spec:
secretName: exchange-lux-network-tls
issuerRef:
name: letsencrypt-prod
kind: ClusterIssuer
dnsNames:
- exchange.lux.network
- lux.exchange