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 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 MeterVMsEnabled 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"` 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.