cluster

package
v0.2.18-beta.0 Latest Latest
Warning

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

Go to latest
Published: Oct 20, 2022 License: MIT Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MakePoetEndpoint

func MakePoetEndpoint(ith int) string

MakePoetEndpoint generate a poet endpoint for the ith instance.

Types

type Account

type Account struct {
	PrivateKey ed25519.PrivateKey
	Address    types.Address
}

Account contains address and private key.

func (Account) String

func (a Account) String() string

type Cluster

type Cluster struct {
	// contains filtered or unexported fields
}

Cluster for managing state of the spacemesh cluster.

func Default

func Default(cctx *testcontext.Context, opts ...Opt) (*Cluster, error)

Default deployes bootnodes, one poet and the smeshers according to the cluster size.

func New

func New(cctx *testcontext.Context, opts ...Opt) *Cluster

New initializes Cluster with options.

func Reuse

func Reuse(cctx *testcontext.Context, opts ...Opt) (*Cluster, error)

Reuse will try to recover cluster from the given namespace, if not found it will create a new one.

func (*Cluster) Account

func (a *Cluster) Account(i int) Account

func (*Cluster) Accounts

func (a *Cluster) Accounts() int

func (*Cluster) AddBootnodes

func (c *Cluster) AddBootnodes(cctx *testcontext.Context, n int) error

AddBootnodes ...

func (*Cluster) AddPoet

func (c *Cluster) AddPoet(cctx *testcontext.Context) error

AddPoet ...

func (*Cluster) AddSmeshers

func (c *Cluster) AddSmeshers(cctx *testcontext.Context, n int) error

AddSmeshers ...

func (*Cluster) Address

func (a *Cluster) Address(i int) types.Address

func (*Cluster) Bootnodes

func (c *Cluster) Bootnodes() int

Bootnodes returns number of the bootnodes in the cluster.

func (*Cluster) Client

func (c *Cluster) Client(i int) *NodeClient

Client returns client for i-th node, either bootnode or smesher.

func (*Cluster) DeletePoets

func (c *Cluster) DeletePoets(cctx *testcontext.Context) error

DeletePoets delete all poet servers.

func (*Cluster) DeleteSmesher

func (c *Cluster) DeleteSmesher(cctx *testcontext.Context, node *NodeClient) error

DeleteSmesher will smesher i from the cluster.

func (*Cluster) Persist

func (a *Cluster) Persist(ctx *testcontext.Context) error

func (*Cluster) Poets

func (c *Cluster) Poets() int

Poets returns total number of poet servers.

func (*Cluster) Private

func (a *Cluster) Private(i int) ed25519.PrivateKey

func (*Cluster) Recover

func (a *Cluster) Recover(ctx *testcontext.Context) error

func (*Cluster) Total

func (c *Cluster) Total() int

Total returns total number of clients.

func (*Cluster) Wait

func (c *Cluster) Wait(tctx *testcontext.Context, i int) error

Wait for i-th client to be up.

type DeploymentFlag

type DeploymentFlag struct {
	Name, Value string
}

DeploymentFlag allows to configure specific flags for application binaries.

func Accounts

func Accounts(accounts map[string]uint64) DeploymentFlag

Accounts flag.

func Bootnodes

func Bootnodes(bootnodes ...string) DeploymentFlag

Bootnodes flag.

func CycleGap

func CycleGap(d time.Duration) DeploymentFlag

CycleGap ...

func DurationFlag

func DurationFlag(flag string, d time.Duration) DeploymentFlag

DurationFlag is a generic duration flag.

func EpochDuration

func EpochDuration(d time.Duration) DeploymentFlag

EpochDuration ...

func GenesisTime

func GenesisTime(t time.Time) DeploymentFlag

GenesisTime flag.

func GracePeriod

func GracePeriod(d time.Duration) DeploymentFlag

GracePeriod ...

func NetworkID

func NetworkID(id uint32) DeploymentFlag

NetworkID flag.

func PhaseShift

func PhaseShift(d time.Duration) DeploymentFlag

PhaseShift ...

func PoetEndpoint

func PoetEndpoint(endpoint string) DeploymentFlag

PoetEndpoint flag.

func PoetRestListen

func PoetRestListen(port int) DeploymentFlag

PoetRestListen socket pair with http api.

func RerunInterval

func RerunInterval(duration time.Duration) DeploymentFlag

RerunInterval flag.

func TargetOutbound

func TargetOutbound(target int) DeploymentFlag

TargetOutbound flag.

func (DeploymentFlag) Flag

func (d DeploymentFlag) Flag() string

Flag returns parseable flag from Name and Value.

type Node

type Node struct {
	Name      string
	IP        string
	P2P, GRPC uint16
	ID        string

	Created   time.Time
	Restarted time.Time
}

Node ...

func (Node) GRPCEndpoint

func (n Node) GRPCEndpoint() string

GRPCEndpoint returns grpc endpoint for the Node.

func (Node) P2PEndpoint

func (n Node) P2PEndpoint() string

P2PEndpoint returns full p2p endpoint, including identity.

type NodeClient

type NodeClient struct {
	Node
	*grpc.ClientConn
}

NodeClient is a Node with attached grpc connection.

type Opt

type Opt func(c *Cluster)

Opt is for configuring cluster.

func WithKeys

func WithKeys(n int) Opt

WithKeys generates n prefunded keys.

func WithSmesherFlag

func WithSmesherFlag(flag DeploymentFlag) Opt

WithSmesherFlag adds smesher flag.

type PodType

type PodType int

PodType indicates the type of pod.

const (
	// Smesher ...
	Smesher PodType = iota
	// Poet ...
	Poet
)

Jump to

Keyboard shortcuts

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