config

package
v1.12.3-warp-verify2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 28, 2025 License: BSD-3-Clause Imports: 53 Imported by: 37

Documentation

Index

Constants

View Source
const (
	DefaultHTTPPort    = 9650
	DefaultStakingPort = 9651

	AvalancheGoDataDirVar = "AVALANCHEGO_DATA_DIR"

	DefaultProcessContextFilename = "process.json"

	// The default plugin path of $HOME/.avalanchego/plugins is not
	// suitable for docker images since $HOME might be writable but
	// the plugin directory should not be. The value below is in the
	// same hierarchy as avalanchego on the docker image
	// (/avalanchego/build/avalanchego) and consistent with the
	// location already used by subnet-evm.
	DefaultImagePluginDir = "/avalanchego/build/plugins"
)
View Source
const (
	DataDirKey                               = "data-dir"
	ConfigFileKey                            = "config-file"
	ConfigContentKey                         = "config-file-content"
	ConfigContentTypeKey                     = "config-file-content-type"
	VersionKey                               = "version"
	VersionJSONKey                           = "version-json"
	GenesisFileKey                           = "genesis-file"
	GenesisFileContentKey                    = "genesis-file-content"
	UpgradeFileKey                           = "upgrade-file"
	UpgradeFileContentKey                    = "upgrade-file-content"
	NetworkNameKey                           = "network-id"
	ACPSupportKey                            = "acp-support"
	ACPObjectKey                             = "acp-object"
	DynamicFeesBandwidthWeightKey            = "dynamic-fees-bandwidth-weight"
	DynamicFeesDBReadWeightKey               = "dynamic-fees-db-read-weight"
	DynamicFeesDBWriteWeightKey              = "dynamic-fees-db-write-weight"
	DynamicFeesComputeWeightKey              = "dynamic-fees-compute-weight"
	DynamicFeesMaxGasCapacityKey             = "dynamic-fees-max-gas-capacity"
	DynamicFeesMaxGasPerSecondKey            = "dynamic-fees-max-gas-per-second"
	DynamicFeesTargetGasPerSecondKey         = "dynamic-fees-target-gas-per-second"
	DynamicFeesMinGasPriceKey                = "dynamic-fees-min-gas-price"
	DynamicFeesExcessConversionConstantKey   = "dynamic-fees-excess-conversion-constant"
	ValidatorFeesCapacityKey                 = "validator-fees-capacity"
	ValidatorFeesTargetKey                   = "validator-fees-target"
	ValidatorFeesMinPriceKey                 = "validator-fees-min-price"
	ValidatorFeesExcessConversionConstantKey = "validator-fees-excess-conversion-constant"
	TxFeeKey                                 = "tx-fee"
	CreateAssetTxFeeKey                      = "create-asset-tx-fee"
	UptimeRequirementKey                     = "uptime-requirement"
	MinValidatorStakeKey                     = "min-validator-stake"
	MaxValidatorStakeKey                     = "max-validator-stake"
	MinDelegatorStakeKey                     = "min-delegator-stake"
	MinDelegatorFeeKey                       = "min-delegation-fee"
	MinStakeDurationKey                      = "min-stake-duration"
	MaxStakeDurationKey                      = "max-stake-duration"
	StakeMaxConsumptionRateKey               = "stake-max-consumption-rate"
	StakeMinConsumptionRateKey               = "stake-min-consumption-rate"
	StakeMintingPeriodKey                    = "stake-minting-period"
	StakeSupplyCapKey                        = "stake-supply-cap"
	DBTypeKey                                = "db-type"
	DBReadOnlyKey                            = "db-read-only"
	DBPathKey                                = "db-dir"
	DBConfigFileKey                          = "db-config-file"
	DBConfigContentKey                       = "db-config-file-content"
	PublicIPKey                              = "public-ip"
	PublicIPResolutionFreqKey                = "public-ip-resolution-frequency"
	PublicIPResolutionServiceKey             = "public-ip-resolution-service"
	HTTPHostKey                              = "http-host"
	HTTPPortKey                              = "http-port"
	HTTPSEnabledKey                          = "http-tls-enabled"
	HTTPSKeyFileKey                          = "http-tls-key-file"
	HTTPSKeyContentKey                       = "http-tls-key-file-content"
	HTTPSCertFileKey                         = "http-tls-cert-file"
	HTTPSCertContentKey                      = "http-tls-cert-file-content"

	HTTPAllowedOrigins       = "http-allowed-origins"
	HTTPAllowedHostsKey      = "http-allowed-hosts"
	HTTPShutdownTimeoutKey   = "http-shutdown-timeout"
	HTTPShutdownWaitKey      = "http-shutdown-wait"
	HTTPReadTimeoutKey       = "http-read-timeout"
	HTTPReadHeaderTimeoutKey = "http-read-header-timeout"

	HTTPIdleTimeoutKey                                 = "http-idle-timeout"
	StateSyncIPsKey                                    = "state-sync-ips"
	StateSyncIDsKey                                    = "state-sync-ids"
	BootstrapIPsKey                                    = "bootstrap-ips"
	BootstrapIDsKey                                    = "bootstrap-ids"
	StakingHostKey                                     = "staking-host"
	StakingPortKey                                     = "staking-port"
	StakingEphemeralCertEnabledKey                     = "staking-ephemeral-cert-enabled"
	StakingTLSKeyPathKey                               = "staking-tls-key-file"
	StakingTLSKeyContentKey                            = "staking-tls-key-file-content"
	StakingCertPathKey                                 = "staking-tls-cert-file"
	StakingCertContentKey                              = "staking-tls-cert-file-content"
	StakingEphemeralSignerEnabledKey                   = "staking-ephemeral-signer-enabled"
	StakingSignerKeyPathKey                            = "staking-signer-key-file"
	StakingSignerKeyContentKey                         = "staking-signer-key-file-content"
	SybilProtectionEnabledKey                          = "sybil-protection-enabled"
	SybilProtectionDisabledWeightKey                   = "sybil-protection-disabled-weight"
	NetworkInitialTimeoutKey                           = "network-initial-timeout"
	NetworkMinimumTimeoutKey                           = "network-minimum-timeout"
	NetworkMaximumTimeoutKey                           = "network-maximum-timeout"
	NetworkMaximumInboundTimeoutKey                    = "network-maximum-inbound-timeout"
	NetworkTimeoutHalflifeKey                          = "network-timeout-halflife"
	NetworkTimeoutCoefficientKey                       = "network-timeout-coefficient"
	NetworkHealthMinPeersKey                           = "network-health-min-conn-peers"
	NetworkHealthMaxTimeSinceMsgReceivedKey            = "network-health-max-time-since-msg-received"
	NetworkHealthMaxTimeSinceMsgSentKey                = "network-health-max-time-since-msg-sent"
	NetworkHealthMaxPortionSendQueueFillKey            = "network-health-max-portion-send-queue-full"
	NetworkHealthMaxSendFailRateKey                    = "network-health-max-send-fail-rate"
	NetworkHealthMaxOutstandingDurationKey             = "network-health-max-outstanding-request-duration"
	NetworkPeerListNumValidatorIPsKey                  = "network-peer-list-num-validator-ips"
	NetworkPeerListPullGossipFreqKey                   = "network-peer-list-pull-gossip-frequency"
	NetworkPeerListBloomResetFreqKey                   = "network-peer-list-bloom-reset-frequency"
	NetworkInitialReconnectDelayKey                    = "network-initial-reconnect-delay"
	NetworkReadHandshakeTimeoutKey                     = "network-read-handshake-timeout"
	NetworkPingTimeoutKey                              = "network-ping-timeout"
	NetworkPingFrequencyKey                            = "network-ping-frequency"
	NetworkMaxReconnectDelayKey                        = "network-max-reconnect-delay"
	NetworkCompressionTypeKey                          = "network-compression-type"
	NetworkMaxClockDifferenceKey                       = "network-max-clock-difference"
	NetworkAllowPrivateIPsKey                          = "network-allow-private-ips"
	NetworkRequireValidatorToConnectKey                = "network-require-validator-to-connect"
	NetworkPeerReadBufferSizeKey                       = "network-peer-read-buffer-size"
	NetworkPeerWriteBufferSizeKey                      = "network-peer-write-buffer-size"
	NetworkTCPProxyEnabledKey                          = "network-tcp-proxy-enabled"
	NetworkTCPProxyReadTimeoutKey                      = "network-tcp-proxy-read-timeout"
	NetworkTLSKeyLogFileKey                            = "network-tls-key-log-file-unsafe"
	NetworkInboundConnUpgradeThrottlerCooldownKey      = "network-inbound-connection-throttling-cooldown"
	NetworkInboundThrottlerMaxConnsPerSecKey           = "network-inbound-connection-throttling-max-conns-per-sec"
	NetworkOutboundConnectionThrottlingRpsKey          = "network-outbound-connection-throttling-rps"
	NetworkOutboundConnectionTimeoutKey                = "network-outbound-connection-timeout"
	BenchlistFailThresholdKey                          = "benchlist-fail-threshold"
	BenchlistDurationKey                               = "benchlist-duration"
	BenchlistMinFailingDurationKey                     = "benchlist-min-failing-duration"
	LogsDirKey                                         = "log-dir"
	LogLevelKey                                        = "log-level"
	LogDisplayLevelKey                                 = "log-display-level"
	LogFormatKey                                       = "log-format"
	LogRotaterMaxSizeKey                               = "log-rotater-max-size"
	LogRotaterMaxFilesKey                              = "log-rotater-max-files"
	LogRotaterMaxAgeKey                                = "log-rotater-max-age"
	LogRotaterCompressEnabledKey                       = "log-rotater-compress-enabled"
	LogDisableDisplayPluginLogsKey                     = "log-disable-display-plugin-logs"
	SnowSampleSizeKey                                  = "snow-sample-size"
	SnowQuorumSizeKey                                  = "snow-quorum-size"
	SnowPreferenceQuorumSizeKey                        = "snow-preference-quorum-size"
	SnowConfidenceQuorumSizeKey                        = "snow-confidence-quorum-size"
	SnowCommitThresholdKey                             = "snow-commit-threshold"
	SnowConcurrentRepollsKey                           = "snow-concurrent-repolls"
	SnowOptimalProcessingKey                           = "snow-optimal-processing"
	SnowMaxProcessingKey                               = "snow-max-processing"
	SnowMaxTimeProcessingKey                           = "snow-max-time-processing"
	PartialSyncPrimaryNetworkKey                       = "partial-sync-primary-network"
	TrackSubnetsKey                                    = "track-subnets"
	AdminAPIEnabledKey                                 = "api-admin-enabled"
	InfoAPIEnabledKey                                  = "api-info-enabled"
	MetricsAPIEnabledKey                               = "api-metrics-enabled"
	HealthAPIEnabledKey                                = "api-health-enabled"
	MeterVMsEnabledKey                                 = "meter-vms-enabled"
	ConsensusAppConcurrencyKey                         = "consensus-app-concurrency"
	ConsensusShutdownTimeoutKey                        = "consensus-shutdown-timeout"
	ConsensusFrontierPollFrequencyKey                  = "consensus-frontier-poll-frequency"
	ProposerVMUseCurrentHeightKey                      = "proposervm-use-current-height"
	FdLimitKey                                         = "fd-limit"
	IndexEnabledKey                                    = "index-enabled"
	IndexAllowIncompleteKey                            = "index-allow-incomplete"
	RouterHealthMaxDropRateKey                         = "router-health-max-drop-rate"
	RouterHealthMaxOutstandingRequestsKey              = "router-health-max-outstanding-requests"
	HealthCheckFreqKey                                 = "health-check-frequency"
	HealthCheckAveragerHalflifeKey                     = "health-check-averager-halflife"
	PluginDirKey                                       = "plugin-dir"
	BootstrapBeaconConnectionTimeoutKey                = "bootstrap-beacon-connection-timeout"
	BootstrapMaxTimeGetAncestorsKey                    = "bootstrap-max-time-get-ancestors"
	BootstrapAncestorsMaxContainersSentKey             = "bootstrap-ancestors-max-containers-sent"
	BootstrapAncestorsMaxContainersReceivedKey         = "bootstrap-ancestors-max-containers-received"
	ChainDataDirKey                                    = "chain-data-dir"
	ChainConfigDirKey                                  = "chain-config-dir"
	ChainConfigContentKey                              = "chain-config-content"
	SubnetConfigDirKey                                 = "subnet-config-dir"
	SubnetConfigContentKey                             = "subnet-config-content"
	ProfileDirKey                                      = "profile-dir"
	ProfileContinuousEnabledKey                        = "profile-continuous-enabled"
	ProfileContinuousFreqKey                           = "profile-continuous-freq"
	ProfileContinuousMaxFilesKey                       = "profile-continuous-max-files"
	InboundThrottlerAtLargeAllocSizeKey                = "throttler-inbound-at-large-alloc-size"
	InboundThrottlerVdrAllocSizeKey                    = "throttler-inbound-validator-alloc-size"
	InboundThrottlerNodeMaxAtLargeBytesKey             = "throttler-inbound-node-max-at-large-bytes"
	InboundThrottlerMaxProcessingMsgsPerNodeKey        = "throttler-inbound-node-max-processing-msgs"
	InboundThrottlerBandwidthRefillRateKey             = "throttler-inbound-bandwidth-refill-rate"
	InboundThrottlerBandwidthMaxBurstSizeKey           = "throttler-inbound-bandwidth-max-burst-size"
	InboundThrottlerCPUMaxRecheckDelayKey              = "throttler-inbound-cpu-max-recheck-delay"
	InboundThrottlerDiskMaxRecheckDelayKey             = "throttler-inbound-disk-max-recheck-delay"
	CPUVdrAllocKey                                     = "throttler-inbound-cpu-validator-alloc"
	CPUMaxNonVdrUsageKey                               = "throttler-inbound-cpu-max-non-validator-usage"
	CPUMaxNonVdrNodeUsageKey                           = "throttler-inbound-cpu-max-non-validator-node-usage"
	SystemTrackerFrequencyKey                          = "system-tracker-frequency"
	SystemTrackerProcessingHalflifeKey                 = "system-tracker-processing-halflife"
	SystemTrackerCPUHalflifeKey                        = "system-tracker-cpu-halflife"
	SystemTrackerDiskHalflifeKey                       = "system-tracker-disk-halflife"
	SystemTrackerRequiredAvailableDiskSpaceKey         = "system-tracker-disk-required-available-space"
	SystemTrackerWarningThresholdAvailableDiskSpaceKey = "system-tracker-disk-warning-threshold-available-space"
	DiskVdrAllocKey                                    = "throttler-inbound-disk-validator-alloc"
	DiskMaxNonVdrUsageKey                              = "throttler-inbound-disk-max-non-validator-usage"
	DiskMaxNonVdrNodeUsageKey                          = "throttler-inbound-disk-max-non-validator-node-usage"
	OutboundThrottlerAtLargeAllocSizeKey               = "throttler-outbound-at-large-alloc-size"
	OutboundThrottlerVdrAllocSizeKey                   = "throttler-outbound-validator-alloc-size"
	OutboundThrottlerNodeMaxAtLargeBytesKey            = "throttler-outbound-node-max-at-large-bytes"
	UptimeMetricFreqKey                                = "uptime-metric-freq"
	VMAliasesFileKey                                   = "vm-aliases-file"
	VMAliasesContentKey                                = "vm-aliases-file-content"
	ChainAliasesFileKey                                = "chain-aliases-file"
	ChainAliasesContentKey                             = "chain-aliases-file-content"
	TracingEnabledKey                                  = "tracing-enabled"
	TracingEndpointKey                                 = "tracing-endpoint"
	TracingInsecureKey                                 = "tracing-insecure"
	TracingSampleRateKey                               = "tracing-sample-rate"
	TracingExporterTypeKey                             = "tracing-exporter-type"
	TracingHeadersKey                                  = "tracing-headers"
	ProcessContextFileKey                              = "process-context-file"
)
View Source
const EnvPrefix = "avago"
View Source
const HTTPWriteTimeoutKey = "http-write-timeout" // #nosec G101

the HTTPWriteTimeoutKey was moved here so that it would not generate the false-positive linter error "G101: Potential hardcoded credentials" when running golangci-lint.

Variables

View Source
var DashesToUnderscores = strings.NewReplacer("-", "_")

Functions

func BuildFlagSet added in v1.4.9

func BuildFlagSet() *pflag.FlagSet

BuildFlagSet returns a complete set of flags for avalanchego

func BuildViper added in v1.4.9

func BuildViper(fs *pflag.FlagSet, args []string) (*viper.Viper, error)

BuildViper returns the viper environment from parsing config file from default search paths and any parsed command line flags

func EnvVarName added in v1.11.12

func EnvVarName(prefix string, key string) string

func GetExpandedArg added in v1.7.11

func GetExpandedArg(v *viper.Viper, key string) string

GetExpandedArg gets the string in viper corresponding to [key] and expands any variables using the OS env. If the AvalancheGoDataDirVar var is used, we expand the value of the variable with the string in viper corresponding to DataDirKey.

func GetExpandedString added in v1.7.11

func GetExpandedString(v *viper.Viper, s string) string

GetExpandedString expands [s] with any variables using the OS env. If the AvalancheGoDataDirVar var is used, we expand the value of the variable with the string in viper corresponding to DataDirKey.

func GetNodeConfig added in v1.4.9

func GetNodeConfig(v *viper.Viper) (node.Config, error)

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL