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.