config

package
v0.0.0-...-8d415c1 Latest Latest
Warning

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

Go to latest
Published: Feb 5, 2024 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	NodeURL              string   `mapstructure:"NODE_URL"`
	NodeHttpURL          string   `mapstructure:"NODE_HTTP_URL"`
	ExplorerAPIKey       string   `mapstructure:"EXPLORER_API_KEY"`
	NetworkName          string   `mapstructure:"NETWORK_NAME"`
	ChainID              int64    `mapstructure:"CHAIN_ID"`
	PrivateKey           string   `mapstructure:"PRIVATE_KEY"`
	LinkTokenAddr        string   `mapstructure:"LINK_TOKEN_ADDR"`
	Keepers              []string `mapstructure:"KEEPERS"`
	KeeperURLs           []string `mapstructure:"KEEPER_URLS"`
	KeeperEmails         []string `mapstructure:"KEEPER_EMAILS"`
	KeeperPasswords      []string `mapstructure:"KEEPER_PASSWORDS"`
	KeeperKeys           []string `mapstructure:"KEEPER_KEYS"`
	ApproveAmount        string   `mapstructure:"APPROVE_AMOUNT"`
	GasLimit             uint64   `mapstructure:"GAS_LIMIT"`
	FundNodeAmount       string   `mapstructure:"FUND_CHAINLINK_NODE"`
	ChainlinkDockerImage string   `mapstructure:"CHAINLINK_DOCKER_IMAGE"`
	PostgresDockerImage  string   `mapstructure:"POSTGRES_DOCKER_IMAGE"`

	// OCR Config
	BootstrapNodeAddr string `mapstructure:"BOOTSTRAP_NODE_ADDR"`
	OCR2Keepers       bool   `mapstructure:"KEEPER_OCR2"`

	// Keeper config
	Mode                   uint8  `mapstructure:"MODE"`
	LinkETHFeedAddr        string `mapstructure:"LINK_ETH_FEED"`
	FastGasFeedAddr        string `mapstructure:"FAST_GAS_FEED"`
	PaymentPremiumPBB      uint32 `mapstructure:"PAYMENT_PREMIUM_PBB"`
	FlatFeeMicroLink       uint32 `mapstructure:"FLAT_FEE_MICRO_LINK"`
	BlockCountPerTurn      int64  `mapstructure:"BLOCK_COUNT_PER_TURN"`
	CheckGasLimit          uint32 `mapstructure:"CHECK_GAS_LIMIT"`
	StalenessSeconds       int64  `mapstructure:"STALENESS_SECONDS"`
	GasCeilingMultiplier   uint16 `mapstructure:"GAS_CEILING_MULTIPLIER"`
	MinUpkeepSpend         int64  `mapstructure:"MIN_UPKEEP_SPEND"`
	MaxPerformGas          uint32 `mapstructure:"MAX_PERFORM_GAS"`
	MaxCheckDataSize       uint32 `mapstructure:"MAX_CHECK_DATA_SIZE"`
	MaxPerformDataSize     uint32 `mapstructure:"MAX_PERFORM_DATA_SIZE"`
	MaxRevertDataSize      uint32 `mapstructure:"MAX_REVERT_DATA_SIZE"`
	FallbackGasPrice       int64  `mapstructure:"FALLBACK_GAS_PRICE"`
	FallbackLinkPrice      int64  `mapstructure:"FALLBACK_LINK_PRICE"`
	Transcoder             string `mapstructure:"TRANSCODER"`
	Registrar              string `mapstructure:"REGISTRAR"`
	UpkeepPrivilegeManager string `mapstructure:"UPKEEP_PRIVILEGE_MANAGER"`

	// Upkeep Config
	RegistryVersion                 keeper.RegistryVersion `mapstructure:"KEEPER_REGISTRY_VERSION"`
	RegistryAddress                 string                 `mapstructure:"KEEPER_REGISTRY_ADDRESS"`
	RegistryConfigUpdate            bool                   `mapstructure:"KEEPER_CONFIG_UPDATE"`
	KeepersCount                    int                    `mapstructure:"KEEPERS_COUNT"`
	UpkeepTestRange                 int64                  `mapstructure:"UPKEEP_TEST_RANGE"`
	UpkeepAverageEligibilityCadence int64                  `mapstructure:"UPKEEP_AVERAGE_ELIGIBILITY_CADENCE"`
	UpkeepInterval                  int64                  `mapstructure:"UPKEEP_INTERVAL"`
	UpkeepCheckData                 string                 `mapstructure:"UPKEEP_CHECK_DATA"`
	UpkeepGasLimit                  uint32                 `mapstructure:"UPKEEP_GAS_LIMIT"`
	UpkeepCount                     int64                  `mapstructure:"UPKEEP_COUNT"`
	AddFundsAmount                  string                 `mapstructure:"UPKEEP_ADD_FUNDS_AMOUNT"`
	VerifiableLoadTest              bool                   `mapstructure:"VERIFIABLE_LOAD_TEST"`
	UseArbBlockNumber               bool                   `mapstructure:"USE_ARB_BLOCK_NUMBER"`
	VerifiableLoadContractAddress   string                 `mapstructure:"VERIFIABLE_LOAD_CONTRACT_ADDRESS"`
	UpkeepType                      UpkeepType             `mapstructure:"UPKEEP_TYPE"`

	// Node config scraping and verification
	NodeConfigURL string `mapstructure:"NODE_CONFIG_URL"`
	VerifyNodes   bool   `mapstructure:"VERIFY_NODES"`

	// Feeds config
	FeedBaseAddr  string `mapstructure:"FEED_BASE_ADDR"`
	FeedQuoteAddr string `mapstructure:"FEED_QUOTE_ADDR"`
	FeedDecimals  uint8  `mapstructure:"FEED_DECIMALS"`

	// Mercury Config
	MercuryURL       string `mapstructure:"MERCURY_URL"`
	MercuryLegacyURL string `mapstructure:"MERCURY_LEGACY_URL"`
	MercuryID        string `mapstructure:"MERCURY_ID"`
	MercuryKey       string `mapstructure:"MERCURY_KEY"`
	MercuryCredName  string `mapstructure:"MERCURY_CRED_NAME"`

	// Tenderly
	TenderlyKey         string `mapstructure:"TENDERLY_KEY"`
	TenderlyAccountName string `mapstructure:"TENDERLY_ACCOUNT_NAME"`
	TenderlyProjectName string `mapstructure:"TENDERLY_PROJECT_NAME"`
}

Config represents configuration fields

func New

func New() *Config

New creates a new config

func (*Config) Validate

func (c *Config) Validate() error

Validate validates the given config

type UpkeepType

type UpkeepType int

UpkeepType represents an upkeep type

const (
	Conditional UpkeepType = iota
	Mercury
	LogTrigger
	LogTriggeredFeedLookup
)

Jump to

Keyboard shortcuts

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