Files
nchain/config/samples/cloud-multi-brand.yaml
zeekay 9bb2c40c93 feat(cloud): production white-label domains — lux.cloud, zoo.cloud, bootno.de, web3.hanzo.ai
Set the multi-brand Cloud CR to the go-live domains: hanzo=web3.hanzo.ai,
lux=lux.cloud, zoo=zoo.cloud, + new bootnode=bootno.de (the web3-backend-in-a-box
product), pars retained. One white-label Cloud (hostname-routed) on the nchain
Cloud controller (api+web, HPA, multi-host ingress, KMS-synced secrets, TLS).
2026-06-27 21:29:03 +00:00

97 lines
2.1 KiB
YAML

apiVersion: nchain.hanzo.ai/v1alpha1
kind: Cloud
metadata:
name: web3-platform
namespace: bootnode
spec:
brands:
- name: hanzo
domain: web3.hanzo.ai
iam:
url: https://hanzo.id
org: HANZO
clientID: hanzo-web3
- name: lux
domain: lux.cloud
iam:
url: https://lux.id
org: LUX
clientID: lux-web3
- name: zoo
domain: zoo.cloud
iam:
url: https://zoolabs.id
org: ZOO
clientID: zoo-web3
- name: bootnode
domain: bootno.de
iam:
url: https://hanzo.id
org: HANZO
clientID: hanzo-bootnode
- name: pars
domain: web3.pars.id
iam:
url: https://pars.id
org: PARS
clientID: pars-web3
api:
replicas: 3
image:
repository: ghcr.io/hanzoai/bootnode
tag: sha-1ba1f09-amd64-api
resources:
requests:
cpu: 500m
memory: 512Mi
limits:
cpu: "2"
memory: 2Gi
autoscaling:
enabled: true
minReplicas: 3
maxReplicas: 20
targetCPU: 70
targetMemory: 80
web:
replicas: 2
image:
# Pushed under the bootnode package with -web tag suffix because GHCR
# 403s on first-push package creation for ghcr.io/hanzoai/bootnode-web.
# Keep deployment image pinned to a sha (semver-only deploy policy).
repository: ghcr.io/hanzoai/bootnode
tag: sha-1ba1f09-amd64-web
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 10
targetCPU: 70
database:
credentialsSecret: bootnode-secrets
features:
wallets: true
bundler: true
nfts: true
gas: true
webhooks: true
ingress:
enabled: true
tls: true
clusterIssuer: letsencrypt-prod
kmsSecrets:
- hostAPI: https://kms.hanzo.ai/api
projectSlug: bootnode
envSlug: production
secretsPath: /
credentialsRef:
name: kms-auth
managedSecretName: bootnode-secrets
resyncInterval: 60