Version: v0.2.2 Latest Latest

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

Go to latest
Published: Oct 24, 2019 License: GPL-3.0 Imports: 28 Imported by: 0



Package client represents the functionality to act as a validator.



This section is empty.


This section is empty.


This section is empty.


type Config

type Config struct {
	Endpoint             string
	CertFlag             string
	Keys                 map[string]*keystore.Key
	LogValidatorBalances bool

Config for the validator service.

type Validator

type Validator interface {
	WaitForChainStart(ctx context.Context) error
	WaitForActivation(ctx context.Context) error
	CanonicalHeadSlot(ctx context.Context) (uint64, error)
	NextSlot() <-chan uint64
	SlotDeadline(slot uint64) time.Time
	LogValidatorGainsAndLosses(ctx context.Context, slot uint64) error
	UpdateAssignments(ctx context.Context, slot uint64) error
	RolesAt(slot uint64) map[[48]byte]pb.ValidatorRole // validator pubKey -> role
	AttestToBlockHead(ctx context.Context, slot uint64, pubKey [48]byte)
	ProposeBlock(ctx context.Context, slot uint64, pubKey [48]byte)

Validator interface defines the primary methods of a validator client.

type ValidatorService

type ValidatorService struct {
	// contains filtered or unexported fields

ValidatorService represents a service to manage the validator client routine.

func NewValidatorService

func NewValidatorService(ctx context.Context, cfg *Config) (*ValidatorService, error)

NewValidatorService creates a new validator service for the service registry.

func (*ValidatorService) Start

func (v *ValidatorService) Start()

Start the validator service. Launches the main go routine for the validator client.

func (*ValidatorService) Status

func (v *ValidatorService) Status() error

Status ...

WIP - not done.

func (*ValidatorService) Stop

func (v *ValidatorService) Stop() error

Stop the validator service.

Jump to

Keyboard shortcuts

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