Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetFundPath ¶ added in v0.9.1
GetFundPath generate key file name for composite name
func GetMigrationDaemonPath ¶ added in v0.9.0
GetMigrationDaemonPath generate key file name for migration daemon
Types ¶
type Config ¶ added in v0.9.0
type Config struct { // MembersKeysDir is the root key place. MembersKeysDir string `mapstructure:"members_keys_dir" yaml:"members_keys_dir"` // DiscoveryKeysDir is a default directory where save keys for discovery nodes. DiscoveryKeysDir string `mapstructure:"discovery_keys_dir" yaml:"discovery_keys_dir"` // NotDiscoveryKeysDir is a default directory where save keys for discovery nodes. NotDiscoveryKeysDir string `mapstructure:"not_discovery_keys_dir" yaml:"not_discovery_keys_dir"` // KeysNameFormat is the default key file name format for discovery nodes. KeysNameFormat string `mapstructure:"keys_name_format" yaml:"keys_name_format"` // ReuseKeys is a flag to reuse discovery nodes keys (don't use if your not understand how it works) ReuseKeys bool `mapstructure:"reuse_keys" yaml:"reuse_keys"` HeavyGenesisConfigFile string `mapstructure:"heavy_genesis_config_file" yaml:"heavy_genesis_config_file"` HeavyGenesisPluginsDir string `mapstructure:"heavy_genesis_plugins_dir" yaml:"heavy_genesis_plugins_dir"` // RootBalance is a start balance for the root member's wallet. RootBalance string `mapstructure:"root_balance" yaml:"root_balance"` // MDBalance is a start balance for the migration admin member's wallet. MDBalance string `mapstructure:"md_balance" yaml:"md_balance"` // VestingPeriodInPulses - interval of count pulses for the full period of partial release. VestingPeriodInPulses int64 `mapstructure:"vesting_pulse_period" yaml:"vesting_pulse_period"` // VestingPeriodInPulses - interval of count pulses for one step of partial release. VestingStepInPulses int64 `mapstructure:"vesting_pulse_step" yaml:"vesting_pulse_step"` // LockupPeriodInPulses - interval of count pulses for the full period of hold. LockupPeriodInPulses int64 `mapstructure:"lockup_pulse_period" yaml:"lockup_pulse_period"` PKShardCount int `mapstructure:"pk_shard_count" yaml:"pk_shard_count"` MAShardCount int `mapstructure:"ma_shard_count" yaml:"ma_shard_count"` Contracts Contracts MajorityRule int `mapstructure:"majority_rule" yaml:"majority_rule"` MinRoles struct { Virtual uint `mapstructure:"virtual" yaml:"virtual"` HeavyMaterial uint `mapstructure:"heavy_material" yaml:"heavy_material"` LightMaterial uint `mapstructure:"light_material" yaml:"light_material"` } `mapstructure:"min_roles" yaml:"min_roles"` // DiscoveryNodes is a discovery nodes list. DiscoveryNodes []Node `mapstructure:"discovery_nodes" yaml:"discovery_nodes"` // Nodes is used only by generate_insolar_config.go Nodes []Node `mapstructure:"nodes" yaml:"nodes"` // PulsarPublicKeys is the pulsar's public keys for pulses validation // (not in use, just for future features). PulsarPublicKeys []string `mapstructure:"pulsar_public_keys" yaml:"pulsar_public_keys"` }
Config contains configuration required for bootstrap.
func ParseConfig ¶ added in v0.9.0
ParseConfig parse bootstrap config.
type Contracts ¶ added in v0.9.0
type Contracts struct { // Insgocc is the path to ingocc binary for plugins generation. Insgocc string // OutDir is the path to directory where plugins so files would be saved. OutDir string }
Contracts contains config for contract's plugins generation.
type Generator ¶ added in v0.9.0
type Generator struct {
// contains filtered or unexported fields
}
Generator is a component for generating bootstrap files required for discovery nodes bootstrap and heavy genesis.
func NewGenerator ¶ added in v0.9.0
NewGenerator parses config file and creates new generator on success.
func NewGeneratorWithConfig ¶ added in v0.9.0
NewGeneratorWithConfig creates new Generator with provided config.
type Node ¶ added in v0.9.0
type Node struct { Host string `mapstructure:"host" yaml:"host"` Role string `mapstructure:"role" yaml:"role"` // KeyName is used for generating keys file for discovery nodes. KeyName string `mapstructure:"key_name" yaml:"key_name"` // CertName is used for generating cert file for discovery nodes. CertName string `mapstructure:"cert_name" yaml:"cert_name"` // KeysFile is used to set path to keys file in insolard config for every non-discovery nodes // (used only by generate_insolar_config.go). KeysFile string `mapstructure:"keys_file" yaml:"keys_file"` }
Node contains info about discovery nodes.
Click to show internal directories.
Click to hide internal directories.