Documentation ¶
Index ¶
- Constants
- Variables
- func DefaultPaths() []string
- func Exists(path string) bool
- func GlobalPath() string
- func IsDefaultPath(paths []string) bool
- func ProcessorRun(raw []byte) ([]byte, map[string]string)
- func StringToAddress(value string) (flow.Address, error)
- func StringToHexKey(key string, sigAlgo string) (crypto.PrivateKey, error)
- func StringToKeyIndex(value string) (int, error)
- 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) AddContract(account string, network string, contract ContractDeployment)
- func (d *Deployments) AddOrUpdate(deployment Deployment)
- func (d *Deployments) ByAccountAndNetwork(account string, network string) Deployments
- func (d *Deployments) ByNetwork(network string) Deployments
- func (d *Deployments) Remove(account string, network string) error
- func (d *Deployments) RemoveContract(account string, network string, contractName string)
- type Emulator
- type Emulators
- type KeyType
- type Loader
- type Network
- type Networks
- type Parser
- type Parsers
- type ReaderWriter
Constants ¶
const ( KeyTypeHex KeyType = "hex" KeyTypeGoogleKMS KeyType = "google-kms" KeyTypeBip44 KeyType = "bip44" KeyTypeFile KeyType = "file" DefaultEmulatorConfigName = "default" DefaultEmulatorServiceAccountName = "emulator-account" DefaultEmulatorPort = 3569 )
const DefaultPath = "flow.json"
Variables ¶
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 ¶
func ProcessorRun ¶
ProcessorRun all pre-processors.
func StringToAddress ¶
StringToAddress converts string to valid Flow address.
func StringToHexKey ¶
func StringToHexKey(key string, sigAlgo string) (crypto.PrivateKey, error)
StringToHexKey converts string private key and signature algorithm to private key.
func StringToKeyIndex ¶
StringToKeyIndex converts string key index to valid key index integer.
Types ¶
type Account ¶
type Account struct { Name string Address flow.Address Key AccountKey // Location is the configuration file containing this account. // // This field is only set if the external "location" // syntax is used. Otherwise this field is empty. // // Ref: https://docs.onflow.org/flow-cli/security/#private-account-configuration-file Location string UseAdvanceFormat bool }
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.
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 Contract ¶
Contract defines the configuration for a Cadence contract.
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 StringToDeployment ¶
func StringToDeployment(network string, account string, contracts []string) Deployment
StringToDeployment converts string to deployment.
type Deployments ¶
type Deployments []Deployment
func (*Deployments) AddContract ¶
func (d *Deployments) AddContract(account string, network string, contract ContractDeployment)
AddContract to deployment list on the account name and network name.
Deployment needs to be previously created by calling AddOrUpdate otherwise the contract is not added.
func (*Deployments) AddOrUpdate ¶
func (d *Deployments) AddOrUpdate(deployment Deployment)
AddOrUpdate add new or update if already present.
func (*Deployments) ByAccountAndNetwork ¶
func (d *Deployments) ByAccountAndNetwork(account string, network string) Deployments
ByAccountAndNetwork get deploy by account and network.
func (*Deployments) ByNetwork ¶
func (d *Deployments) ByNetwork(network string) Deployments
ByNetwork get all deployments by network.
func (*Deployments) Remove ¶
func (d *Deployments) Remove(account string, network string) error
Remove removes deployment by account and network.
func (*Deployments) RemoveContract ¶
func (d *Deployments) RemoveContract(account string, network string, contractName string)
RemoveContract removes a specific contract by name from an existing deployment identified by account name and network name.
type Emulators ¶
type Emulators []Emulator
func DefaultEmulators ¶
func DefaultEmulators() Emulators
DefaultEmulators gets all default emulators.
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) AccountsFromFile ¶
func (*Loader) AddConfigParser ¶
AddConfigParser adds a new configuration parser.
func (*Loader) Load ¶
Load loads configuration from one or more file paths.
If more than one path is specified, their contents are merged together into on configuration object.
func (*Loader) SetAccountFromFile ¶
type Network ¶
Network defines the configuration for a Flow network.
func DefaultEmulatorNetwork ¶
func DefaultEmulatorNetwork() Network
DefaultEmulatorNetwork get default emulator network.
func DefaultMainnetNetwork ¶
func DefaultMainnetNetwork() Network
DefaultMainnetNetwork get default mainnet network.
func DefaultSandboxNetwork ¶
func DefaultSandboxNetwork() Network
func DefaultTestnetNetwork ¶
func DefaultTestnetNetwork() Network
DefaultTestnetNetwork get default testnet network.
func StringToNetwork ¶
StringToNetwork converts string to network.
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.