Documentation ¶
Overview ¶
Package managed provides "managed" versions of Oracle and Bootstrapper that perform garbage collection, track on-chain configuration changes, serializes messages to binary, etc...
Index ¶
- func RunManagedBootstrapper(ctx context.Context, bootstrapperFactory types.BootstrapperFactory, ...)
- func RunManagedMercuryOracle(ctx context.Context, v2bootstrappers []commontypes.BootstrapperLocator, ...)
- func RunManagedOCR2Oracle(ctx context.Context, v2bootstrappers []commontypes.BootstrapperLocator, ...)
- func RunManagedOCR3Oracle[RI any](ctx context.Context, v2bootstrappers []commontypes.BootstrapperLocator, ...)
- func TrackConfig(ctx context.Context, configDigester prefixCheckConfigDigester, ...)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RunManagedBootstrapper ¶
func RunManagedBootstrapper( ctx context.Context, bootstrapperFactory types.BootstrapperFactory, v2bootstrappers []commontypes.BootstrapperLocator, contractConfigTracker types.ContractConfigTracker, database types.ConfigDatabase, localConfig types.LocalConfig, logger loghelper.LoggerWithContext, offchainConfigDigester types.OffchainConfigDigester, )
RunManagedBootstrapper runs a "managed" bootstrapper. It handles configuration updates on the contract.
func RunManagedMercuryOracle ¶
func RunManagedMercuryOracle( ctx context.Context, v2bootstrappers []commontypes.BootstrapperLocator, configTracker types.ContractConfigTracker, contractTransmitter types.ContractTransmitter, database ocr3types.Database, localConfig types.LocalConfig, logger loghelper.LoggerWithContext, metricsRegisterer prometheus.Registerer, monitoringEndpoint commontypes.MonitoringEndpoint, netEndpointFactory types.BinaryNetworkEndpointFactory, offchainConfigDigester types.OffchainConfigDigester, offchainKeyring types.OffchainKeyring, onchainKeyring types.OnchainKeyring, mercuryPluginFactory ocr3types.MercuryPluginFactory, )
RunManagedMercuryOracle runs a "managed" version of protocol.RunOracle. It handles setting up telemetry, garbage collection, configuration updates, translating from commontypes.BinaryNetworkEndpoint to protocol.NetworkEndpoint, and creation/teardown of reporting plugins.
func RunManagedOCR2Oracle ¶
func RunManagedOCR2Oracle( ctx context.Context, v2bootstrappers []commontypes.BootstrapperLocator, configTracker types.ContractConfigTracker, contractTransmitter types.ContractTransmitter, database types.Database, localConfig types.LocalConfig, logger loghelper.LoggerWithContext, metricsRegisterer prometheus.Registerer, monitoringEndpoint commontypes.MonitoringEndpoint, netEndpointFactory types.BinaryNetworkEndpointFactory, offchainConfigDigester types.OffchainConfigDigester, offchainKeyring types.OffchainKeyring, onchainKeyring types.OnchainKeyring, reportingPluginFactory types.ReportingPluginFactory, )
RunManagedOCR2Oracle runs a "managed" version of protocol.RunOracle. It handles setting up telemetry, garbage collection, configuration updates, translating from commontypes.BinaryNetworkEndpoint to protocol.NetworkEndpoint, and creation/teardown of reporting plugins.
func RunManagedOCR3Oracle ¶
func RunManagedOCR3Oracle[RI any]( ctx context.Context, v2bootstrappers []commontypes.BootstrapperLocator, configTracker types.ContractConfigTracker, contractTransmitter ocr3types.ContractTransmitter[RI], database ocr3types.Database, localConfig types.LocalConfig, logger loghelper.LoggerWithContext, metricsRegisterer prometheus.Registerer, monitoringEndpoint commontypes.MonitoringEndpoint, netEndpointFactory types.BinaryNetworkEndpointFactory, offchainConfigDigester types.OffchainConfigDigester, offchainKeyring types.OffchainKeyring, onchainKeyring ocr3types.OnchainKeyring[RI], reportingPluginFactory ocr3types.ReportingPluginFactory[RI], )
RunManagedOCR3Oracle runs a "managed" version of protocol.RunOracle. It handles setting up telemetry, garbage collection, configuration updates, translating from commontypes.BinaryNetworkEndpoint to protocol.NetworkEndpoint, and creation/teardown of reporting plugins.
func TrackConfig ¶
func TrackConfig( ctx context.Context, configDigester prefixCheckConfigDigester, configTracker types.ContractConfigTracker, initialConfigDigest types.ConfigDigest, localConfig types.LocalConfig, logger loghelper.LoggerWithContext, chChanges chan<- types.ContractConfig, )
Uses configTracker to track the latest configuration. When a new configuration is detected, it is validated with configDigester and sent to chChanges.
Types ¶
This section is empty.