Skip to content

Latest commit

 

History

History
92 lines (85 loc) · 11 KB

README.md

File metadata and controls

92 lines (85 loc) · 11 KB

validator

Version: 0.8.2 Type: application AppVersion: 0.81.0

A Helm chart for deploying Chronicle Validator on Kubernetes

Maintainers

Name Email Url
chronicleprotocol https://github.com/chronicleprotocol

Values

Key Type Default Description
extraObjects list [] Extra K8s manifests to deploy
ghost object {"argsOverride":[],"commandOverride":[],"enabled":true,"env":{"normal":{},"raw":{}},"ethConfig":{},"image":{"repository":null,"tag":null},"rpcUrl":null,"service":{"annotations":{},"externalTrafficPolicy":"","loadBalancerClass":"","ports":{"libp2p":{"port":8000,"protocol":"TCP"}},"trafficDistribution":"","type":"LoadBalancer"},"watchdogConfigReg":"0x94Fea534aef6df5cF66C2DAE5CE0A05d10C068F3"} Values for Ghost
ghost.argsOverride list [] args override for the validator
ghost.commandOverride list [] command override for the validator
ghost.enabled bool true Whether to deploy the Ghost (defi) container/deployment. Set to false to run a single-container release (e.g. VAO-only).
ghost.env object {"normal":{},"raw":{}} Environment variable listing
ghost.env.normal object {} un-encrypted env vars passed to the pod
ghost.ethConfig object {} Provide ETH keys from existing secrets : NB use only existing secret OR env vars, do not provide both
ghost.image object {"repository":null,"tag":null} Image tag for the validator (overrides global image if set)
ghost.service object {"annotations":{},"externalTrafficPolicy":"","loadBalancerClass":"","ports":{"libp2p":{"port":8000,"protocol":"TCP"}},"trafficDistribution":"","type":"LoadBalancer"} Service type for the validator
ghost.service.annotations object {} Annotations to add to the service
ghost.service.externalTrafficPolicy string "" Optional LoadBalancer traffic policy, for example Local.
ghost.service.loadBalancerClass string "" Optional LoadBalancer class, for example service.k8s.aws/nlb.
ghost.service.ports.libp2p object {"port":8000,"protocol":"TCP"} libp2p port for the validator service
ghost.service.trafficDistribution string "" Optional Kubernetes Service traffic distribution hint, for example PreferSameZone.
ghost.service.type string "LoadBalancer" Type of service for the validator, only LoadBalancer supported for now
ghost.watchdogConfigReg string "0x94Fea534aef6df5cF66C2DAE5CE0A05d10C068F3" WATCHDOG onchain config address
global object {"affinity":{},"chainId":1,"chainName":"eth","chainTxType":"eip1559","fullnameOverride":"ghost","image":{"pullPolicy":"Always","repository":"ghcr.io/chronicleprotocol/ghost","tag":"0.81.0@sha256:417b664eee72406bf1f36757b165135e0d71ce6321b9c0b463ec0d882a886de4"},"imagePullSecrets":[],"liveness":{"enabled":true,"livenessProbe":{"failureThreshold":4,"httpGet":{"path":"/healthz","port":9100},"initialDelaySeconds":60,"periodSeconds":60}},"logFormat":"text","logLevel":"info","metrics":{"enabled":true,"port":9090},"nameOverride":"","nodeSelector":{},"podAnnotations":{},"podSecurityContext":{},"readiness":{"enabled":true,"readinessProbe":{"failureThreshold":4,"httpGet":{"path":"/healthz","port":9100},"initialDelaySeconds":60,"periodSeconds":60}},"replicaCount":1,"resources":{},"securityContext":{},"serviceAccount":{"annotations":{},"create":true,"name":""},"startup":{"enabled":false,"startupProbe":{"failureThreshold":30,"httpGet":{"path":"/healthz","port":9100},"periodSeconds":10}},"tolerations":[],"topologySpreadConstraints":[]} Global values for the validator chart, values are used across the chart resources
global.affinity object {} pod Affinity spec applied validator
global.chainId int 1 chain id for the "target" or "main" chain we use for the validator. Can be mainnet ethereum 1 or sepolia ethereum 11155111
global.chainName string "eth" chain name for the "target" or "main" chain we use for the validator
global.chainTxType string "eip1559" chain tx type for the "target" or "main" chain we use for the validator. Can be mainnet ethereum eip1559 or legacy
global.fullnameOverride string "ghost" Override the release name to so tor-proxy can work with the default config. NB only change this if you know what you are doing
global.image object {"pullPolicy":"Always","repository":"ghcr.io/chronicleprotocol/ghost","tag":"0.81.0@sha256:417b664eee72406bf1f36757b165135e0d71ce6321b9c0b463ec0d882a886de4"} Image for the validator
global.image.tag string "0.81.0@sha256:417b664eee72406bf1f36757b165135e0d71ce6321b9c0b463ec0d882a886de4" Image tag PINNED to the multi-arch index digest (RFC-044.4 WS1); bump with appVersion.
global.liveness object {"enabled":true,"livenessProbe":{"failureThreshold":4,"httpGet":{"path":"/healthz","port":9100},"initialDelaySeconds":60,"periodSeconds":60}} Liveness probe : restart the validator if the healthcheck endpoint is not reachable
global.logFormat string "text" Log format for the validator, can be one of json, text
global.logLevel string "info" Log level for the validator, can be one of debug, info, warning, error
global.metrics object {"enabled":true,"port":9090} Metrics port for the validator, used by the service and the service monitor
global.nodeSelector object {} Node selector for the validator
global.podAnnotations object {} Pod annotations for the validator
global.podSecurityContext object {} Pod security context for the validator
global.readiness object {"enabled":true,"readinessProbe":{"failureThreshold":4,"httpGet":{"path":"/healthz","port":9100},"initialDelaySeconds":60,"periodSeconds":60}} Readiness probe : stop the validator if the metrics endpoint is not reachable
global.resources object {} Resources constraints for the validator, CPU, Memory, etc.
global.securityContext object {} Security context for the validator
global.serviceAccount.annotations object {} Annotations to add to the service account
global.serviceAccount.create bool true Specifies whether a service account should be created
global.serviceAccount.name string "" If not set and create is true, a name is generated using the fullname template
global.startup object {"enabled":false,"startupProbe":{"failureThreshold":30,"httpGet":{"path":"/healthz","port":9100},"periodSeconds":10}} Startup probe : give a slow-starting validator time to serve /healthz before the liveness probe can kill it. While this probe is running the liveness and readiness probes are suspended, so startup time and steady-state failure detection are tuned independently instead of trading off against each other. Disabled by default to keep existing releases unchanged; enable it for validators whose startup can exceed the liveness initialDelaySeconds. failureThreshold x periodSeconds is the startup budget (default 30 x 10s = 5 minutes).
global.tolerations list [] Tolerations applied validator
global.topologySpreadConstraints list [] Topology spread constraints applied to both ghost and vao pods
serviceMonitor.annotations object {} Additional ServiceMonitor annotations
serviceMonitor.enabled bool false If true, a ServiceMonitor CRD is created for a prometheus operator https://github.com/coreos/prometheus-operator
serviceMonitor.interval string "60s" ServiceMonitor scrape interval
serviceMonitor.labels object {} Additional ServiceMonitor labels
serviceMonitor.namespace string nil Alternative namespace for ServiceMonitor
serviceMonitor.path string "/metrics" Path to scrape
serviceMonitor.port string "metrics" port to scrape
serviceMonitor.relabelings list [] ServiceMonitor relabelings
serviceMonitor.scheme string "http" ServiceMonitor scheme
serviceMonitor.scrapeTimeout string "60s" ServiceMonitor scrape timeout
serviceMonitor.tlsConfig object {} ServiceMonitor TLS configuration
tor-proxy object {"enabled":true} Values for Tor Proxy (subchart of ghost)
tor-proxy.enabled bool true values for tor-proxy, installs tor-controller and creates an onionService CRD
vao.affinity object {} pod Affinity spec applied to the VAO pod. Merged over global.affinity.
vao.argsOverride list [] args override for the validator
vao.commandOverride list [] command override for the validator
vao.enabled bool true Whether to deploy the VAO container/deployment. Set to false to run a single-container release (e.g. Ghost-only).
vao.env object {"normal":{"CFG_DEFI_ENABLE":"0","CFG_VAO_ENABLE":"1"},"raw":{}} Environment variable listing
vao.env.normal object {"CFG_DEFI_ENABLE":"0","CFG_VAO_ENABLE":"1"} un-encrypted env vars passed to the pod
vao.ethConfig object {} Provide ETH keys from existing secrets : NB use only existing secret OR env vars, do not provide both. Falls back to ghost.ethConfig when unset (pre-0.8.0 behavior).
vao.extraVolumes list [] Extra volumes to mount (typically for secrets)
vao.image object {"repository":null,"tag":null} Image tag for the validator (overrides global image if set)
vao.resources object {} Resources constraints for the validator, CPU, Memory, etc.
vao.rpcUrl string nil Chain RPC URL(s) for the VAO container's target chain. Falls back to ghost.rpcUrl when unset (pre-0.8.0 behavior).
vao.service object {"annotations":{},"externalTrafficPolicy":"","loadBalancerClass":"","ports":{"libp2p":{"port":8001,"protocol":"TCP"}},"trafficDistribution":"","type":"LoadBalancer"} Service type for the validator
vao.service.annotations object {} Annotations to add to the service
vao.service.externalTrafficPolicy string "" Optional LoadBalancer traffic policy, for example Local.
vao.service.loadBalancerClass string "" Optional LoadBalancer class, for example service.k8s.aws/nlb.
vao.service.ports.libp2p object {"port":8001,"protocol":"TCP"} libp2p port for the validator service
vao.service.trafficDistribution string "" Optional Kubernetes Service traffic distribution hint, for example PreferSameZone.
vao.service.type string "LoadBalancer" Type of service for the validator, only LoadBalancer supported for now
vao.watchdogConfigReg string "0x064358f9b6428C51F80511D73AFEb3A9e5Cf0213" WATCHDOG onchain config address

Autogenerated from chart metadata using helm-docs v1.14.2