flags

package
v0.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2020 License: GPL-3.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ArchiveEnableFlag defines whether or not the beacon chain should archive
	// historical blocks, attestations, and validator set changes.
	ArchiveEnableFlag = cli.BoolFlag{
		Name:  "archive",
		Usage: "Whether or not beacon chain should archive historical data including blocks, attestations, and validator set changes",
	}
	// ArchiveValidatorSetChangesFlag defines whether or not the beacon chain should archive
	// historical validator set changes in persistent storage.
	ArchiveValidatorSetChangesFlag = cli.BoolFlag{
		Name:  "archive-validator-set-changes",
		Usage: "Whether or not beacon chain should archive historical validator set changes",
	}
	// ArchiveBlocksFlag defines whether or not the beacon chain should archive
	// historical block data in persistent storage.
	ArchiveBlocksFlag = cli.BoolFlag{
		Name:  "archive-blocks",
		Usage: "Whether or not beacon chain should archive historical blocks",
	}
	// ArchiveAttestationsFlag defines whether or not the beacon chain should archive
	// historical attestation data in persistent storage.
	ArchiveAttestationsFlag = cli.BoolFlag{
		Name:  "archive-attestations",
		Usage: "Whether or not beacon chain should archive historical blocks",
	}
)
View Source
var (
	// NoCustomConfigFlag determines whether to launch a beacon chain using real parameters or demo parameters.
	NoCustomConfigFlag = cli.BoolFlag{
		Name:  "no-custom-config",
		Usage: "Run the beacon chain with the real parameters from phase 0.",
	}
	// HTTPWeb3ProviderFlag provides an HTTP access endpoint to an ETH 1.0 RPC.
	HTTPWeb3ProviderFlag = cli.StringFlag{
		Name:  "http-web3provider",
		Usage: "A mainchain web3 provider string http endpoint",
		Value: "https://goerli.prylabs.net",
	}
	// Web3ProviderFlag defines a flag for a mainchain RPC endpoint.
	Web3ProviderFlag = cli.StringFlag{
		Name:  "web3provider",
		Usage: "A mainchain web3 provider string endpoint. Can either be an IPC file string or a WebSocket endpoint. Cannot be an HTTP endpoint.",
		Value: "wss://goerli.prylabs.net/websocket",
	}
	// DepositContractFlag defines a flag for the deposit contract address.
	DepositContractFlag = cli.StringFlag{
		Name:  "deposit-contract",
		Usage: "Deposit contract address. Beacon chain node will listen logs coming from the deposit contract to determine when validator is eligible to participate.",
		Value: "0x4689a3C63CE249355C8a573B5974db21D2d1b8Ef",
	}
	// RPCHost defines the host on which the RPC server should listen.
	RPCHost = cli.StringFlag{
		Name:  "rpc-host",
		Usage: "Host on which the RPC server should listen",
		Value: "0.0.0.0",
	}
	// RPCPort defines a beacon node RPC port to open.
	RPCPort = cli.IntFlag{
		Name:  "rpc-port",
		Usage: "RPC port exposed by a beacon node",
		Value: 4000,
	}
	// RPCMaxPageSize defines the maximum numbers per page returned in RPC responses from this
	// beacon node (default: 500).
	RPCMaxPageSize = cli.IntFlag{
		Name:  "rpc-max-page-size",
		Usage: "Max number of items returned per page in RPC responses for paginated endpoints (default: 500)",
		Value: 500,
	}
	// CertFlag defines a flag for the node's TLS certificate.
	CertFlag = cli.StringFlag{
		Name:  "tls-cert",
		Usage: "Certificate for secure gRPC. Pass this and the tls-key flag in order to use gRPC securely.",
	}
	// KeyFlag defines a flag for the node's TLS key.
	KeyFlag = cli.StringFlag{
		Name:  "tls-key",
		Usage: "Key for secure gRPC. Pass this and the tls-cert flag in order to use gRPC securely.",
	}
	// GRPCGatewayPort enables a gRPC gateway to be exposed for Prysm.
	GRPCGatewayPort = cli.IntFlag{
		Name:  "grpc-gateway-port",
		Usage: "Enable gRPC gateway for JSON requests",
	}
	// MinSyncPeers specifies the required number of successful peer handshakes in order
	// to start syncing with external peers.
	MinSyncPeers = cli.IntFlag{
		Name:  "min-sync-peers",
		Usage: "The required number of valid peers to connect with before syncing.",
		Value: 3,
	}
	// ContractDeploymentBlock is the block in which the eth1 deposit contract was deployed.
	ContractDeploymentBlock = cli.IntFlag{
		Name:  "contract-deployment-block",
		Usage: "The eth1 block in which the deposit contract was deployed.",
		Value: 1960177,
	}
	// SetGCPercent is the percentage of current live allocations at which the garbage collector is to run.
	SetGCPercent = cli.IntFlag{
		Name:  "gc-percent",
		Usage: "The percentage of freshly allocated data to live data on which the gc will be run again.",
		Value: 100,
	}
	// UnsafeSync starts the beacon node from the previously saved head state and syncs from there.
	UnsafeSync = cli.BoolFlag{
		Name:  "unsafe-sync",
		Usage: "Starts the beacon node with the previously saved head state instead of finalized state.",
	}
	// SlasherCertFlag defines a flag for the slasher TLS certificate.
	SlasherCertFlag = cli.StringFlag{
		Name:  "slasher-tls-cert",
		Usage: "Certificate for secure slasher gRPC connection. Pass this in order to use slasher gRPC securely.",
	}
	// SlasherProviderFlag defines a flag for a slasher RPC provider.
	SlasherProviderFlag = cli.StringFlag{
		Name:  "slasher-provider",
		Usage: "A slasher provider string endpoint. Can either be an grpc server endpoint.",
		Value: "127.0.0.1:5000",
	}
)
View Source
var (
	// InteropGenesisStateFlag defines a flag for the beacon node to load genesis state via file.
	InteropGenesisStateFlag = cli.StringFlag{
		Name:  "interop-genesis-state",
		Usage: "The genesis state file (.SSZ) to load from",
	}
	// InteropMockEth1DataVotesFlag enables mocking the eth1 proof-of-work chain data put into blocks by proposers.
	InteropMockEth1DataVotesFlag = cli.BoolFlag{
		Name:  "interop-eth1data-votes",
		Usage: "Enable mocking of eth1 data votes for proposers to package into blocks",
	}

	// InteropGenesisTimeFlag specifies genesis time for state generation.
	InteropGenesisTimeFlag = cli.Uint64Flag{
		Name: "interop-genesis-time",
		Usage: "Specify the genesis time for interop genesis state generation. Must be used with " +
			"--interop-num-validators",
	}
	// InteropNumValidatorsFlag specifies number of genesis validators for state generation.
	InteropNumValidatorsFlag = cli.Uint64Flag{
		Name:  "interop-num-validators",
		Usage: "Specify number of genesis validators to generate for interop. Must be used with --interop-genesis-time",
	}
)

Functions

func ConfigureGlobalFlags added in v0.3.0

func ConfigureGlobalFlags(ctx *cli.Context)

ConfigureGlobalFlags initializes the global config. based on the provided cli context.

func Init added in v0.3.0

func Init(c *GlobalFlags)

Init sets the global config equal to the config that is passed in.

Types

type GlobalFlags added in v0.3.0

type GlobalFlags struct {
	EnableArchive                     bool
	EnableArchivedValidatorSetChanges bool
	EnableArchivedBlocks              bool
	EnableArchivedAttestations        bool
	MinimumSyncPeers                  int
	MaxPageSize                       int
	DeploymentBlock                   int
	UnsafeSync                        bool
}

GlobalFlags specifies all the global flags for the beacon node.

func Get added in v0.3.0

func Get() *GlobalFlags

Get retrieves the global config.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL