the explorer frontends declare the environment they run with
CI/CD / render (push) Failing after 0s
CI/CD / render (push) Failing after 0s
Each of these mounts a configmap named explore-env-<chain> that was declared nowhere: the deployments referenced it, nothing created it, and every frontend sat in CreateContainerConfigError. The same shape as the chain nodes, whose genesis and startup config never migrated either. The values are the RUNTIME set only. luxfi/explore's .env.example.lux mixes build-time and runtime variables in one file — NEXT_PUBLIC_BRAND is read by `pnpm build`, and the branding, marketplace and homepage URLs were dropped from the image — so feeding that file to a container fails the validator on congruity, then on deprecation, then on unknown names. Co-authored-by: Hanzo AI <[email protected]>
This commit is contained in:
@@ -1,11 +1,10 @@
|
||||
# CD applies this file within ~90s, so THIS is the source now, not the cluster.
|
||||
# Pins move in the release (luxfi/explore .hanzo/workflows/release.yml: one
|
||||
# build, byte-identical copies per org, all five brands moved together), never
|
||||
# by hand — an automated pin BELOW what is running is a rollback that applies
|
||||
# itself, and every one of these files trailed the cluster before this bump.
|
||||
# The RUNTIME environment, and only that. luxfi/explore's .env.example.lux
|
||||
# mixes build-time and runtime variables in one file -- NEXT_PUBLIC_BRAND is
|
||||
# read by `pnpm build`, and the branding, marketplace and homepage URLs were
|
||||
# dropped from the image -- so feeding that file to the container fails the
|
||||
# validator outright. These are the variables v2.8.1-lux accepts.
|
||||
cd:
|
||||
automated: false
|
||||
|
||||
replicas: 1
|
||||
selectorLabels:
|
||||
app: explore-fe
|
||||
@@ -63,12 +62,6 @@ startupProbe:
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
# The live container port is named `ui` and all three probes address it by that
|
||||
# name. Renaming it to `http` leaves every probe pointing at a port that does
|
||||
# not exist, so the pod never goes Ready — 13 explorer front-ends at once.
|
||||
# One values entry names the container port AND the Service port, so the
|
||||
# Service port is renamed http -> ui with it; every Ingress backend addresses
|
||||
# that Service by NUMBER (80), so nothing resolves it by name.
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
name: ui
|
||||
@@ -82,3 +75,20 @@ topologySpread:
|
||||
enabled: false
|
||||
lifecycle: null
|
||||
terminationGracePeriodSeconds: 30
|
||||
configMaps:
|
||||
- name: explore-env-hanzo
|
||||
data:
|
||||
NEXT_PUBLIC_NETWORK_NAME: Hanzo Network
|
||||
NEXT_PUBLIC_NETWORK_SHORT_NAME: HANZO
|
||||
NEXT_PUBLIC_NETWORK_ID: '36963'
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_NAME: HANZO
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL: HANZO
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS: '18'
|
||||
NEXT_PUBLIC_NETWORK_RPC_URL: https://api.lux.network/v1/chain/c/rpc
|
||||
NEXT_PUBLIC_API_HOST: api-explore.lux.network
|
||||
NEXT_PUBLIC_API_PROTOCOL: https
|
||||
NEXT_PUBLIC_API_BASE_PATH: /
|
||||
NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL: wss
|
||||
NEXT_PUBLIC_APP_HOST: explore.lux.network
|
||||
NEXT_PUBLIC_APP_PROTOCOL: https
|
||||
NEXT_PUBLIC_IS_TESTNET: 'false'
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
# CD applies this file within ~90s, so THIS is the source now, not the cluster.
|
||||
# Pins move in the release (luxfi/explore .hanzo/workflows/release.yml: one
|
||||
# build, byte-identical copies per org, all five brands moved together), never
|
||||
# by hand — an automated pin BELOW what is running is a rollback that applies
|
||||
# itself, and every one of these files trailed the cluster before this bump.
|
||||
# The RUNTIME environment, and only that. luxfi/explore's .env.example.lux
|
||||
# mixes build-time and runtime variables in one file -- NEXT_PUBLIC_BRAND is
|
||||
# read by `pnpm build`, and the branding, marketplace and homepage URLs were
|
||||
# dropped from the image -- so feeding that file to the container fails the
|
||||
# validator outright. These are the variables v2.8.1-lux accepts.
|
||||
cd:
|
||||
automated: false
|
||||
|
||||
replicas: 1
|
||||
selectorLabels:
|
||||
app: explore-fe
|
||||
@@ -14,16 +13,6 @@ selectorLabels:
|
||||
containerName: explore
|
||||
image:
|
||||
repository: ghcr.io/luxfi/explore
|
||||
# v2.8.1-lux. This is the deployment that SERVES explore.lux.network — the
|
||||
# ingress points at explorer:80, and the Go explorer proxies the brand host
|
||||
# here. The `explore` sidecar inside the explorer pod is NOT the one on the
|
||||
# page; bumping it changed nothing visible, which is how this was found.
|
||||
#
|
||||
# Moved by hand this once because the release fanout did not move it: the
|
||||
# v2.8.1-lux fanout job reported success (it copies the image per org) and left
|
||||
# every pin at v1.1.30. The hazard this file warns about is a pin BELOW what is
|
||||
# running, which applies itself as a rollback; this is the opposite, forward to
|
||||
# an image proven pullable in-cluster.
|
||||
tag: v2.8.1-lux
|
||||
digest: sha256:c4a75d036d7d7f93b870f7c1d3b9876b3b1c3e34063c11b90f68189554706193
|
||||
pullPolicy: IfNotPresent
|
||||
@@ -77,12 +66,6 @@ startupProbe:
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
# The live container port is named `ui` and all three probes address it by that
|
||||
# name. Renaming it to `http` leaves every probe pointing at a port that does
|
||||
# not exist, so the pod never goes Ready — 13 explorer front-ends at once.
|
||||
# One values entry names the container port AND the Service port, so the
|
||||
# Service port is renamed http -> ui with it; every Ingress backend addresses
|
||||
# that Service by NUMBER (80), so nothing resolves it by name.
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
name: ui
|
||||
@@ -96,3 +79,20 @@ topologySpread:
|
||||
enabled: false
|
||||
lifecycle: null
|
||||
terminationGracePeriodSeconds: 30
|
||||
configMaps:
|
||||
- name: explore-env-lux
|
||||
data:
|
||||
NEXT_PUBLIC_NETWORK_NAME: Lux Network
|
||||
NEXT_PUBLIC_NETWORK_SHORT_NAME: LUX
|
||||
NEXT_PUBLIC_NETWORK_ID: '96369'
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_NAME: LUX
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL: LUX
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS: '18'
|
||||
NEXT_PUBLIC_NETWORK_RPC_URL: https://api.lux.network/v1/chain/c/rpc
|
||||
NEXT_PUBLIC_API_HOST: api-explore.lux.network
|
||||
NEXT_PUBLIC_API_PROTOCOL: https
|
||||
NEXT_PUBLIC_API_BASE_PATH: /
|
||||
NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL: wss
|
||||
NEXT_PUBLIC_APP_HOST: explore.lux.network
|
||||
NEXT_PUBLIC_APP_PROTOCOL: https
|
||||
NEXT_PUBLIC_IS_TESTNET: 'false'
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
# CD applies this file within ~90s, so THIS is the source now, not the cluster.
|
||||
# Pins move in the release (luxfi/explore .hanzo/workflows/release.yml: one
|
||||
# build, byte-identical copies per org, all five brands moved together), never
|
||||
# by hand — an automated pin BELOW what is running is a rollback that applies
|
||||
# itself, and every one of these files trailed the cluster before this bump.
|
||||
# The RUNTIME environment, and only that. luxfi/explore's .env.example.lux
|
||||
# mixes build-time and runtime variables in one file -- NEXT_PUBLIC_BRAND is
|
||||
# read by `pnpm build`, and the branding, marketplace and homepage URLs were
|
||||
# dropped from the image -- so feeding that file to the container fails the
|
||||
# validator outright. These are the variables v2.8.1-lux accepts.
|
||||
cd:
|
||||
automated: false
|
||||
|
||||
replicas: 1
|
||||
selectorLabels:
|
||||
app: explore-fe
|
||||
@@ -63,12 +62,6 @@ startupProbe:
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
# The live container port is named `ui` and all three probes address it by that
|
||||
# name. Renaming it to `http` leaves every probe pointing at a port that does
|
||||
# not exist, so the pod never goes Ready — 13 explorer front-ends at once.
|
||||
# One values entry names the container port AND the Service port, so the
|
||||
# Service port is renamed http -> ui with it; every Ingress backend addresses
|
||||
# that Service by NUMBER (80), so nothing resolves it by name.
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
name: ui
|
||||
@@ -82,3 +75,20 @@ topologySpread:
|
||||
enabled: false
|
||||
lifecycle: null
|
||||
terminationGracePeriodSeconds: 30
|
||||
configMaps:
|
||||
- name: explore-env-pars
|
||||
data:
|
||||
NEXT_PUBLIC_NETWORK_NAME: Pars Network
|
||||
NEXT_PUBLIC_NETWORK_SHORT_NAME: PARS
|
||||
NEXT_PUBLIC_NETWORK_ID: '36970'
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_NAME: PARS
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL: PARS
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS: '18'
|
||||
NEXT_PUBLIC_NETWORK_RPC_URL: https://api.lux.network/v1/chain/c/rpc
|
||||
NEXT_PUBLIC_API_HOST: api-explore.lux.network
|
||||
NEXT_PUBLIC_API_PROTOCOL: https
|
||||
NEXT_PUBLIC_API_BASE_PATH: /
|
||||
NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL: wss
|
||||
NEXT_PUBLIC_APP_HOST: explore.lux.network
|
||||
NEXT_PUBLIC_APP_PROTOCOL: https
|
||||
NEXT_PUBLIC_IS_TESTNET: 'false'
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
# CD applies this file within ~90s, so THIS is the source now, not the cluster.
|
||||
# Pins move in the release (luxfi/explore .hanzo/workflows/release.yml: one
|
||||
# build, byte-identical copies per org, all five brands moved together), never
|
||||
# by hand — an automated pin BELOW what is running is a rollback that applies
|
||||
# itself, and every one of these files trailed the cluster before this bump.
|
||||
# The RUNTIME environment, and only that. luxfi/explore's .env.example.lux
|
||||
# mixes build-time and runtime variables in one file -- NEXT_PUBLIC_BRAND is
|
||||
# read by `pnpm build`, and the branding, marketplace and homepage URLs were
|
||||
# dropped from the image -- so feeding that file to the container fails the
|
||||
# validator outright. These are the variables v2.8.1-lux accepts.
|
||||
cd:
|
||||
automated: false
|
||||
|
||||
replicas: 1
|
||||
selectorLabels:
|
||||
app: explore-fe
|
||||
@@ -67,12 +66,6 @@ startupProbe:
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
# The live container port is named `ui` and all three probes address it by that
|
||||
# name. Renaming it to `http` leaves every probe pointing at a port that does
|
||||
# not exist, so the pod never goes Ready — 13 explorer front-ends at once.
|
||||
# One values entry names the container port AND the Service port, so the
|
||||
# Service port is renamed http -> ui with it; every Ingress backend addresses
|
||||
# that Service by NUMBER (80), so nothing resolves it by name.
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
name: ui
|
||||
@@ -86,3 +79,20 @@ topologySpread:
|
||||
enabled: false
|
||||
lifecycle: null
|
||||
terminationGracePeriodSeconds: 30
|
||||
configMaps:
|
||||
- name: explore-env-spc
|
||||
data:
|
||||
NEXT_PUBLIC_NETWORK_NAME: SPC Network
|
||||
NEXT_PUBLIC_NETWORK_SHORT_NAME: SPC
|
||||
NEXT_PUBLIC_NETWORK_ID: '36911'
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_NAME: SPC
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL: SPC
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS: '18'
|
||||
NEXT_PUBLIC_NETWORK_RPC_URL: https://api.lux.network/v1/chain/c/rpc
|
||||
NEXT_PUBLIC_API_HOST: api-explore.lux.network
|
||||
NEXT_PUBLIC_API_PROTOCOL: https
|
||||
NEXT_PUBLIC_API_BASE_PATH: /
|
||||
NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL: wss
|
||||
NEXT_PUBLIC_APP_HOST: explore.lux.network
|
||||
NEXT_PUBLIC_APP_PROTOCOL: https
|
||||
NEXT_PUBLIC_IS_TESTNET: 'false'
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
# CD applies this file within ~90s, so THIS is the source now, not the cluster.
|
||||
# Pins move in the release (luxfi/explore .hanzo/workflows/release.yml: one
|
||||
# build, byte-identical copies per org, all five brands moved together), never
|
||||
# by hand — an automated pin BELOW what is running is a rollback that applies
|
||||
# itself, and every one of these files trailed the cluster before this bump.
|
||||
# The RUNTIME environment, and only that. luxfi/explore's .env.example.lux
|
||||
# mixes build-time and runtime variables in one file -- NEXT_PUBLIC_BRAND is
|
||||
# read by `pnpm build`, and the branding, marketplace and homepage URLs were
|
||||
# dropped from the image -- so feeding that file to the container fails the
|
||||
# validator outright. These are the variables v2.8.1-lux accepts.
|
||||
cd:
|
||||
automated: false
|
||||
|
||||
replicas: 1
|
||||
selectorLabels:
|
||||
app: explore-fe
|
||||
@@ -14,16 +13,6 @@ selectorLabels:
|
||||
containerName: explore
|
||||
image:
|
||||
repository: ghcr.io/zooai/explore
|
||||
# v2.8.1-lux, the same image explore-fe-lux runs and the same one this file's
|
||||
# header describes: the release builds once and copies byte-identical per org.
|
||||
# Byte-identical is not a figure of speech here — ghcr.io/zooai/explore and
|
||||
# ghcr.io/luxfi/explore both resolve v2.8.1-lux to
|
||||
# sha256:c4a75d03…, one manifest under two names, which is why the org tag
|
||||
# carries the `-lux` suffix that named the build.
|
||||
#
|
||||
# Zoo trailed on v1.1.30 for the same reason lux did: the fanout job reported
|
||||
# success and moved no pin. Seven releases of fixes were sitting in a registry
|
||||
# nothing pulled from.
|
||||
tag: v2.8.1-lux
|
||||
digest: sha256:c4a75d036d7d7f93b870f7c1d3b9876b3b1c3e34063c11b90f68189554706193
|
||||
pullPolicy: IfNotPresent
|
||||
@@ -73,12 +62,6 @@ startupProbe:
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
# The live container port is named `ui` and all three probes address it by that
|
||||
# name. Renaming it to `http` leaves every probe pointing at a port that does
|
||||
# not exist, so the pod never goes Ready — 13 explorer front-ends at once.
|
||||
# One values entry names the container port AND the Service port, so the
|
||||
# Service port is renamed http -> ui with it; every Ingress backend addresses
|
||||
# that Service by NUMBER (80), so nothing resolves it by name.
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
name: ui
|
||||
@@ -92,3 +75,20 @@ topologySpread:
|
||||
enabled: false
|
||||
lifecycle: null
|
||||
terminationGracePeriodSeconds: 30
|
||||
configMaps:
|
||||
- name: explore-env-zoo
|
||||
data:
|
||||
NEXT_PUBLIC_NETWORK_NAME: Zoo Network
|
||||
NEXT_PUBLIC_NETWORK_SHORT_NAME: ZOO
|
||||
NEXT_PUBLIC_NETWORK_ID: '200200'
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_NAME: ZOO
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL: ZOO
|
||||
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS: '18'
|
||||
NEXT_PUBLIC_NETWORK_RPC_URL: https://api.lux.network/v1/chain/c/rpc
|
||||
NEXT_PUBLIC_API_HOST: api-explore.lux.network
|
||||
NEXT_PUBLIC_API_PROTOCOL: https
|
||||
NEXT_PUBLIC_API_BASE_PATH: /
|
||||
NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL: wss
|
||||
NEXT_PUBLIC_APP_HOST: explore.lux.network
|
||||
NEXT_PUBLIC_APP_PROTOCOL: https
|
||||
NEXT_PUBLIC_IS_TESTNET: 'false'
|
||||
|
||||
Reference in New Issue
Block a user