Documentation ¶
Index ¶
- Constants
- Variables
- func DefaultPaths() []string
- func Exists(path string) bool
- func GlobalPath() string
- func IsDefaultPath(paths []string) bool
- type Account
- type AccountKey
- type Accounts
- type Alias
- type Aliases
- type Config
- type Contract
- type ContractDeployment
- type Contracts
- type Deployment
- type Deployments
- func (d *Deployments) AddOrUpdate(deployment Deployment)
- func (d *Deployments) All() Deployments
- func (d *Deployments) ByAccountAndNetwork(account string, network string) *Deployment
- func (d *Deployments) ByNetwork(network string) Deployments
- func (d *Deployments) Remove(account string, network string) error
- type Emulator
- type Emulators
- type KeyType
- type Loader
- type Network
- type Networks
- type Parser
- type Parsers
- type ReaderWriter
Constants ¶
const ( DefaultHashAlgo = crypto.SHA3_256 DefaultSigAlgo = crypto.ECDSA_P256 )
const DefaultPath = "flow.json"
Variables ¶
var ( DefaultEmulator = Emulator{ Name: "default", ServiceAccount: "emulator-account", Port: 3569, } DefaultEmulators = Emulators{DefaultEmulator} )
var ( EmptyNetwork = Network{} EmulatorNetwork = Network{ Name: "emulator", Host: "127.0.0.1:3569", } TestingNetwork = Network{ Name: "testing", Host: "127.0.0.1:3569", } TestnetNetwork = Network{ Name: "testnet", Host: "access.devnet.nodes.onflow.org:9000", } MainnetNetwork = Network{ Name: "mainnet", Host: "access.mainnet.nodes.onflow.org:9000", } DefaultNetworks = Networks{ EmulatorNetwork, TestingNetwork, TestnetNetwork, MainnetNetwork, } )
var ErrDoesNotExist = errors.New("missing configuration")
ErrDoesNotExist is error to be returned when config file does not exists.
var ErrOutdatedFormat = errors.New("you are using old configuration format")
Functions ¶
func DefaultPaths ¶
func DefaultPaths() []string
DefaultPaths determines default paths for configuration.
func IsDefaultPath ¶
Types ¶
type Account ¶
type Account struct { Name string Address flow.Address Key AccountKey }
Account defines the configuration for a Flow account.
type AccountKey ¶
type AccountKey struct { Type KeyType Index int SigAlgo crypto.SignatureAlgorithm HashAlgo crypto.HashAlgorithm ResourceID string Mnemonic string DerivationPath string PrivateKey crypto.PrivateKey Location string Env string }
AccountKey represents account key and all their possible configuration formats.
func NewDefaultAccountKey ¶
func NewDefaultAccountKey(pkey crypto.PrivateKey) AccountKey
func (*AccountKey) IsDefault ¶
func (a *AccountKey) IsDefault() bool
type Accounts ¶
type Accounts []Account
func (*Accounts) AddOrUpdate ¶
AddOrUpdate add new or update if already present.
type Alias ¶
type Alias struct { Network string Address flow.Address }
Alias defines an existing pre-deployed contract address for specific network.
type Config ¶
type Config struct { Emulators Emulators Contracts Contracts Networks Networks Accounts Accounts Deployments Deployments }
Config contains all the configuration for CLI and implements getters and setters for properties. Config is agnostic to format from which it is built and it doesn't provide persistence functionality.
Emulators contains all the emulator config Contracts contains all contracts definitions and their sources Networks defines all the Flow networks addresses Accounts defines Flow accounts and their addresses, private key and more properties Deployments describes which contracts should be deployed to which accounts
type ContractDeployment ¶
ContractDeployment defines the deployment of the contract with possible args.
type Contracts ¶
type Contracts []Contract
func (*Contracts) AddOrUpdate ¶
AddOrUpdate add new or update if already present.
type Deployment ¶
type Deployment struct { Network string // network name to deploy to Account string // account name to which to deploy to Contracts []ContractDeployment // contracts to deploy }
Deployment defines the configuration for a contract deployment.
func (*Deployment) AddContract ¶
func (d *Deployment) AddContract(contract ContractDeployment)
AddContract to deployment list on the account name and network name.
func (*Deployment) RemoveContract ¶
func (d *Deployment) RemoveContract(contractName string)
RemoveContract removes a specific contract by name from an existing deployment identified by account name and network name.
type Deployments ¶
type Deployments []Deployment
func (*Deployments) AddOrUpdate ¶
func (d *Deployments) AddOrUpdate(deployment Deployment)
AddOrUpdate add new or update if already present.
func (*Deployments) All ¶ added in v1.3.2
func (d *Deployments) All() Deployments
All returns a list of all deployments
func (*Deployments) ByAccountAndNetwork ¶
func (d *Deployments) ByAccountAndNetwork(account string, network string) *Deployment
ByAccountAndNetwork get deploy by account and network.
func (*Deployments) ByNetwork ¶
func (d *Deployments) ByNetwork(network string) Deployments
ByNetwork get all deployments by network.
type Emulators ¶
type Emulators []Emulator
func (*Emulators) AddOrUpdate ¶
AddOrUpdate add new or update if already present.
type Loader ¶
type Loader struct { LoadedLocations []string // contains filtered or unexported fields }
Loader contains actions for composing and modifying configuration.
func (*Loader) AddConfigParser ¶
AddConfigParser adds a new configuration parser.
type Networks ¶
type Networks []Network
func (*Networks) AddOrUpdate ¶
AddOrUpdate add new network or update if already present.
type Parser ¶
type Parser interface { Serialize(*Config) ([]byte, error) Deserialize([]byte) (*Config, error) SupportsFormat(string) bool }
Parser is interface for any configuration format parser to implement.
type Parsers ¶
type Parsers []Parser
Parsers is a list of all configuration parsers.
func (*Parsers) FindForFormat ¶
FindForFormat finds a parser that can parse a specific format based on extension.