Documentation
¶
Overview ¶
Package presenters allow for the specification and result of a Job, its associated TaskSpecs, and every JobRun and TaskRun to be returned in a user friendly human readable format.
Index ¶
- Variables
- func EnvVarName(field string) string
- func FriendlyBigInt(n *big.Int) string
- func ParseBigInt(str string) (interface{}, error)
- func ParseBool(s string) (interface{}, error)
- func ParseDuration(s string) (interface{}, error)
- func ParseF32(s string) (interface{}, error)
- func ParseFileSize(s string) (interface{}, error)
- func ParseHomeDir(str string) (interface{}, error)
- func ParseIP(s string) (interface{}, error)
- func ParseLink(str string) (interface{}, error)
- func ParseLogLevel(str string) (interface{}, error)
- func ParseString(str string) (interface{}, error)
- func ParseURL(s string) (interface{}, error)
- func ParseUint16(s string) (interface{}, error)
- func ParseUint32(s string) (interface{}, error)
- func ParseUint64(s string) (interface{}, error)
- func TryEnvVarName(field string) string
- type ConfigPrinter
- type ConfigSchema
- type DatabaseBackupMode
- type EnvPrinter
- type FilePersistedSecretGenerator
- type GeneralConfig
- type GeneralOnlyConfig
- type GlobalConfig
- type LogLevel
- type SecretGenerator
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func EnvVarName ¶
EnvVarName gets the environment variable name for a config schema field
func FriendlyBigInt ¶
FriendlyBigInt returns a string printing the integer in both decimal and hexadecimal formats.
func ParseBigInt ¶
func ParseDuration ¶
func ParseFileSize ¶
func ParseHomeDir ¶
func ParseLogLevel ¶
func ParseString ¶
func ParseUint16 ¶
func ParseUint32 ¶
func ParseUint64 ¶
func TryEnvVarName ¶
Types ¶
type ConfigPrinter ¶
type ConfigPrinter struct {
EnvPrinter
}
ConfigPrinter are the non-secret values of the node
If you add an entry here, you should update NewConfigPrinter and ConfigPrinter#String accordingly.
func NewConfigPrinter ¶
func NewConfigPrinter(cfg GeneralConfig) (ConfigPrinter, error)
NewConfigPrinter creates an instance of ConfigPrinter
func (ConfigPrinter) GetID ¶
func (c ConfigPrinter) GetID() string
GetID generates a new ID for jsonapi serialization.
func (*ConfigPrinter) SetID ¶
func (c *ConfigPrinter) SetID(value string) error
SetID is used to conform to the UnmarshallIdentifier interface for deserializing from jsonapi documents.
func (ConfigPrinter) String ¶
func (c ConfigPrinter) String() string
String returns the values as a newline delimited string
type ConfigSchema ¶
type ConfigSchema struct {
FeatureFeedsManager bool `env:"FEATURE_FEEDS_MANAGER" default:"false"`
AdminCredentialsFile string `env:"ADMIN_CREDENTIALS_FILE" default:"$ROOT/apicredentials"`
AllowOrigins string `env:"ALLOW_ORIGINS" default:"http://localhost:3000,http://localhost:6688"`
AuthenticatedRateLimit int64 `env:"AUTHENTICATED_RATE_LIMIT" default:"1000"`
AuthenticatedRateLimitPeriod time.Duration `env:"AUTHENTICATED_RATE_LIMIT_PERIOD" default:"1m"`
AutoPprofEnabled bool `env:"AUTO_PPROF_ENABLED" default:"false"`
AutoPprofProfileRoot string `env:"AUTO_PPROF_PROFILE_ROOT"` // Defaults to $CHAINLINK_ROOT
AutoPprofPollInterval models.Duration `env:"AUTO_PPROF_POLL_INTERVAL" default:"10s"`
AutoPprofGatherDuration models.Duration `env:"AUTO_PPROF_GATHER_DURATION" default:"10s"`
AutoPprofGatherTraceDuration models.Duration `env:"AUTO_PPROF_GATHER_TRACE_DURATION" default:"5s"`
AutoPprofMaxProfileSize utils.FileSize `env:"AUTO_PPROF_MAX_PROFILE_SIZE" default:"100mb"`
AutoPprofCPUProfileRate int `env:"AUTO_PPROF_CPU_PROFILE_RATE" default:"1"`
AutoPprofMemProfileRate int `env:"AUTO_PPROF_MEM_PROFILE_RATE" default:"1"`
AutoPprofBlockProfileRate int `env:"AUTO_PPROF_BLOCK_PROFILE_RATE" default:"1"`
AutoPprofMutexProfileFraction int `env:"AUTO_PPROF_MUTEX_PROFILE_FRACTION" default:"1"`
AutoPprofMemThreshold utils.FileSize `env:"AUTO_PPROF_MEM_THRESHOLD" default:"4gb"`
AutoPprofGoroutineThreshold int `env:"AUTO_PPROF_GOROUTINE_THRESHOLD" default:"5000"`
BalanceMonitorEnabled bool `env:"BALANCE_MONITOR_ENABLED"`
BlockBackfillDepth uint64 `env:"BLOCK_BACKFILL_DEPTH" default:"10"`
BlockBackfillSkip bool `env:"BLOCK_BACKFILL_SKIP" default:"false"`
BlockEmissionIdleWarningThreshold time.Duration `env:"BLOCK_EMISSION_IDLE_WARNING_THRESHOLD"`
BlockHistoryEstimatorBatchSize uint32 `env:"BLOCK_HISTORY_ESTIMATOR_BATCH_SIZE"`
BlockHistoryEstimatorBlockDelay uint16 `env:"BLOCK_HISTORY_ESTIMATOR_BLOCK_DELAY"`
BlockHistoryEstimatorBlockHistorySize uint16 `env:"BLOCK_HISTORY_ESTIMATOR_BLOCK_HISTORY_SIZE"`
BlockHistoryEstimatorTransactionPercentile uint16 `env:"BLOCK_HISTORY_ESTIMATOR_TRANSACTION_PERCENTILE"`
BridgeResponseURL url.URL `env:"BRIDGE_RESPONSE_URL"`
ChainType string `env:"CHAIN_TYPE"`
ClientNodeURL string `env:"CLIENT_NODE_URL" default:"http://localhost:6688"`
DatabaseBackupDir string `env:"DATABASE_BACKUP_DIR" default:""`
DatabaseBackupFrequency time.Duration `env:"DATABASE_BACKUP_FREQUENCY" default:"1h"`
DatabaseBackupMode string `env:"DATABASE_BACKUP_MODE" default:"none"`
DatabaseBackupURL *url.URL `env:"DATABASE_BACKUP_URL" default:""`
DatabaseBackupOnVersionUpgrade bool `env:"DATABASE_BACKUP_ON_VERSION_UPGRADE" default:"true"`
DatabaseListenerMaxReconnectDuration time.Duration `env:"DATABASE_LISTENER_MAX_RECONNECT_DURATION" default:"10m"`
DatabaseListenerMinReconnectInterval time.Duration `env:"DATABASE_LISTENER_MIN_RECONNECT_INTERVAL" default:"1m"`
DatabaseLockingMode string `env:"DATABASE_LOCKING_MODE" default:"advisorylock"`
DatabaseMaximumTxDuration time.Duration `env:"DATABASE_MAXIMUM_TX_DURATION" default:"30m"`
DatabaseTimeout models.Duration `env:"DATABASE_TIMEOUT" default:"0"`
DatabaseURL string `env:"DATABASE_URL"`
DefaultChainID *big.Int `env:"ETH_CHAIN_ID"`
DefaultHTTPAllowUnrestrictedNetworkAccess bool `env:"DEFAULT_HTTP_ALLOW_UNRESTRICTED_NETWORK_ACCESS" default:"false"`
DefaultHTTPLimit int64 `env:"DEFAULT_HTTP_LIMIT" default:"32768"`
DefaultHTTPTimeout models.Duration `env:"DEFAULT_HTTP_TIMEOUT" default:"15s"`
DefaultMaxHTTPAttempts uint `env:"MAX_HTTP_ATTEMPTS" default:"5"`
Dev bool `env:"CHAINLINK_DEV" default:"false"`
EVMDisabled bool `env:"EVM_DISABLED" default:"false"`
EthTxReaperInterval time.Duration `env:"ETH_TX_REAPER_INTERVAL"`
EthTxReaperThreshold time.Duration `env:"ETH_TX_REAPER_THRESHOLD"`
EthTxResendAfterThreshold time.Duration `env:"ETH_TX_RESEND_AFTER_THRESHOLD"`
EthereumDisabled bool `env:"ETH_DISABLED" default:"false"`
EthereumHTTPURL string `env:"ETH_HTTP_URL"`
EthereumSecondaryURL string `env:"ETH_SECONDARY_URL" default:""`
EthereumSecondaryURLs string `env:"ETH_SECONDARY_URLS" default:""`
EthereumURL string `env:"ETH_URL"`
EvmDefaultBatchSize uint32 `env:"ETH_DEFAULT_BATCH_SIZE"`
EvmEIP1559DynamicFees bool `env:"EVM_EIP1559_DYNAMIC_FEES"`
EvmFinalityDepth uint32 `env:"ETH_FINALITY_DEPTH"`
EvmGasBumpPercent uint16 `env:"ETH_GAS_BUMP_PERCENT"`
EvmGasBumpThreshold uint64 `env:"ETH_GAS_BUMP_THRESHOLD"`
EvmGasBumpTxDepth uint16 `env:"ETH_GAS_BUMP_TX_DEPTH"`
EvmGasBumpWei *big.Int `env:"ETH_GAS_BUMP_WEI"`
EvmGasLimitDefault uint64 `env:"ETH_GAS_LIMIT_DEFAULT"`
EvmGasLimitMultiplier float32 `env:"ETH_GAS_LIMIT_MULTIPLIER"`
EvmGasLimitTransfer uint64 `env:"ETH_GAS_LIMIT_TRANSFER"`
EvmGasPriceDefault *big.Int `env:"ETH_GAS_PRICE_DEFAULT"`
EvmGasTipCapDefault *big.Int `env:"EVM_GAS_TIP_CAP_DEFAULT"`
EvmGasTipCapMinimum *big.Int `env:"EVM_GAS_TIP_CAP_MINIMUM"`
EvmHeadTrackerHistoryDepth uint `env:"ETH_HEAD_TRACKER_HISTORY_DEPTH"`
EvmHeadTrackerMaxBufferSize uint `env:"ETH_HEAD_TRACKER_MAX_BUFFER_SIZE"`
EvmHeadTrackerSamplingInterval time.Duration `env:"ETH_HEAD_TRACKER_SAMPLING_INTERVAL"`
EvmLogBackfillBatchSize uint32 `env:"ETH_LOG_BACKFILL_BATCH_SIZE"`
EvmMaxGasPriceWei *big.Int `env:"ETH_MAX_GAS_PRICE_WEI"`
EvmMaxInFlightTransactions uint32 `env:"ETH_MAX_IN_FLIGHT_TRANSACTIONS"`
EvmMaxQueuedTransactions uint64 `env:"ETH_MAX_QUEUED_TRANSACTIONS"`
EvmMinGasPriceWei *big.Int `env:"ETH_MIN_GAS_PRICE_WEI"`
EvmNonceAutoSync bool `env:"ETH_NONCE_AUTO_SYNC"`
EvmRPCDefaultBatchSize uint32 `env:"ETH_RPC_DEFAULT_BATCH_SIZE"`
ExplorerAccessKey string `env:"EXPLORER_ACCESS_KEY"`
ExplorerSecret string `env:"EXPLORER_SECRET"`
ExplorerURL *url.URL `env:"EXPLORER_URL"`
FMDefaultTransactionQueueDepth uint32 `env:"FM_DEFAULT_TRANSACTION_QUEUE_DEPTH" default:"1"`
FMSimulateTransactions bool `env:"FM_SIMULATE_TRANSACTIONS" default:"false"`
FeatureExternalInitiators bool `env:"FEATURE_EXTERNAL_INITIATORS" default:"false"`
FeatureOffchainReporting bool `env:"FEATURE_OFFCHAIN_REPORTING" default:"false"`
FeatureUICSAKeys bool `env:"FEATURE_UI_CSA_KEYS" default:"false"`
FeatureUIFeedsManager bool `env:"FEATURE_UI_FEEDS_MANAGER" default:"false"`
FlagsContractAddress string `env:"FLAGS_CONTRACT_ADDRESS"`
GasEstimatorMode string `env:"GAS_ESTIMATOR_MODE"`
GlobalLockRetryInterval models.Duration `env:"GLOBAL_LOCK_RETRY_INTERVAL" default:"1s"`
HTTPServerWriteTimeout time.Duration `env:"HTTP_SERVER_WRITE_TIMEOUT" default:"10s"`
InsecureFastScrypt bool `env:"INSECURE_FAST_SCRYPT" default:"false"`
InsecureSkipVerify bool `env:"INSECURE_SKIP_VERIFY" default:"false"`
JSONConsole bool `env:"JSON_CONSOLE" default:"false"`
JobPipelineMaxRunDuration time.Duration `env:"JOB_PIPELINE_MAX_RUN_DURATION" default:"10m"`
JobPipelineReaperInterval time.Duration `env:"JOB_PIPELINE_REAPER_INTERVAL" default:"1h"`
JobPipelineReaperThreshold time.Duration `env:"JOB_PIPELINE_REAPER_THRESHOLD" default:"24h"`
JobPipelineResultWriteQueueDepth uint64 `env:"JOB_PIPELINE_RESULT_WRITE_QUEUE_DEPTH" default:"100"`
KeeperDefaultTransactionQueueDepth uint32 `env:"KEEPER_DEFAULT_TRANSACTION_QUEUE_DEPTH" default:"1"`
KeeperGasPriceBufferPercent uint32 `env:"KEEPER_GAS_PRICE_BUFFER_PERCENT" default:"20"`
KeeperGasTipCapBufferPercent uint32 `env:"KEEPER_GAS_TIP_CAP_BUFFER_PERCENT" default:"20"`
KeeperMaximumGracePeriod int64 `env:"KEEPER_MAXIMUM_GRACE_PERIOD" default:"100"`
KeeperRegistryCheckGasOverhead uint64 `env:"KEEPER_REGISTRY_CHECK_GAS_OVERHEAD" default:"200000"`
KeeperRegistryPerformGasOverhead uint64 `env:"KEEPER_REGISTRY_PERFORM_GAS_OVERHEAD" default:"150000"`
KeeperRegistrySyncInterval time.Duration `env:"KEEPER_REGISTRY_SYNC_INTERVAL" default:"30m"`
KeeperRegistrySyncUpkeepQueueSize uint32 `env:"KEEPER_REGISTRY_SYNC_UPKEEP_QUEUE_SIZE" default:"10"`
KeeperCheckUpkeepGasPriceFeatureEnabled bool `env:"KEEPER_CHECK_UPKEEP_GAS_PRICE_FEATURE_ENABLED" default:"false"`
LeaseLockRefreshInterval time.Duration `env:"LEASE_LOCK_REFRESH_INTERVAL" default:"1s"`
LeaseLockDuration time.Duration `env:"LEASE_LOCK_DURATION" default:"10s"`
LinkContractAddress string `env:"LINK_CONTRACT_ADDRESS"`
LogLevel LogLevel `env:"LOG_LEVEL"`
LogSQLMigrations bool `env:"LOG_SQL_MIGRATIONS" default:"true"`
LogSQL bool `env:"LOG_SQL" default:"false"`
LogToDisk bool `env:"LOG_TO_DISK" default:"false"`
LogUnixTS bool `env:"LOG_UNIX_TS" default:"false"`
MigrateDatabase bool `env:"MIGRATE_DATABASE" default:"true"`
MinIncomingConfirmations uint32 `env:"MIN_INCOMING_CONFIRMATIONS"`
MinRequiredOutgoingConfirmations uint64 `env:"MIN_OUTGOING_CONFIRMATIONS"`
MinimumContractPayment assets.Link `env:"MINIMUM_CONTRACT_PAYMENT_LINK_JUELS"`
OCRBlockchainTimeout time.Duration `env:"OCR_BLOCKCHAIN_TIMEOUT" default:"20s"`
OCRBootstrapCheckInterval time.Duration `env:"OCR_BOOTSTRAP_CHECK_INTERVAL" default:"20s"`
OCRContractConfirmations uint `env:"OCR_CONTRACT_CONFIRMATIONS"`
OCRContractPollInterval time.Duration `env:"OCR_CONTRACT_POLL_INTERVAL" default:"1m"`
OCRContractSubscribeInterval time.Duration `env:"OCR_CONTRACT_SUBSCRIBE_INTERVAL" default:"2m"`
OCRContractTransmitterTransmitTimeout time.Duration `env:"OCR_CONTRACT_TRANSMITTER_TRANSMIT_TIMEOUT" default:"10s"`
OCRDHTLookupInterval int `env:"OCR_DHT_LOOKUP_INTERVAL" default:"10"`
OCRDatabaseTimeout time.Duration `env:"OCR_DATABASE_TIMEOUT" default:"10s"`
OCRDefaultTransactionQueueDepth uint32 `env:"OCR_DEFAULT_TRANSACTION_QUEUE_DEPTH" default:"1"`
OCRIncomingMessageBufferSize int `env:"OCR_INCOMING_MESSAGE_BUFFER_SIZE" default:"10"`
OCRKeyBundleID string `env:"OCR_KEY_BUNDLE_ID"`
OCRMonitoringEndpoint string `env:"OCR_MONITORING_ENDPOINT"`
OCRNewStreamTimeout time.Duration `env:"OCR_NEW_STREAM_TIMEOUT" default:"10s"`
OCRObservationGracePeriod time.Duration `env:"OCR_OBSERVATION_GRACE_PERIOD" default:"1s"`
OCRObservationTimeout time.Duration `env:"OCR_OBSERVATION_TIMEOUT" default:"5s"`
OCROutgoingMessageBufferSize int `env:"OCR_OUTGOING_MESSAGE_BUFFER_SIZE" default:"10"`
OCRSimulateTransactions bool `env:"OCR_SIMULATE_TRANSACTIONS" default:"false"`
OCRTraceLogging bool `env:"OCR_TRACE_LOGGING" default:"false"`
OCRTransmitterAddress string `env:"OCR_TRANSMITTER_ADDRESS"`
ORMMaxIdleConns int `env:"ORM_MAX_IDLE_CONNS" default:"10"`
ORMMaxOpenConns int `env:"ORM_MAX_OPEN_CONNS" default:"20"`
P2PAnnounceIP net.IP `env:"P2P_ANNOUNCE_IP"`
P2PAnnouncePort uint16 `env:"P2P_ANNOUNCE_PORT"`
P2PBootstrapPeers []string `env:"P2P_BOOTSTRAP_PEERS"`
P2PDHTAnnouncementCounterUserPrefix uint32 `env:"P2P_DHT_ANNOUNCEMENT_COUNTER_USER_PREFIX" default:"0"`
P2PListenIP net.IP `env:"P2P_LISTEN_IP" default:"0.0.0.0"`
P2PListenPort uint16 `env:"P2P_LISTEN_PORT"`
P2PNetworkingStack ocrnetworking.NetworkingStack `env:"P2P_NETWORKING_STACK" default:"V1"`
P2PPeerID p2pkey.PeerID `env:"P2P_PEER_ID"`
P2PPeerstoreWriteInterval time.Duration `env:"P2P_PEERSTORE_WRITE_INTERVAL" default:"5m"`
P2PV2AnnounceAddresses []string `env:"P2PV2_ANNOUNCE_ADDRESSES"`
P2PV2Bootstrappers []string `env:"P2PV2_BOOTSTRAPPERS"`
P2PV2DeltaDial models.Duration `env:"P2PV2_DELTA_DIAL" default:"15s"`
P2PV2DeltaReconcile models.Duration `env:"P2PV2_DELTA_RECONCILE" default:"1m"`
P2PV2ListenAddresses []string `env:"P2PV2_LISTEN_ADDRESSES"`
Port uint16 `env:"CHAINLINK_PORT" default:"6688"`
RPID string `env:"MFA_RPID"`
RPOrigin string `env:"MFA_RPORIGIN"`
ReaperExpiration models.Duration `env:"REAPER_EXPIRATION" default:"240h"`
ReplayFromBlock int64 `env:"REPLAY_FROM_BLOCK" default:"-1"`
RootDir string `env:"ROOT" default:"~/.chainlink"`
SecureCookies bool `env:"SECURE_COOKIES" default:"true"`
SessionTimeout models.Duration `env:"SESSION_TIMEOUT" default:"15m"`
StatsPusherLogging string `env:"STATS_PUSHER_LOGGING" default:"false"`
TLSCertPath string `env:"TLS_CERT_PATH" `
TLSHost string `env:"CHAINLINK_TLS_HOST" `
TLSKeyPath string `env:"TLS_KEY_PATH" `
TLSPort uint16 `env:"CHAINLINK_TLS_PORT" default:"6689"`
TLSRedirect bool `env:"CHAINLINK_TLS_REDIRECT" default:"false"`
TelemetryIngressLogging bool `env:"TELEMETRY_INGRESS_LOGGING" default:"false"`
TelemetryIngressServerPubKey string `env:"TELEMETRY_INGRESS_SERVER_PUB_KEY"`
TelemetryIngressURL *url.URL `env:"TELEMETRY_INGRESS_URL"`
TriggerFallbackDBPollInterval time.Duration `env:"TRIGGER_FALLBACK_DB_POLL_INTERVAL" default:"30s"`
UnAuthenticatedRateLimit int64 `env:"UNAUTHENTICATED_RATE_LIMIT" default:"5"`
UnAuthenticatedRateLimitPeriod time.Duration `env:"UNAUTHENTICATED_RATE_LIMIT_PERIOD" default:"20s"`
}
ConfigSchema records the schema of configuration at the type level
type DatabaseBackupMode ¶
type DatabaseBackupMode string
var ( DatabaseBackupModeNone DatabaseBackupMode = "none" DatabaseBackupModeLite DatabaseBackupMode = "lite" DatabaseBackupModeFull DatabaseBackupMode = "full" )
type EnvPrinter ¶
type EnvPrinter struct {
AllowOrigins string `json:"ALLOW_ORIGINS"`
BlockBackfillDepth uint64 `json:"BLOCK_BACKFILL_DEPTH"`
BlockHistoryEstimatorBlockDelay uint16 `json:"GAS_UPDATER_BLOCK_DELAY"`
BlockHistoryEstimatorBlockHistorySize uint16 `json:"GAS_UPDATER_BLOCK_HISTORY_SIZE"`
BlockHistoryEstimatorTransactionPercentile uint16 `json:"GAS_UPDATER_TRANSACTION_PERCENTILE"`
BridgeResponseURL string `json:"BRIDGE_RESPONSE_URL,omitempty"`
ChainType string `json:"CHAIN_TYPE"`
ClientNodeURL string `json:"CLIENT_NODE_URL"`
DatabaseBackupFrequency time.Duration `json:"DATABASE_BACKUP_FREQUENCY"`
DatabaseBackupMode string `json:"DATABASE_BACKUP_MODE"`
DatabaseBackupOnVersionUpgrade bool `json:"DATABASE_BACKUP_ON_VERSION_UPGRADE"`
DatabaseMaximumTxDuration time.Duration `json:"DATABASE_MAXIMUM_TX_DURATION"`
DatabaseTimeout models.Duration `json:"DATABASE_TIMEOUT"`
DatabaseLockingMode string `json:"DATABASE_LOCKING_MODE"`
DefaultChainID string `json:"ETH_CHAIN_ID"`
DefaultHTTPLimit int64 `json:"DEFAULT_HTTP_LIMIT"`
DefaultHTTPTimeout models.Duration `json:"DEFAULT_HTTP_TIMEOUT"`
Dev bool `json:"CHAINLINK_DEV"`
EthereumDisabled bool `json:"ETH_DISABLED"`
EthereumHTTPURL string `json:"ETH_HTTP_URL"`
EthereumSecondaryURLs []string `json:"ETH_SECONDARY_URLS"`
EthereumURL string `json:"ETH_URL"`
ExplorerURL string `json:"EXPLORER_URL"`
FMDefaultTransactionQueueDepth uint32 `json:"FM_DEFAULT_TRANSACTION_QUEUE_DEPTH"`
FeatureExternalInitiators bool `json:"FEATURE_EXTERNAL_INITIATORS"`
FeatureOffchainReporting bool `json:"FEATURE_OFFCHAIN_REPORTING"`
GasEstimatorMode string `json:"GAS_ESTIMATOR_MODE"`
InsecureFastScrypt bool `json:"INSECURE_FAST_SCRYPT"`
JSONConsole bool `json:"JSON_CONSOLE"`
JobPipelineReaperInterval time.Duration `json:"JOB_PIPELINE_REAPER_INTERVAL"`
JobPipelineReaperThreshold time.Duration `json:"JOB_PIPELINE_REAPER_THRESHOLD"`
KeeperDefaultTransactionQueueDepth uint32 `json:"KEEPER_DEFAULT_TRANSACTION_QUEUE_DEPTH"`
KeeperGasPriceBufferPercent uint32 `json:"KEEPER_GAS_PRICE_BUFFER_PERCENT"`
KeeperGasTipCapBufferPercent uint32 `json:"KEEPER_GAS_TIP_CAP_BUFFER_PERCENT"`
KeeperMaximumGracePeriod int64 `json:"KEEPER_MAXIMUM_GRACE_PERIOD"`
KeeperRegistryCheckGasOverhead uint64 `json:"KEEPER_REGISTRY_CHECK_GAS_OVERHEAD"`
KeeperRegistryPerformGasOverhead uint64 `json:"KEEPER_REGISTRY_PERFORM_GAS_OVERHEAD"`
KeeperRegistrySyncInterval time.Duration `json:"KEEPER_REGISTRY_SYNC_INTERVAL"`
KeeperRegistrySyncUpkeepQueueSize uint32 `json:"KEEPER_REGISTRY_SYNC_UPKEEP_QUEUE_SIZE"`
KeeperCheckUpkeepGasPriceFeatureEnabled bool `json:"KEEPER_CHECK_UPKEEP_GAS_PRICE_FEATURE_ENABLED"`
LeaseLockDuration time.Duration `json:"LEASE_LOCK_DURATION"`
LeaseLockRefreshInterval time.Duration `json:"LEASE_LOCK_REFRESH_INTERVAL"`
LinkContractAddress string `json:"LINK_CONTRACT_ADDRESS"`
FlagsContractAddress string `json:"FLAGS_CONTRACT_ADDRESS"`
LogLevel LogLevel `json:"LOG_LEVEL"`
LogSQLMigrations bool `json:"LOG_SQL_MIGRATIONS"`
LogSQL bool `json:"LOG_SQL"`
LogToDisk bool `json:"LOG_TO_DISK"`
OCRBootstrapCheckInterval time.Duration `json:"OCR_BOOTSTRAP_CHECK_INTERVAL"`
TriggerFallbackDBPollInterval time.Duration `json:"JOB_PIPELINE_DB_POLL_INTERVAL"`
OCRContractTransmitterTransmitTimeout time.Duration `json:"OCR_CONTRACT_TRANSMITTER_TRANSMIT_TIMEOUT"`
OCRDatabaseTimeout time.Duration `json:"OCR_DATABASE_TIMEOUT"`
OCRDefaultTransactionQueueDepth uint32 `json:"OCR_DEFAULT_TRANSACTION_QUEUE_DEPTH"`
OCRIncomingMessageBufferSize int `json:"OCR_INCOMING_MESSAGE_BUFFER_SIZE"`
P2PBootstrapPeers []string `json:"P2P_BOOTSTRAP_PEERS"`
P2PListenIP string `json:"P2P_LISTEN_IP"`
P2PListenPort string `json:"P2P_LISTEN_PORT"`
P2PNetworkingStack string `json:"P2P_NETWORKING_STACK"`
P2PPeerID string `json:"P2P_PEER_ID"`
P2PV2AnnounceAddresses []string `json:"P2PV2_ANNOUNCE_ADDRESSES"`
P2PV2Bootstrappers []string `json:"P2PV2_BOOTSTRAPPERS"`
P2PV2DeltaDial models.Duration `json:"P2PV2_DELTA_DIAL"`
P2PV2DeltaReconcile models.Duration `json:"P2PV2_DELTA_RECONCILE"`
P2PV2ListenAddresses []string `json:"P2PV2_LISTEN_ADDRESSES"`
OCROutgoingMessageBufferSize int `json:"OCR_OUTGOING_MESSAGE_BUFFER_SIZE"`
OCRNewStreamTimeout time.Duration `json:"OCR_NEW_STREAM_TIMEOUT"`
OCRDHTLookupInterval int `json:"OCR_DHT_LOOKUP_INTERVAL"`
OCRTraceLogging bool `json:"OCR_TRACE_LOGGING"`
Port uint16 `json:"CHAINLINK_PORT"`
ReaperExpiration models.Duration `json:"REAPER_EXPIRATION"`
ReplayFromBlock int64 `json:"REPLAY_FROM_BLOCK"`
RootDir string `json:"ROOT"`
SecureCookies bool `json:"SECURE_COOKIES"`
SessionTimeout models.Duration `json:"SESSION_TIMEOUT"`
TelemetryIngressLogging bool `json:"TELEMETRY_INGRESS_LOGGING"`
TelemetryIngressServerPubKey string `json:"TELEMETRY_INGRESS_SERVER_PUB_KEY"`
TelemetryIngressURL string `json:"TELEMETRY_INGRESS_URL"`
TLSHost string `json:"CHAINLINK_TLS_HOST"`
TLSPort uint16 `json:"CHAINLINK_TLS_PORT"`
TLSRedirect bool `json:"CHAINLINK_TLS_REDIRECT"`
}
EnvPrinter contains the supported environment variables
type FilePersistedSecretGenerator ¶
type FilePersistedSecretGenerator struct{}
type GeneralConfig ¶
type GeneralConfig interface {
GeneralOnlyConfig
GlobalConfig
}
func NewGeneralConfig ¶
func NewGeneralConfig() GeneralConfig
NewGeneralConfig returns the config with the environment variables set to their respective fields, or their defaults if environment variables are not set.
type GeneralOnlyConfig ¶
type GeneralOnlyConfig interface {
AdminCredentialsFile() string
AllowOrigins() string
AppID() uuid.UUID
AuthenticatedRateLimit() int64
AuthenticatedRateLimitPeriod() models.Duration
AutoPprofEnabled() bool
AutoPprofProfileRoot() string
AutoPprofPollInterval() models.Duration
AutoPprofGatherDuration() models.Duration
AutoPprofGatherTraceDuration() models.Duration
AutoPprofMaxProfileSize() utils.FileSize
AutoPprofCPUProfileRate() int
AutoPprofMemProfileRate() int
AutoPprofBlockProfileRate() int
AutoPprofMutexProfileFraction() int
AutoPprofMemThreshold() utils.FileSize
AutoPprofGoroutineThreshold() int
BlockBackfillDepth() uint64
BlockBackfillSkip() bool
BridgeResponseURL() *url.URL
CertFile() string
ClientNodeURL() string
DatabaseBackupDir() string
DatabaseBackupFrequency() time.Duration
DatabaseBackupMode() DatabaseBackupMode
DatabaseBackupURL() *url.URL
DatabaseBackupOnVersionUpgrade() bool
DatabaseListenerMaxReconnectDuration() time.Duration
DatabaseListenerMinReconnectInterval() time.Duration
DatabaseLockingMode() string
DatabaseMaximumTxDuration() time.Duration
DatabaseTimeout() models.Duration
DatabaseURL() url.URL
DefaultChainID() *big.Int
DefaultHTTPAllowUnrestrictedNetworkAccess() bool
DefaultHTTPLimit() int64
DefaultHTTPTimeout() models.Duration
DefaultMaxHTTPAttempts() uint
Dev() bool
EVMDisabled() bool
EthereumDisabled() bool
EthereumHTTPURL() *url.URL
EthereumSecondaryURLs() []url.URL
EthereumURL() string
ExplorerAccessKey() string
ExplorerSecret() string
ExplorerURL() *url.URL
FMDefaultTransactionQueueDepth() uint32
FMSimulateTransactions() bool
FeatureExternalInitiators() bool
FeatureFeedsManager() bool
FeatureOffchainReporting() bool
FeatureUICSAKeys() bool
FeatureUIFeedsManager() bool
GetAdvisoryLockIDConfiguredOrDefault() int64
GetDatabaseDialectConfiguredOrDefault() dialects.DialectName
GlobalLockRetryInterval() models.Duration
HTTPServerWriteTimeout() time.Duration
InsecureFastScrypt() bool
InsecureSkipVerify() bool
JSONConsole() bool
JobPipelineMaxRunDuration() time.Duration
JobPipelineReaperInterval() time.Duration
JobPipelineReaperThreshold() time.Duration
JobPipelineResultWriteQueueDepth() uint64
KeeperDefaultTransactionQueueDepth() uint32
KeeperGasPriceBufferPercent() uint32
KeeperGasTipCapBufferPercent() uint32
KeeperMaximumGracePeriod() int64
KeeperRegistryCheckGasOverhead() uint64
KeeperRegistryPerformGasOverhead() uint64
KeeperRegistrySyncInterval() time.Duration
KeeperRegistrySyncUpkeepQueueSize() uint32
KeeperCheckUpkeepGasPriceFeatureEnabled() bool
KeyFile() string
LeaseLockRefreshInterval() time.Duration
LeaseLockDuration() time.Duration
LogLevel() zapcore.Level
DefaultLogLevel() zapcore.Level
LogSQLMigrations() bool
LogSQL() bool
LogToDisk() bool
LogUnixTimestamps() bool
MigrateDatabase() bool
OCRBlockchainTimeout() time.Duration
OCRBootstrapCheckInterval() time.Duration
OCRContractPollInterval() time.Duration
OCRContractSubscribeInterval() time.Duration
OCRContractTransmitterTransmitTimeout() time.Duration
OCRDHTLookupInterval() int
OCRDatabaseTimeout() time.Duration
OCRDefaultTransactionQueueDepth() uint32
OCRIncomingMessageBufferSize() int
OCRKeyBundleID() (string, error)
OCRMonitoringEndpoint() string
OCRNewStreamTimeout() time.Duration
OCRObservationGracePeriod() time.Duration
OCRObservationTimeout() time.Duration
OCROutgoingMessageBufferSize() int
OCRSimulateTransactions() bool
OCRTraceLogging() bool
OCRTransmitterAddress() (ethkey.EIP55Address, error)
ORMMaxIdleConns() int
ORMMaxOpenConns() int
P2PAnnounceIP() net.IP
P2PAnnouncePort() uint16
P2PBootstrapPeers() ([]string, error)
P2PDHTAnnouncementCounterUserPrefix() uint32
P2PListenIP() net.IP
P2PListenPort() uint16
P2PListenPortRaw() string
P2PNetworkingStack() (n ocrnetworking.NetworkingStack)
P2PNetworkingStackRaw() string
P2PPeerID() p2pkey.PeerID
P2PPeerIDRaw() string
P2PPeerstoreWriteInterval() time.Duration
P2PV2AnnounceAddresses() []string
P2PV2AnnounceAddressesRaw() []string
P2PV2Bootstrappers() (locators []ocrtypes.BootstrapperLocator)
P2PV2BootstrappersRaw() []string
P2PV2DeltaDial() models.Duration
P2PV2DeltaReconcile() models.Duration
P2PV2ListenAddresses() []string
Port() uint16
RPID() string
RPOrigin() string
ReaperExpiration() models.Duration
ReplayFromBlock() int64
RootDir() string
SecureCookies() bool
SessionOptions() sessions.Options
SessionSecret() ([]byte, error)
SessionTimeout() models.Duration
SetDialect(dialects.DialectName)
SetLogLevel(lvl zapcore.Level) error
SetLogSQL(logSQL bool)
StatsPusherLogging() bool
TLSCertPath() string
TLSDir() string
TLSHost() string
TLSKeyPath() string
TLSPort() uint16
TLSRedirect() bool
TelemetryIngressLogging() bool
TelemetryIngressServerPubKey() string
TelemetryIngressURL() *url.URL
TriggerFallbackDBPollInterval() time.Duration
UnAuthenticatedRateLimit() int64
UnAuthenticatedRateLimitPeriod() models.Duration
Validate() error
}
type GlobalConfig ¶
type GlobalConfig interface {
GlobalBalanceMonitorEnabled() (bool, bool)
GlobalBlockEmissionIdleWarningThreshold() (time.Duration, bool)
GlobalBlockHistoryEstimatorBatchSize() (uint32, bool)
GlobalBlockHistoryEstimatorBlockDelay() (uint16, bool)
GlobalBlockHistoryEstimatorBlockHistorySize() (uint16, bool)
GlobalBlockHistoryEstimatorTransactionPercentile() (uint16, bool)
GlobalEthTxReaperInterval() (time.Duration, bool)
GlobalEthTxReaperThreshold() (time.Duration, bool)
GlobalEthTxResendAfterThreshold() (time.Duration, bool)
GlobalEvmDefaultBatchSize() (uint32, bool)
GlobalEvmEIP1559DynamicFees() (bool, bool)
GlobalEvmFinalityDepth() (uint32, bool)
GlobalEvmGasBumpPercent() (uint16, bool)
GlobalEvmGasBumpThreshold() (uint64, bool)
GlobalEvmGasBumpTxDepth() (uint16, bool)
GlobalEvmGasBumpWei() (*big.Int, bool)
GlobalEvmGasLimitDefault() (uint64, bool)
GlobalEvmGasLimitMultiplier() (float32, bool)
GlobalEvmGasLimitTransfer() (uint64, bool)
GlobalEvmGasPriceDefault() (*big.Int, bool)
GlobalEvmGasTipCapDefault() (*big.Int, bool)
GlobalEvmGasTipCapMinimum() (*big.Int, bool)
GlobalEvmHeadTrackerHistoryDepth() (uint32, bool)
GlobalEvmHeadTrackerMaxBufferSize() (uint32, bool)
GlobalEvmHeadTrackerSamplingInterval() (time.Duration, bool)
GlobalEvmLogBackfillBatchSize() (uint32, bool)
GlobalEvmMaxGasPriceWei() (*big.Int, bool)
GlobalEvmMaxInFlightTransactions() (uint32, bool)
GlobalEvmMaxQueuedTransactions() (uint64, bool)
GlobalEvmMinGasPriceWei() (*big.Int, bool)
GlobalEvmNonceAutoSync() (bool, bool)
GlobalEvmRPCDefaultBatchSize() (uint32, bool)
GlobalFlagsContractAddress() (string, bool)
GlobalGasEstimatorMode() (string, bool)
GlobalChainType() (string, bool)
GlobalLinkContractAddress() (string, bool)
GlobalMinIncomingConfirmations() (uint32, bool)
GlobalMinRequiredOutgoingConfirmations() (uint64, bool)
GlobalMinimumContractPayment() (*assets.Link, bool)
GlobalOCRContractConfirmations() (uint16, bool)
}
GlobalConfig holds global ENV overrides for EVM chains If set the global ENV will override everything The second bool indicates if it is set or not
type SecretGenerator ¶
SecretGenerator is the interface for objects that generate a secret used to sign or encrypt.