Files
zeekayandHanzo AI 15131f6af4
CI/CD / render (push) Waiting to run
chain letters are lowercase
The primary-network chains answer to either case; one spelling beats two.
/v1/chain/c/rpc, /v1/chain/p, /v1/chain/x across the estate.

Co-authored-by: Hanzo AI <[email protected]>
2026-09-08 15:23:20 -07:00

241 lines
6.3 KiB
YAML

###############################################################################
# Lux Chain Indexer (devnet)
# ONE pod, ALL chains, SQLite-only (no Postgres anywhere).
# Per-chain storage: /data/{slug}/(query|kv) (see chains.yaml below)
# HTTP: :8091 (routes per-chain at /v1/indexer/{slug}/*; default chain at /v1/indexer/*)
###############################################################################
---
apiVersion: v1
kind: ConfigMap
metadata:
name: lux-indexer-config
namespace: lux-devnet
labels:
app: lux-indexer
network: devnet
data:
# Per-chain blockchain IDs match the devnet chain-aliases ConfigMap
# (~/work/lux/universe/k8s/lux-devnet/configmap.yaml chain-aliases):
# hanzo: 2XSToxnvSMsmrXQhAKzbiqTquveDK8PdvJP9166hcLSC1hhr3E (chainId 36964)
# zoo: 2jhVoHB5z97hSGssR8GtiFaFVuaFBH5TJeVMVjiw2uGg3gbqpu (chainId 200202)
# pars: SbgsF19zEPXnUgrShZHLSXv2bDw9xB3Hq2GnBnHLt5CcWnc8a (chainId 494951)
# spc: 2YmQ1abSAp2WVGzqrSW3GZ8ADXdLevLAdEnJQq6s1ZUc28AS52 (chainId 36912)
chains.yaml: |
data_dir: /data
http_addr: :8091
chains:
- slug: cchain
name: 'Lux C-Chain (devnet)'
type: evm
chain_id: 96367
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/c/rpc
coin: LUX
enabled: true
default: true
graph:
enabled: true
schema: amm
- slug: pchain
name: 'P-Chain (devnet)'
type: linear
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/p
coin: LUX
enabled: true
- slug: xchain
name: 'X-Chain (devnet)'
type: dag
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/x
coin: LUX
enabled: true
- slug: achain
name: 'A-Chain (devnet)'
type: dag
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/A
coin: LUX
enabled: true
- slug: qchain
name: 'Q-Chain (devnet)'
type: dag
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/Q
coin: LUX
enabled: true
- slug: tchain
name: 'T-Chain (devnet)'
type: dag
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/T
coin: LUX
enabled: true
- slug: zchain
name: 'Z-Chain (devnet)'
type: dag
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/Z
coin: LUX
enabled: true
- slug: hanzo
name: 'Hanzo (devnet)'
type: evm
chain_id: 36964
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/2XSToxnvSMsmrXQhAKzbiqTquveDK8PdvJP9166hcLSC1hhr3E/rpc
coin: AI
enabled: true
graph:
enabled: true
schema: amm
- slug: zoo
name: 'Zoo (devnet)'
type: evm
chain_id: 200202
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/2jhVoHB5z97hSGssR8GtiFaFVuaFBH5TJeVMVjiw2uGg3gbqpu/rpc
coin: ZOO
enabled: true
graph:
enabled: true
schema: amm
- slug: pars
name: 'Pars (devnet)'
type: evm
chain_id: 494951
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/SbgsF19zEPXnUgrShZHLSXv2bDw9xB3Hq2GnBnHLt5CcWnc8a/rpc
coin: PARS
enabled: true
graph:
enabled: true
schema: amm
- slug: spc
name: 'SPC (devnet)'
type: evm
chain_id: 36912
rpc: http://luxd-headless.lux-devnet.svc.cluster.local:9650/v1/chain/2YmQ1abSAp2WVGzqrSW3GZ8ADXdLevLAdEnJQq6s1ZUc28AS52/rpc
coin: SPC
enabled: true
graph:
enabled: true
schema: amm
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lux-indexer-data
namespace: lux-devnet
labels:
app: lux-indexer
network: devnet
spec:
accessModes: [ReadWriteOnce]
resources:
requests:
storage: 100Gi
storageClassName: do-block-storage-retain
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: lux-indexer
namespace: lux-devnet
labels:
app: lux-indexer
network: devnet
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: lux-indexer
network: devnet
template:
metadata:
labels:
app: lux-indexer
network: devnet
spec:
securityContext:
fsGroup: 65532
runAsUser: 65532
runAsGroup: 65532
imagePullSecrets:
- name: ghcr-luxfi
containers:
- name: indexerd
image: ghcr.io/luxfi/indexer:1.4.4
imagePullPolicy: IfNotPresent
args:
- "-config=/etc/lux-indexer/chains.yaml"
- "-data=/data"
- "-http=:8091"
env:
- name: DATA_DIR
value: /data
- name: HTTP_ADDR
value: ":8091"
ports:
- name: http
containerPort: 8091
volumeMounts:
- name: config
mountPath: /etc/lux-indexer
readOnly: true
- name: data
mountPath: /data
resources:
requests:
cpu: 200m
memory: 512Mi
limits:
cpu: "2"
memory: 4Gi
readinessProbe:
httpGet:
path: /health
port: http
initialDelaySeconds: 15
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 3
livenessProbe:
httpGet:
path: /health
port: http
initialDelaySeconds: 60
periodSeconds: 30
timeoutSeconds: 10
failureThreshold: 5
volumes:
- name: config
configMap:
name: lux-indexer-config
- name: data
persistentVolumeClaim:
claimName: lux-indexer-data
---
apiVersion: v1
kind: Service
metadata:
name: lux-indexer
namespace: lux-devnet
labels:
app: lux-indexer
network: devnet
spec:
type: ClusterIP
selector:
app: lux-indexer
network: devnet
ports:
- name: http
port: 8091
targetPort: 8091
protocol: TCP