Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Flags ¶
type Flags struct { // Avash metadata ClientLocation string Meta string DataDir string // Assertions AssertionsEnabled bool // Version Version bool // TX fees TxFee uint // IP PublicIP string DynamicUpdateDuration string DynamicPublicIP string // Network ID NetworkID string // Crypto SignatureVerificationEnabled bool // APIs APIAdminEnabled bool APIIPCsEnabled bool APIKeystoreEnabled bool APIMetricsEnabled bool APIHealthEnabled bool APIInfoEnabled bool // HTTP HTTPHost string HTTPPort uint HTTPTLSEnabled bool HTTPTLSCertFile string HTTPTLSKeyFile string // Bootstrapping BootstrapIPs string BootstrapIDs string BootstrapBeaconConnectionTimeout string // Database DBType string DBDir string // Build BuildDir string // Plugins PluginDir string // Logging LogLevel string LogDir string LogDisplayLevel string LogDisplayHighlight string // Consensus SnowAvalancheBatchSize int SnowAvalancheNumParents int SnowSampleSize int SnowQuorumSize int SnowVirtuousCommitThreshold int SnowRogueCommitThreshold int SnowEpochFirstTransition int SnowEpochDuration string SnowConcurrentRepolls int MinDelegatorStake int ConsensusShutdownTimeout string ConsensusGossipFrequency string MinDelegationFee int MinValidatorStake int MaxStakeDuration string MaxValidatorStake int // Staking StakingEnabled bool StakeMintingPeriod string StakingPort uint StakingDisabledWeight int StakingTLSKeyFile string StakingTLSCertFile string // Auth APIAuthRequired bool APIAuthPasswordFileKey string MinStakeDuration string // Whitelisted Subnets WhitelistedSubnets string // Config ConfigFile string // IPCS IPCSChainIDs string IPCSPath string // File Descriptor Limit FDLimit int // Benchlist BenchlistFailThreshold int BenchlistMinFailingDuration string BenchlistPeerSummaryEnabled bool BenchlistDuration string // Network NetworkInitialTimeout string NetworkMinimumTimeout string NetworkMaximumTimeout string NetworkHealthMaxSendFailRateKey float64 NetworkHealthMaxPortionSendQueueFillKey float64 NetworkHealthMaxTimeSinceMsgSentKey string NetworkHealthMaxTimeSinceMsgReceivedKey string NetworkHealthMinConnPeers int NetworkTimeoutCoefficient int NetworkTimeoutHalflife string NetworkCompressionEnabled bool // Peer List Gossiping NetworkPeerListGossipFrequency string NetworkPeerListGossipSize int NetworkPeerListSize int // Uptime Requirement UptimeRequirement float64 // Retry RetryBootstrapWarnFrequency int RetryBootstrap bool // Health HealthCheckAveragerHalflifeKey string HealthCheckFreqKey string // Router RouterHealthMaxOutstandingRequestsKey int RouterHealthMaxDropRateKey float64 IndexEnabled bool PluginModeEnabled bool }
Flags represents available CLI flags when starting a node
func ConvertYAML ¶
ConvertYAML converts a FlagsYAML struct into a Flags struct
func DefaultFlags ¶
func DefaultFlags() Flags
DefaultFlags returns Avash-specific default node flags
func (*Flags) SetDefaults ¶
func (flags *Flags) SetDefaults()
SetDefaults sets any zero-value field to its default value
type FlagsYAML ¶
type FlagsYAML struct { ClientLocation *string `yaml:"-"` Meta *string `yaml:"-"` DataDir *string `yaml:"-"` AssertionsEnabled *bool `yaml:"assertions-enabled,omitempty"` Version *bool `yaml:"version,omitempty"` TxFee *uint `yaml:"tx-fee,omitempty"` PublicIP *string `yaml:"public-ip,omitempty"` DynamicPublicIP *string `yaml:"dynamic-public-ip,omitempty"` NetworkID *string `yaml:"network-id,omitempty"` SignatureVerificationEnabled *bool `yaml:"signature-verification-enabled,omitempty"` APIAdminEnabled *bool `yaml:"api-admin-enabled,omitempty"` APIIPCsEnabled *bool `yaml:"api-ipcs-enabled,omitempty"` APIKeystoreEnabled *bool `yaml:"api-keystore-enabled,omitempty"` APIMetricsEnabled *bool `yaml:"api-metrics-enabled,omitempty"` HTTPHost *string `yaml:"http-host,omitempty"` HTTPPort *uint `yaml:"http-port,omitempty"` HTTPTLSEnabled *bool `yaml:"http-tls-enabled,omitempty"` HTTPTLSCertFile *string `yaml:"http-tls-cert-file,omitempty"` HTTPTLSKeyFile *string `yaml:"http-tls-key-file,omitempty"` BootstrapIPs *string `yaml:"bootstrap-ips,omitempty"` BootstrapIDs *string `yaml:"bootstrap-ids,omitempty"` BootstrapBeaconConnectionTimeout *string `yaml:"bootstrap-beacon-connection-timeout,omitempty"` DBType *string `yaml:"db-type,omitempty"` DBDir *string `yaml:"db-dir,omitempty"` BuildDir *string `yaml:"build-dir,omitempty"` PluginDir *string `yaml:"plugin-dir,omitempty"` LogLevel *string `yaml:"log-level,omitempty"` LogDir *string `yaml:"log-dir,omitempty"` LogDisplayLevel *string `yaml:"log-display-level,omitempty"` LogDisplayHighlight *string `yaml:"log-display-highlight,omitempty"` SnowAvalancheBatchSize *int `yaml:"snow-avalanche-batch-size,omitempty"` SnowAvalancheNumParents *int `yaml:"snow-avalanche-num-parents,omitempty"` SnowSampleSize *int `yaml:"snow-sample-size,omitempty"` SnowQuorumSize *int `yaml:"snow-quorum-size,omitempty"` SnowVirtuousCommitThreshold *int `yaml:"snow-virtuous-commit-threshold,omitempty"` SnowRogueCommitThreshold *int `yaml:"snow-rogue-commit-threshold,omitempty"` SnowEpochFirstTransition *int `yaml:"snow-epoch-first-transition,omitempty"` SnowEpochDuration *string `yaml:"snow-epoch-duration,omitempty"` SnowConcurrentRepolls *int `yaml:"snow-concurrent-repolls,omitempty"` MinDelegatorStake *int `yaml:"min-delegator-stake,omitempty"` ConsensusShutdownTimeout *string `yaml:"consensus-shutdown-timeout,omitempty"` ConsensusGossipFrequency *string `yaml:"consensus-gossip-frequency,omitempty"` MinDelegationFee *int `yaml:"min-delegation-fee,omitempty"` MinValidatorStake *int `yaml:"min-validator-stake,omitempty"` MaxStakeDuration *string `yaml:"max-stake-duration,omitempty"` MaxValidatorStake *int `yaml:"max-validator-stake,omitempty"` StakeMintingPeriod *string `yaml:"stake-minting-period,omitempty"` NetworkInitialTimeout *string `yaml:"network-initial-timeout,omitempty"` NetworkMinimumTimeout *string `yaml:"network-minimum-timeout,omitempty"` NetworkMaximumTimeout *string `yaml:"network-maximum-timeout,omitempty"` NetworkHealthMaxSendFailRateKey *float64 `yaml:"network-health-max-send-fail-rate,omitempty"` NetworkHealthMaxPortionSendQueueFillKey *float64 `yaml:"network-health-max-portion-send-queue-full"` NetworkHealthMaxTimeSinceMsgSentKey *string `yaml:"network-health-max-time-since-msg-sent,omitempty"` NetworkHealthMaxTimeSinceMsgReceivedKey *string `yaml:"network-health-max-time-since-msg-received,omitempty"` NetworkHealthMinConnPeers *int `yaml:"network-health-min-conn-peers,omitempty"` NetworkTimeoutCoefficient *int `yaml:"network-timeout-coefficient,omitempty"` NetworkTimeoutHalflife *string `yaml:"network-timeout-halflife,omitempty"` NetworkPeerListGossipFrequency *string `yaml:"network-peer-list-gossip-frequency,omitempty"` NetworkPeerListGossipSize *int `yaml:"network-peer-list-gossip-size,omitempty"` NetworkPeerListSize *int `yaml:"network-peer-list-size,omitempty"` StakingEnabled *bool `yaml:"staking-enabled,omitempty"` StakingPort *uint `yaml:"staking-port,omitempty"` StakingDisabledWeight *int `yaml:"staking-disabled-weight,omitempty"` StakingTLSKeyFile *string `yaml:"staking-tls-key-file,omitempty"` StakingTLSCertFile *string `yaml:"staking-tls-cert-file,omitempty"` APIAuthRequired *bool `yaml:"api-auth-required,omitempty"` APIAuthPasswordFileKey *string `yaml:"api-auth-password-file,omitempty"` MinStakeDuration *string `yaml:"min-stake-duration,omitempty"` WhitelistedSubnets *string `yaml:"whitelisted-subnets,omitempty"` APIHealthEnabled *bool `yaml:"api-health-enabled,omitempty"` ConfigFile *string `yaml:"config-file,omitempty"` APIInfoEnabled *bool `yaml:"api-info-enabled,omitempty"` NetworkCompressionEnabled *bool `yaml:"network-compression-enabled,omitempty"` IPCSChainIDs *string `yaml:"ipcs-chain-ids,omitempty"` IPCSPath *string `yaml:"ipcs-path,omitempty"` FDLimit *int `yaml:"fd-limit,omitempty"` BenchlistDuration *string `yaml:"benchlist-duration,omitempty"` BenchlistFailThreshold *int `yaml:"benchlist-fail-threshold,omitempty"` BenchlistMinFailingDuration *string `yaml:"benchlist-min-failing-duration,omitempty"` BenchlistPeerSummaryEnabled *bool `yaml:"benchlist-peer-summary-enabled,omitempty"` UptimeRequirement *float64 `yaml:"uptime-requirement,omitempty"` RetryBootstrapWarnFrequency *uint `yaml:"bootstrap-retry-warn-frequency,omitempty"` RetryBootstrap *bool `yaml:"bootstrap-retry-enabled,omitempty"` HealthCheckAveragerHalflifeKey *string `yaml:"health-check-averager-halflife,omitempty"` HealthCheckFreqKey *string `yaml:"health-check-frequency,omitempty"` RouterHealthMaxOutstandingRequestsKey *int `yaml:"router-health-max-outstanding-requests,omitempty"` RouterHealthMaxDropRateKey *float64 `yaml:"router-health-max-drop-rate,omitempty"` IndexEnabled *bool `yaml:"index-enabled,omitempty"` PluginModeEnabled *bool `yaml:"plugin-mode-enabled,omitempty"` }
FlagsYAML mimics Flags but uses pointers for proper YAML interpretation Note: FlagsYAML and Flags must always be identical in fields, otherwise parsing will break
type Metadata ¶
type Metadata struct { Serverhost string `json:"public-ip"` Stakingport string `json:"staking-port"` HTTPport string `json:"http-port"` HTTPTLS bool `json:"http-tls-enabled"` Dbdir string `json:"db-dir"` Datadir string `json:"data-dir"` Logsdir string `json:"log-dir"` Loglevel string `json:"log-level"` StakingEnabled bool `json:"staking-enabled"` StakerCertPath string `json:"staking-tls-cert-file"` StakerKeyPath string `json:"staking-tls-key-file"` }
Metadata struct for storing metadata, available to commands
Click to show internal directories.
Click to hide internal directories.