Documentation ¶
Index ¶
- Constants
- func ApplyDefaults(cfg types.IConfigSection, network types.Network)
- func ChangeNetwork(cfg types.IConfigSection, oldNetwork types.Network, newNetwork types.Network)
- func Clone(source types.IConfigSection, target types.IConfigSection, ...)
- func Deserialize(cfg types.IConfigSection, serializedParams map[string]any, ...) error
- func GetAffectedContainers(section *types.ChangedSection, containers map[types.ContainerID]bool)
- func GetChangedSettings(old types.IConfigSection, new types.IConfigSection) (*types.ChangedSection, int)
- func Serialize(cfg types.IConfigSection) map[string]any
- func UpdateDefaults(cfg types.IConfigSection, newNetwork types.Network)
- type BesuConfig
- type BitflyNodeMetricsConfig
- type ExporterConfig
- type ExternalBeaconConfig
- type ExternalExecutionConfig
- type FallbackConfig
- type GethConfig
- type GrafanaConfig
- type HyperdriveConfig
- func (cfg *HyperdriveConfig) AutoTxMaxFeeInt() uint64
- func (c *HyperdriveConfig) BeaconNodeContainerName() string
- func (c *HyperdriveConfig) BeaconNodeDataVolume() string
- func (cfg *HyperdriveConfig) BnHttpUrl() (string, error)
- func (cfg *HyperdriveConfig) BnRpcUrl() (string, error)
- func (c *HyperdriveConfig) DaemonContainerName() string
- func (cfg *HyperdriveConfig) Deserialize(masterMap map[string]any) error
- func (c *HyperdriveConfig) ExecutionClientContainerName() string
- func (c *HyperdriveConfig) ExecutionClientDataVolume() string
- func (c *HyperdriveConfig) ExporterContainerName() string
- func (cfg *HyperdriveConfig) FallbackBnHttpUrl() string
- func (cfg *HyperdriveConfig) FallbackBnRpcUrl() string
- func (cfg *HyperdriveConfig) GetBeaconHostname() (string, error)
- func (cfg *HyperdriveConfig) GetBnAdditionalFlags() (string, error)
- func (cfg *HyperdriveConfig) GetBnContainerTag() (string, error)
- func (cfg *HyperdriveConfig) GetBnHttpEndpoint() string
- func (cfg *HyperdriveConfig) GetBnHttpEndpointsWithFallback() string
- func (cfg *HyperdriveConfig) GetBnMaxPeers() (uint16, error)
- func (cfg *HyperdriveConfig) GetBnOpenPorts() []string
- func (cfg *HyperdriveConfig) GetBnStartScript() string
- func (cfg *HyperdriveConfig) GetDaemonContainerTag() string
- func (cfg *HyperdriveConfig) GetDockerArtifactName(entity string) string
- func (cfg *HyperdriveConfig) GetEcAdditionalFlags() (string, error)
- func (cfg *HyperdriveConfig) GetEcContainerTag() (string, error)
- func (cfg *HyperdriveConfig) GetEcHttpEndpoint() string
- func (cfg *HyperdriveConfig) GetEcHttpEndpointsWithFallback() string
- func (cfg *HyperdriveConfig) GetEcMaxPeers() (uint16, error)
- func (cfg *HyperdriveConfig) GetEcOpenApiPorts() string
- func (cfg *HyperdriveConfig) GetEcStartScript() string
- func (cfg *HyperdriveConfig) GetEcWsEndpoint() string
- func (cfg *HyperdriveConfig) GetExecutionHostname() (string, error)
- func (cfg *HyperdriveConfig) GetExporterAdditionalFlags() []string
- func (cfg *HyperdriveConfig) GetExternalIP() string
- func (cfg *HyperdriveConfig) GetParameters() []types.IParameter
- func (cfg *HyperdriveConfig) GetPrometheusAdditionalFlags() []string
- func (cfg *HyperdriveConfig) GetPrometheusOpenPorts() string
- func (cfg *HyperdriveConfig) GetSelectedBeaconNode() types.BeaconNode
- func (cfg *HyperdriveConfig) GetSelectedExecutionClient() types.ExecutionClient
- func (cfg *HyperdriveConfig) GetSubconfigs() map[string]types.IConfigSection
- func (cfg *HyperdriveConfig) GetTitle() string
- func (cfg *HyperdriveConfig) GetVcStartScript() string
- func (c *HyperdriveConfig) GrafanaContainerName() string
- func (cfg *HyperdriveConfig) GraffitiPrefix() string
- func (cfg *HyperdriveConfig) IsLocalMode() bool
- func (c *HyperdriveConfig) PrometheusContainerName() string
- func (cfg *HyperdriveConfig) Serialize(modules []modconfig.IModuleConfig) map[string]any
- type LighthouseBnConfig
- type LocalBeaconConfig
- type LocalExecutionConfig
- type LodestarBnConfig
- type MetricsConfig
- type NethermindConfig
- type NimbusBnConfig
- type Nimbus_PruningMode
- type PrometheusConfig
- type PrysmBnConfig
- type TekuBnConfig
Constants ¶
const ( // Param IDs BesuJvmHeapSizeID string = "jvmHeapSize" BesuMaxPeersID string = "maxPeers" BesuMaxBackLayersID string = "maxBackLayers" )
Constants
const ( BitflySecretID string = "bitflySecret" BitflyEndpointID string = "bitflyEndpoint" BitflyMachineNameID string = "bitflyMachineName" )
Defaults
const ( // Param IDs UseFallbackClientsID string = "useFallbackClients" EcHttpUrl string = "ecHttpUrl" BnHttpUrl string = "bnHttpUrl" )
const ( // Param IDs DebugModeID string = "debugMode" NetworkID string = "network" ClientModeID string = "clientMode" UserDataPathID string = "hdUserDataDir" ProjectNameID string = "projectName" AutoTxMaxFeeID string = "autoTxMaxFee" MaxPriorityFeeID string = "maxPriorityFee" AutoTxGasThresholdID string = "autoTxGasThreshold" )
const ( // Param IDs EcWebsocketPortID string = "wsPort" EcEnginePortID string = "enginePort" EcOpenApiPortsID string = "openApiPorts" )
const ( // Param IDs MetricsEnableID string = "enableMetrics" MetricsEnableBitflyID string = "enableBitflyNodeMetrics" MetricsEcPortID string = "ecMetricsPort" MetricsBnPortID string = "bnMetricsPort" MetricsDaemonPortID string = "daemonMetricsPort" MetricsExporterPortID string = "exporterMetricsPort" )
Constants
const ( // Param IDs NethermindCacheSizeID string = "cacheSize" NethermindPruneMemSizeID string = "pruneMemSize" NethermindAdditionalModulesID string = "additionalModules" NethermindAdditionalUrlsID string = "additionalUrls" )
Constants
const ( // Param IDs PrysmRpcPortID string = "rpcPort" PrysmOpenRpcPortID string = "openRpcPort" )
const ( EventLogInterval int = 1000 DockerApiVersion string = "1.40" HyperdriveDaemonRoute string = "hyperdrive" HyperdriveSocketFilename string = HyperdriveDaemonRoute + ".sock" ConfigFilename string = "user-settings.yml" // Wallet UserAddressFilename string = "address" UserWalletDataFilename string = "wallet" UserPasswordFilename string = "password" // Scripts EcStartScript string = "start-ec.sh" BnStartScript string = "start-bn.sh" VcStartScript string = "start-vc.sh" // HTTP ClientTimeout time.Duration = 8 * time.Second // Volumes ExecutionClientDataVolume string = "ecdata" BeaconNodeDataVolume string = "bndata" )
const ( // Param IDs TekuJvmHeapSizeID string = "jvmHeapSize" TekuArchiveModeID string = "archiveMode" )
const ( // Param IDs BnCheckpointSyncUrlID string = "checkpointSyncUrl" )
const ( // Param IDs ExporterEnableRootFsID string = "enableRootFs" )
const ( // Param IDs GethEnablePbssID string = "enablePbss" )
Constants
const ( // Param IDs LhQuicPortID string = "p2pQuicPort" )
const ( // Param IDs NimbusPruningModeID string = "pruningMode" )
const ( // Param IDs PrysmRpcUrlID string = "prysmRpcUrl" )
const ( // Param IDs WebsocketUrlID string = "wsUrl" )
Variables ¶
This section is empty.
Functions ¶
func ApplyDefaults ¶ added in v0.2.3
func ApplyDefaults(cfg types.IConfigSection, network types.Network)
Apply the default settings for each parameter and subparameter
func ChangeNetwork ¶ added in v0.2.3
Change the active network for an entire configuration
func Clone ¶ added in v0.2.3
func Clone(source types.IConfigSection, target types.IConfigSection, network types.Network)
Copy a section's settings into the corresponding section of a new config
func Deserialize ¶ added in v0.2.3
func Deserialize(cfg types.IConfigSection, serializedParams map[string]any, network types.Network) error
Deserialize a config section
func GetAffectedContainers ¶ added in v0.2.3
func GetAffectedContainers(section *types.ChangedSection, containers map[types.ContainerID]bool)
Get a list of containers that will be need to be restarted after this change is applied
func GetChangedSettings ¶ added in v0.2.3
func GetChangedSettings(old types.IConfigSection, new types.IConfigSection) (*types.ChangedSection, int)
Get all of the settings that have changed between the given config sections Assumes the config sections represent the same element, just different instances
func Serialize ¶ added in v0.2.3
func Serialize(cfg types.IConfigSection) map[string]any
Serialize a config section into a map
func UpdateDefaults ¶ added in v0.2.3
func UpdateDefaults(cfg types.IConfigSection, newNetwork types.Network)
Update the default settings after a network change
Types ¶
type BesuConfig ¶
type BesuConfig struct { // Max number of P2P peers to connect to JvmHeapSize types.Parameter[uint64] // Max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // Historical state block regeneration limit MaxBackLayers types.Parameter[uint64] // The Docker Hub tag for Besu ContainerTag types.Parameter[string] // Custom command line flags AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for Besu
func NewBesuConfig ¶
func NewBesuConfig(parent *LocalExecutionConfig) *BesuConfig
Generates a new Besu configuration
func (*BesuConfig) GetParameters ¶
func (cfg *BesuConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*BesuConfig) GetSubconfigs ¶
func (cfg *BesuConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
type BitflyNodeMetricsConfig ¶
type BitflyNodeMetricsConfig struct { Secret types.Parameter[string] Endpoint types.Parameter[string] MachineName types.Parameter[string] // contains filtered or unexported fields }
Configuration for Bitfly Node Metrics
func NewBitflyNodeMetricsConfig ¶
func NewBitflyNodeMetricsConfig(parent *MetricsConfig) *BitflyNodeMetricsConfig
Generates a new Bitfly Node Metrics config
func (*BitflyNodeMetricsConfig) GetParameters ¶
func (cfg *BitflyNodeMetricsConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*BitflyNodeMetricsConfig) GetSubconfigs ¶
func (cfg *BitflyNodeMetricsConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*BitflyNodeMetricsConfig) GetTitle ¶
func (cfg *BitflyNodeMetricsConfig) GetTitle() string
The title for the config
type ExporterConfig ¶
type ExporterConfig struct { // Toggle for enabling access to the root filesystem (for multiple disk usage metrics) RootFs types.Parameter[bool] // The Docker Hub tag for the Exporter ContainerTag types.Parameter[string] // Custom command line flags AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for Exporter
func NewExporterConfig ¶
func NewExporterConfig(parent *MetricsConfig) *ExporterConfig
Generates a new Exporter config
func (*ExporterConfig) GetParameters ¶
func (cfg *ExporterConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*ExporterConfig) GetSubconfigs ¶
func (cfg *ExporterConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*ExporterConfig) GetTitle ¶
func (cfg *ExporterConfig) GetTitle() string
The title for the config
type ExternalBeaconConfig ¶
type ExternalBeaconConfig struct { // The selected BN BeaconNode types.Parameter[types.BeaconNode] // The URL of the HTTP endpoint HttpUrl types.Parameter[string] // The URL of the Prysm gRPC endpoint (only needed if using Prysm VCs) PrysmRpcUrl types.Parameter[string] // contains filtered or unexported fields }
Configuration for external Beacon Nodes
func NewExternalBeaconConfig ¶
func NewExternalBeaconConfig(parent *HyperdriveConfig) *ExternalBeaconConfig
Generates a new ExternalBeaconConfig configuration
func (*ExternalBeaconConfig) GetParameters ¶
func (cfg *ExternalBeaconConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*ExternalBeaconConfig) GetSubconfigs ¶
func (cfg *ExternalBeaconConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*ExternalBeaconConfig) GetTitle ¶
func (cfg *ExternalBeaconConfig) GetTitle() string
The title for the config
type ExternalExecutionConfig ¶
type ExternalExecutionConfig struct { // The selected EC ExecutionClient types.Parameter[types.ExecutionClient] // The URL of the HTTP endpoint HttpUrl types.Parameter[string] // The URL of the Websocket endpoint WebsocketUrl types.Parameter[string] // contains filtered or unexported fields }
Configuration for external Execution clients
func NewExternalExecutionConfig ¶
func NewExternalExecutionConfig(parent *HyperdriveConfig) *ExternalExecutionConfig
Generates a new ExternalExecutionConfig configuration
func (*ExternalExecutionConfig) GetParameters ¶
func (cfg *ExternalExecutionConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*ExternalExecutionConfig) GetSubconfigs ¶
func (cfg *ExternalExecutionConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*ExternalExecutionConfig) GetTitle ¶
func (cfg *ExternalExecutionConfig) GetTitle() string
The title for the config
type FallbackConfig ¶
type FallbackConfig struct { // Flag for enabling fallback clients UseFallbackClients types.Parameter[bool] // The URL of the Execution Client HTTP endpoint EcHttpUrl types.Parameter[string] // The URL of the Beacon Node HTTP endpoint BnHttpUrl types.Parameter[string] // The URL of the Prysm gRPC endpoint (only needed if using Prysm VCs) PrysmRpcUrl types.Parameter[string] // contains filtered or unexported fields }
Fallback configuration
func NewFallbackConfig ¶
func NewFallbackConfig(parent *HyperdriveConfig) *FallbackConfig
Generates a new FallbackConfig configuration
func (*FallbackConfig) GetParameters ¶
func (cfg *FallbackConfig) GetParameters() []types.IParameter
Get the types.Parameters for this config
func (*FallbackConfig) GetSubconfigs ¶
func (cfg *FallbackConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*FallbackConfig) GetTitle ¶
func (cfg *FallbackConfig) GetTitle() string
The title for the config
type GethConfig ¶
type GethConfig struct { // The flag for enabling PBSS EnablePbss types.Parameter[bool] // Max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // The Docker Hub tag for Geth ContainerTag types.Parameter[string] // Custom command line flags AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for Geth
func NewGethConfig ¶
func NewGethConfig(parent *LocalExecutionConfig) *GethConfig
Generates a new Geth configuration
func (*GethConfig) GetParameters ¶
func (cfg *GethConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*GethConfig) GetSubconfigs ¶
func (cfg *GethConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
type GrafanaConfig ¶
type GrafanaConfig struct { // The HTTP port to serve on Port types.Parameter[uint16] // The Docker Hub tag for Grafana ContainerTag types.Parameter[string] // contains filtered or unexported fields }
Configuration for Grafana
func NewGrafanaConfig ¶
func NewGrafanaConfig(parent *MetricsConfig) *GrafanaConfig
Generates a new Grafana config
func (*GrafanaConfig) GetParameters ¶
func (cfg *GrafanaConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*GrafanaConfig) GetSubconfigs ¶
func (cfg *GrafanaConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*GrafanaConfig) GetTitle ¶
func (cfg *GrafanaConfig) GetTitle() string
The title for the config
type HyperdriveConfig ¶
type HyperdriveConfig struct { // General settings DebugMode types.Parameter[bool] Network types.Parameter[types.Network] ClientMode types.Parameter[types.ClientMode] ProjectName types.Parameter[string] UserDataPath types.Parameter[string] AutoTxMaxFee types.Parameter[float64] MaxPriorityFee types.Parameter[float64] AutoTxGasThreshold types.Parameter[float64] // Execution client settings LocalExecutionConfig *LocalExecutionConfig ExternalExecutionConfig *ExternalExecutionConfig // Beacon node settings LocalBeaconConfig *LocalBeaconConfig ExternalBeaconConfig *ExternalBeaconConfig // Fallback clients Fallback *FallbackConfig // Metrics Metrics *MetricsConfig // Modules Modules map[string]any // Internal fields Version string HyperdriveUserDirectory string // contains filtered or unexported fields }
The master configuration struct
func LoadFromFile ¶
func LoadFromFile(path string) (*HyperdriveConfig, error)
Load configuration settings from a file
func NewHyperdriveConfig ¶
func NewHyperdriveConfig(hdDir string) *HyperdriveConfig
Creates a new Hyperdrive configuration instance
func (*HyperdriveConfig) AutoTxMaxFeeInt ¶
func (cfg *HyperdriveConfig) AutoTxMaxFeeInt() uint64
func (*HyperdriveConfig) BeaconNodeContainerName ¶ added in v0.2.3
func (c *HyperdriveConfig) BeaconNodeContainerName() string
func (*HyperdriveConfig) BeaconNodeDataVolume ¶ added in v0.2.3
func (c *HyperdriveConfig) BeaconNodeDataVolume() string
func (*HyperdriveConfig) BnHttpUrl ¶
func (cfg *HyperdriveConfig) BnHttpUrl() (string, error)
func (*HyperdriveConfig) BnRpcUrl ¶
func (cfg *HyperdriveConfig) BnRpcUrl() (string, error)
func (*HyperdriveConfig) DaemonContainerName ¶ added in v0.2.3
func (c *HyperdriveConfig) DaemonContainerName() string
func (*HyperdriveConfig) Deserialize ¶
func (cfg *HyperdriveConfig) Deserialize(masterMap map[string]any) error
Deserializes a settings file into this config
func (*HyperdriveConfig) ExecutionClientContainerName ¶ added in v0.2.3
func (c *HyperdriveConfig) ExecutionClientContainerName() string
func (*HyperdriveConfig) ExecutionClientDataVolume ¶ added in v0.2.3
func (c *HyperdriveConfig) ExecutionClientDataVolume() string
func (*HyperdriveConfig) ExporterContainerName ¶ added in v0.2.3
func (c *HyperdriveConfig) ExporterContainerName() string
func (*HyperdriveConfig) FallbackBnHttpUrl ¶
func (cfg *HyperdriveConfig) FallbackBnHttpUrl() string
func (*HyperdriveConfig) FallbackBnRpcUrl ¶
func (cfg *HyperdriveConfig) FallbackBnRpcUrl() string
func (*HyperdriveConfig) GetBeaconHostname ¶
func (cfg *HyperdriveConfig) GetBeaconHostname() (string, error)
Gets the hostname portion of the Beacon Node's URI. Used by text/template to format prometheus.yml.
func (*HyperdriveConfig) GetBnAdditionalFlags ¶
func (cfg *HyperdriveConfig) GetBnAdditionalFlags() (string, error)
Used by text/template to format bn.yml
func (*HyperdriveConfig) GetBnContainerTag ¶
func (cfg *HyperdriveConfig) GetBnContainerTag() (string, error)
Gets the tag of the bn container Used by text/template to format bn.yml
func (*HyperdriveConfig) GetBnHttpEndpoint ¶
func (cfg *HyperdriveConfig) GetBnHttpEndpoint() string
Get the HTTP API endpoint for the provided BN
func (*HyperdriveConfig) GetBnHttpEndpointsWithFallback ¶
func (cfg *HyperdriveConfig) GetBnHttpEndpointsWithFallback() string
Get the endpoints of the BN, including the fallback if applicable
func (*HyperdriveConfig) GetBnMaxPeers ¶
func (cfg *HyperdriveConfig) GetBnMaxPeers() (uint16, error)
Gets the max peers of the bn container Used by text/template to format bn.yml
func (*HyperdriveConfig) GetBnOpenPorts ¶
func (cfg *HyperdriveConfig) GetBnOpenPorts() []string
Used by text/template to format bn.yml
func (*HyperdriveConfig) GetBnStartScript ¶
func (cfg *HyperdriveConfig) GetBnStartScript() string
Gets the name of the Beacon Node start script
func (*HyperdriveConfig) GetDaemonContainerTag ¶
func (cfg *HyperdriveConfig) GetDaemonContainerTag() string
func (*HyperdriveConfig) GetDockerArtifactName ¶
func (cfg *HyperdriveConfig) GetDockerArtifactName(entity string) string
Gets the full name of the Docker container or volume with the provided suffix (name minus the project ID prefix)
func (*HyperdriveConfig) GetEcAdditionalFlags ¶
func (cfg *HyperdriveConfig) GetEcAdditionalFlags() (string, error)
Used by text/template to format ec.yml
func (*HyperdriveConfig) GetEcContainerTag ¶
func (cfg *HyperdriveConfig) GetEcContainerTag() (string, error)
Gets the tag of the ec container Used by text/template to format ec.yml
func (*HyperdriveConfig) GetEcHttpEndpoint ¶
func (cfg *HyperdriveConfig) GetEcHttpEndpoint() string
Used by text/template to format bn.yml
func (*HyperdriveConfig) GetEcHttpEndpointsWithFallback ¶
func (cfg *HyperdriveConfig) GetEcHttpEndpointsWithFallback() string
Get the endpoints of the EC, including the fallback if applicable
func (*HyperdriveConfig) GetEcMaxPeers ¶
func (cfg *HyperdriveConfig) GetEcMaxPeers() (uint16, error)
Gets the max peers of the ec container Used by text/template to format ec.yml
func (*HyperdriveConfig) GetEcOpenApiPorts ¶
func (cfg *HyperdriveConfig) GetEcOpenApiPorts() string
Gets the port mapping of the ec container Used by text/template to format ec.yml
func (*HyperdriveConfig) GetEcStartScript ¶
func (cfg *HyperdriveConfig) GetEcStartScript() string
Gets the name of the Execution Client start script
func (*HyperdriveConfig) GetEcWsEndpoint ¶
func (cfg *HyperdriveConfig) GetEcWsEndpoint() string
Used by text/template to format bn.yml
func (*HyperdriveConfig) GetExecutionHostname ¶
func (cfg *HyperdriveConfig) GetExecutionHostname() (string, error)
Gets the hostname portion of the Execution Client's URI. Used by text/template to format prometheus.yml.
func (*HyperdriveConfig) GetExporterAdditionalFlags ¶
func (cfg *HyperdriveConfig) GetExporterAdditionalFlags() []string
Used by text/template to format exporter.yml
func (*HyperdriveConfig) GetExternalIP ¶
func (cfg *HyperdriveConfig) GetExternalIP() string
Used by text/template to format ec.yml
func (*HyperdriveConfig) GetParameters ¶
func (cfg *HyperdriveConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*HyperdriveConfig) GetPrometheusAdditionalFlags ¶
func (cfg *HyperdriveConfig) GetPrometheusAdditionalFlags() []string
Used by text/template to format prometheus.yml
func (*HyperdriveConfig) GetPrometheusOpenPorts ¶
func (cfg *HyperdriveConfig) GetPrometheusOpenPorts() string
Used by text/template to format prometheus.yml
func (*HyperdriveConfig) GetSelectedBeaconNode ¶ added in v0.2.3
func (cfg *HyperdriveConfig) GetSelectedBeaconNode() types.BeaconNode
Get the selected Beacon Node
func (*HyperdriveConfig) GetSelectedExecutionClient ¶ added in v0.2.3
func (cfg *HyperdriveConfig) GetSelectedExecutionClient() types.ExecutionClient
Get the selected Beacon Node
func (*HyperdriveConfig) GetSubconfigs ¶
func (cfg *HyperdriveConfig) GetSubconfigs() map[string]types.IConfigSection
Get the subconfigurations for this config
func (*HyperdriveConfig) GetTitle ¶
func (cfg *HyperdriveConfig) GetTitle() string
Get the title for this config
func (*HyperdriveConfig) GetVcStartScript ¶
func (cfg *HyperdriveConfig) GetVcStartScript() string
Gets the name of the Validator Client start script
func (*HyperdriveConfig) GrafanaContainerName ¶ added in v0.2.3
func (c *HyperdriveConfig) GrafanaContainerName() string
func (*HyperdriveConfig) GraffitiPrefix ¶ added in v0.2.3
func (cfg *HyperdriveConfig) GraffitiPrefix() string
Used by text/template to format validator.yml Only returns the the prefix
func (*HyperdriveConfig) IsLocalMode ¶
func (cfg *HyperdriveConfig) IsLocalMode() bool
Used by text/template to format bn.yml
func (*HyperdriveConfig) PrometheusContainerName ¶ added in v0.2.3
func (c *HyperdriveConfig) PrometheusContainerName() string
func (*HyperdriveConfig) Serialize ¶
func (cfg *HyperdriveConfig) Serialize(modules []modconfig.IModuleConfig) map[string]any
Serializes the configuration into a map of maps, compatible with a settings file
type LighthouseBnConfig ¶
type LighthouseBnConfig struct { // The port to use for gossip traffic using the QUIC protocol P2pQuicPort types.Parameter[uint16] // The max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // The Docker Hub tag for Lighthouse BN ContainerTag types.Parameter[string] // Custom command line flags for the BN AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for the Lighthouse BN
func NewLighthouseBnConfig ¶
func NewLighthouseBnConfig(parent *LocalBeaconConfig) *LighthouseBnConfig
Generates a new Lighthouse BN configuration
func (*LighthouseBnConfig) GetParameters ¶
func (cfg *LighthouseBnConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*LighthouseBnConfig) GetSubconfigs ¶
func (cfg *LighthouseBnConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*LighthouseBnConfig) GetTitle ¶
func (cfg *LighthouseBnConfig) GetTitle() string
The title for the config
type LocalBeaconConfig ¶
type LocalBeaconConfig struct { // The selected BN BeaconNode types.Parameter[types.BeaconNode] // The checkpoint sync URL if used CheckpointSyncProvider types.Parameter[string] // The port to use for gossip traffic P2pPort types.Parameter[uint16] // The port to expose the HTTP API on HttpPort types.Parameter[uint16] // Toggle for forwarding the HTTP API port outside of Docker OpenHttpPort types.Parameter[types.RpcPortMode] // Subconfigs Lighthouse *LighthouseBnConfig Lodestar *LodestarBnConfig Nimbus *NimbusBnConfig Prysm *PrysmBnConfig Teku *TekuBnConfig // contains filtered or unexported fields }
Common parameters shared by all of the Beacon Clients
func NewLocalBeaconConfig ¶
func NewLocalBeaconConfig(parent *HyperdriveConfig) *LocalBeaconConfig
Create a new LocalBeaconConfig struct
func (*LocalBeaconConfig) GetParameters ¶
func (cfg *LocalBeaconConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*LocalBeaconConfig) GetSubconfigs ¶
func (cfg *LocalBeaconConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*LocalBeaconConfig) GetTitle ¶
func (cfg *LocalBeaconConfig) GetTitle() string
The title for the config
type LocalExecutionConfig ¶
type LocalExecutionConfig struct { // The selected EC ExecutionClient types.Parameter[types.ExecutionClient] // The HTTP API port HttpPort types.Parameter[uint16] // The Websocket API port WebsocketPort types.Parameter[uint16] // The Engine API port EnginePort types.Parameter[uint16] // Toggle for forwarding the HTTP API port outside of Docker OpenApiPorts types.Parameter[types.RpcPortMode] // P2P traffic port P2pPort types.Parameter[uint16] // Subconfigs Geth *GethConfig Nethermind *NethermindConfig Besu *BesuConfig // contains filtered or unexported fields }
Configuration for the Execution client
func NewExecutionCommonConfig ¶
func NewExecutionCommonConfig(parent *HyperdriveConfig) *LocalExecutionConfig
Create a new LocalExecutionConfig struct
func (*LocalExecutionConfig) GetParameters ¶
func (cfg *LocalExecutionConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*LocalExecutionConfig) GetSubconfigs ¶
func (cfg *LocalExecutionConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*LocalExecutionConfig) GetTitle ¶
func (cfg *LocalExecutionConfig) GetTitle() string
Get the title for the config
type LodestarBnConfig ¶
type LodestarBnConfig struct { // The max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // The Docker Hub tag for Lodestar BN ContainerTag types.Parameter[string] // Custom command line flags for the BN AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for the Lodestar BN
func NewLodestarBnConfig ¶
func NewLodestarBnConfig(parent *LocalBeaconConfig) *LodestarBnConfig
Generates a new Lodestar BN configuration
func (*LodestarBnConfig) GetParameters ¶
func (cfg *LodestarBnConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*LodestarBnConfig) GetSubconfigs ¶
func (cfg *LodestarBnConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*LodestarBnConfig) GetTitle ¶
func (cfg *LodestarBnConfig) GetTitle() string
The title for the config
type MetricsConfig ¶
type MetricsConfig struct { EnableMetrics types.Parameter[bool] EcMetricsPort types.Parameter[uint16] BnMetricsPort types.Parameter[uint16] DaemonMetricsPort types.Parameter[uint16] ExporterMetricsPort types.Parameter[uint16] EnableBitflyNodeMetrics types.Parameter[bool] // Subconfigs Grafana *GrafanaConfig Prometheus *PrometheusConfig Exporter *ExporterConfig BitflyNodeMetrics *BitflyNodeMetricsConfig // contains filtered or unexported fields }
Configuration for Metrics
func NewMetricsConfig ¶
func NewMetricsConfig(parent *HyperdriveConfig) *MetricsConfig
Generates a new Besu configuration
func (*MetricsConfig) GetParameters ¶
func (cfg *MetricsConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*MetricsConfig) GetSubconfigs ¶
func (cfg *MetricsConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*MetricsConfig) GetTitle ¶
func (cfg *MetricsConfig) GetTitle() string
The title for the config
type NethermindConfig ¶
type NethermindConfig struct { // Nethermind's cache memory hint CacheSize types.Parameter[uint64] // Max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // Nethermind's memory for pruning PruneMemSize types.Parameter[uint64] // Additional modules to enable on the primary JSON RPC endpoint AdditionalModules types.Parameter[string] // Additional JSON RPC URLs AdditionalUrls types.Parameter[string] // The Docker Hub tag for Nethermind ContainerTag types.Parameter[string] // Custom command line flags AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for Nethermind
func NewNethermindConfig ¶
func NewNethermindConfig(parent *LocalExecutionConfig) *NethermindConfig
Generates a new Nethermind configuration
func (*NethermindConfig) GetParameters ¶
func (cfg *NethermindConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*NethermindConfig) GetSubconfigs ¶
func (cfg *NethermindConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*NethermindConfig) GetTitle ¶
func (cfg *NethermindConfig) GetTitle() string
Get the title for the config
type NimbusBnConfig ¶
type NimbusBnConfig struct { // The max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // The Docker Hub tag for the BN ContainerTag types.Parameter[string] // The pruning mode to use in the BN PruningMode types.Parameter[Nimbus_PruningMode] // Custom command line flags for the BN AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for Nimbus
func NewNimbusBnConfig ¶
func NewNimbusBnConfig(parent *LocalBeaconConfig) *NimbusBnConfig
Generates a new Nimbus configuration
func (*NimbusBnConfig) GetParameters ¶
func (cfg *NimbusBnConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*NimbusBnConfig) GetSubconfigs ¶
func (cfg *NimbusBnConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*NimbusBnConfig) GetTitle ¶
func (cfg *NimbusBnConfig) GetTitle() string
Get the title for the config
type Nimbus_PruningMode ¶
type Nimbus_PruningMode string
Nimbus's pruning mode
const ( Nimbus_PruningMode_Archive Nimbus_PruningMode = "archive" Nimbus_PruningMode_Pruned Nimbus_PruningMode = "prune" )
type PrometheusConfig ¶
type PrometheusConfig struct { // The port to serve metrics on Port types.Parameter[uint16] // Toggle for forwarding the API port outside of Docker OpenPort types.Parameter[types.RpcPortMode] // The Docker Hub tag for Prometheus ContainerTag types.Parameter[string] // Custom command line flags AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for Prometheus
func NewPrometheusConfig ¶
func NewPrometheusConfig(parent *MetricsConfig) *PrometheusConfig
Generates a new Prometheus config
func (*PrometheusConfig) GetParameters ¶
func (cfg *PrometheusConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*PrometheusConfig) GetSubconfigs ¶
func (cfg *PrometheusConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*PrometheusConfig) GetTitle ¶
func (cfg *PrometheusConfig) GetTitle() string
The title for the config
type PrysmBnConfig ¶
type PrysmBnConfig struct { // The max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // The RPC port for BN / VC connections RpcPort types.Parameter[uint16] // Toggle for forwarding the RPC API outside of Docker OpenRpcPort types.Parameter[types.RpcPortMode] // The Docker Hub tag for the Prysm BN ContainerTag types.Parameter[string] // Custom command line flags for the BN AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for the Prysm BN
func NewPrysmBnConfig ¶
func NewPrysmBnConfig(parent *LocalBeaconConfig) *PrysmBnConfig
Generates a new Prysm BN configuration
func (*PrysmBnConfig) GetParameters ¶
func (cfg *PrysmBnConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*PrysmBnConfig) GetSubconfigs ¶
func (cfg *PrysmBnConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*PrysmBnConfig) GetTitle ¶
func (cfg *PrysmBnConfig) GetTitle() string
The title for the config
type TekuBnConfig ¶
type TekuBnConfig struct { // Max number of P2P peers to connect to JvmHeapSize types.Parameter[uint64] // The max number of P2P peers to connect to MaxPeers types.Parameter[uint16] // The archive mode flag ArchiveMode types.Parameter[bool] // The Docker Hub tag for the Teku BN ContainerTag types.Parameter[string] // Custom command line flags for the BN AdditionalFlags types.Parameter[string] // contains filtered or unexported fields }
Configuration for Teku
func NewTekuBnConfig ¶
func NewTekuBnConfig(parent *LocalBeaconConfig) *TekuBnConfig
Generates a new Teku BN configuration
func (*TekuBnConfig) GetParameters ¶
func (cfg *TekuBnConfig) GetParameters() []types.IParameter
Get the parameters for this config
func (*TekuBnConfig) GetSubconfigs ¶
func (cfg *TekuBnConfig) GetSubconfigs() map[string]types.IConfigSection
Get the sections underneath this one
func (*TekuBnConfig) GetTitle ¶
func (cfg *TekuBnConfig) GetTitle() string
Get the title for the config
Source Files ¶
- besu-config.go
- bitfly-beaconchain-config.go
- cfg-section.go
- changes.go
- exporter-config.go
- external-beacon-config.go
- external-execution-config.go
- fallback-config.go
- geth-config.go
- grafana-config.go
- hyperdrive-config.go
- lighthouse-bn-config.go
- local-beacon-config.go
- local-execution-config.go
- lodestar-bn-config.go
- metrics-config.go
- nethermind-config.go
- nimbus-bn-config.go
- prometheus-config.go
- prysm-bn-config.go
- settings.go
- teku-bn-config.go
- templating.go
- utils.go