-
Notifications
You must be signed in to change notification settings - Fork 1.9k
PRODCRE-557: adding evm cap to local env #18622
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
7adec64 to
264c265
Compare
d6710e3 to
edf7f0a
Compare
| return nil, errors.Wrap(nodeIDErr, "failed to get node id from labels") | ||
| } | ||
|
|
||
| if logEventTriggerBinaryPath == "" { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
removed bc the invocation will always send the container path at minimum, so this condition will never trigger:
filepath.Join(containerPath, logEventTriggerBinaryName),
| return nil, errors.Wrap(nodeIDErr, "failed to get node id from labels") | ||
| } | ||
|
|
||
| if readContractBinaryPath == "" { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
removed bc the invocation will always send the container path at minimum, so this condition will never trigger:
filepath.Join(containerPath, readContractBinaryName),
| Capability: kcr.CapabilitiesRegistryCapability{ | ||
| LabelledName: labelledName, | ||
| Version: "1.0.0", | ||
| CapabilityType: 3, // TARGET |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I need to add this capability 1 more time, but with CapabilityType: 0, // TRIGGER (like cron), but having the same ID will probably collide
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
did you solve that issue somehow?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
seems that the log trigger lookup* worked, but I'm still figuring out (right now I'm more keen in having the actions work and then keep evolving the solution)
4323270 to
3d024c2
Compare
536e043 to
375aa5f
Compare
| # if not present, the job for the EVM capability will fail to start | ||
| #[capabilities_configs.evm."1337"] | ||
| # logTriggerPollInterval = "1s" | ||
| # receiverGasMinimum = "1" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
would it make sense to have defaults so that lack of this section wouldn't result in start failures?
| fmt.Println("To exclude a flood of heartbeat messages it is recommended that you register a JS filter with following code: `return value.msg !== 'heartbeat';`") | ||
| fmt.Println() | ||
| fmt.Print("To terminate Beholder stack execute: `go run . env stop-beholder`\n\n") | ||
| fmt.Print("To terminate Beholder stack execute: `go run . env beholder stop`\n\n") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
| } | ||
|
|
||
| // EVM cap OCR3 Contract | ||
| evmOCR3DeployReport, err := operations.ExecuteOperation(b, DeployOCR3Op, DeployOCR3OpDeps(deps), DeployOCR3OpInput{ChainSelector: input.RegistryChainSelector, Qualifier: "capability_evm"}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe we should pass to DeployKeystoneContractsSequenceInput information whether these 2 extra OCR3 contracts (evm and vault) should be deployed? So that we deploy them only when needed?
| return nil, errors.Wrap(err, "failed to get CRE Forwarder address") | ||
| } | ||
|
|
||
| logger.Debug().Msgf("Deployed CRE Forwarder contract on chain %d at %s", chainID, creForwarderAddress.Address) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
deployed? or rather found?
| vaultOCR3Addr := mustGetAddress(memoryDatastore, homeChainOutput.ChainSelector, keystone_changeset.OCR3Capability.String(), "1.0.0", "capability_vault") | ||
| testLogger.Info().Msgf("Deployed Vault OCR3 contract on chain %d at %s", homeChainOutput.ChainSelector, vaultOCR3Addr) | ||
|
|
||
| evmOCR3Addr := mustGetAddress(memoryDatastore, homeChainOutput.ChainSelector, keystone_changeset.OCR3Capability.String(), "1.0.0", "capability_evm") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This check should be under a flag (it fails if the evm cap is not deployed).
| capabilityFactoryFns = append(capabilityFactoryFns, evm.EVMCapabilityFactory(libc.MustSafeUint64(int64(chainIDInt)), "evm")) | ||
|
|
||
| config := in.CapabilitiesConfig.EVM[blockchain.ChainID] | ||
| jobSpecFactoryFunctions = append(jobSpecFactoryFunctions, evmJob.EVMJobSpecFactoryFn( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be under a flag too?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no need, the job itself have the flag in it if !flags.HasFlag(donWithMetadata.Flags, cre.EVMCapability) { continue } (just mimic other jobs)
|




Jira: https://smartcontract-it.atlassian.net/browse/PRODCRE-557
Requires
Supports