blockchain

package
v0.2.7 Latest Latest
Warning

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

Go to latest
Published: Nov 18, 2024 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultAnvilPrivateKey = `ac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80`
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Input

type Input struct {
	Type                     string   `toml:"type" validate:"required,oneof=anvil geth" envconfig:"net_type"`
	Image                    string   `toml:"image" validate:"required"`
	PullImage                bool     `toml:"pull_image"`
	Port                     string   `toml:"port" validate:"required"`
	ChainID                  string   `toml:"chain_id" validate:"required"`
	DockerCmdParamsOverrides []string `toml:"docker_cmd_params"`
	Out                      *Output  `toml:"out"`
}

Input is a blockchain network configuration params

type Node

type Node struct {
	HostWSUrl             string `toml:"ws_url"`
	HostHTTPUrl           string `toml:"http_url"`
	DockerInternalWSUrl   string `toml:"docker_internal_ws_url"`
	DockerInternalHTTPUrl string `toml:"docker_internal_http_url"`
}

Node represents blockchain node output, URLs required for connection locally and inside docker network

type Output

type Output struct {
	UseCache      bool    `toml:"use_cache"`
	ContainerName string  `toml:"container_name"`
	ChainID       string  `toml:"chain_id"`
	Nodes         []*Node `toml:"nodes"`
}

Output is a blockchain network output, ChainID and one or more nodes that forms the network

func NewBlockchainNetwork

func NewBlockchainNetwork(in *Input) (*Output, error)

NewBlockchainNetwork this is an abstraction that can spin up various blockchain network simulators - Anvil - Geth

Jump to

Keyboard shortcuts

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