Documentation ¶
Index ¶
- Constants
- Variables
- func BuildFlagSet() *pflag.FlagSet
- func BuildViper(fs *pflag.FlagSet, args []string) (*viper.Viper, error)
- func EnvVarName(prefix string, key string) string
- func GetExpandedArg(v *viper.Viper, key string) string
- func GetExpandedString(v *viper.Viper, s string) string
- func GetNodeConfig(v *viper.Viper) (node.Config, error)
Constants ¶
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" )
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" )
const EnvPrefix = "avago"
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 ¶
var DashesToUnderscores = strings.NewReplacer("-", "_")
Functions ¶
func BuildFlagSet ¶ added in v1.4.9
BuildFlagSet returns a complete set of flags for avalanchego
func BuildViper ¶ added in v1.4.9
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 GetExpandedArg ¶ added in v1.7.11
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
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.
Types ¶
This section is empty.