Skip to content
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

Add changesets for self-serve token pool deployments #15877

Open
wants to merge 26 commits into
base: develop
Choose a base branch
from

Conversation

kylesmartin
Copy link
Contributor

@kylesmartin kylesmartin commented Jan 9, 2025

Copy link
Contributor

github-actions bot commented Jan 9, 2025

AER Report: CI Core

aer_workflow , commit , Detect Changes , Clean Go Tidy & Generate , Scheduled Run Frequency , Core Tests (go_core_tests) , Core Tests (go_core_tests_integration) , Core Tests (go_core_ccip_deployment_tests) , Core Tests (go_core_fuzz) , GolangCI Lint (integration-tests) , Core Tests (go_core_race_tests) , GolangCI Lint (deployment) , test-scripts , lint , SonarQube Scan

1. Test failure in TestDeployCCIPContracts:

[job id where the error happened]: go_core_ccip_deployment_tests

Source of Error:
Run tests	2025-01-20T22:15:13.9958425Z FAIL
Run tests	2025-01-20T22:15:13.9958765Z FAIL	github.com/smartcontractkit/chainlink/deployment/ccip/changeset	497.025s

Why: The test TestDeployCCIPContracts failed, causing the overall job to fail. The specific reason for the failure is not detailed in the provided logs, but it indicates that the test did not pass within the expected time frame or encountered an error.

Suggested fix: Investigate the TestDeployCCIPContracts test case to identify the root cause of the failure. Check for any timeouts, exceptions, or incorrect configurations that might have caused the test to fail. Ensure that all dependencies and configurations are correctly set up before running the test.

AER Report: Operator UI CI ran successfully ✅

aer_workflow , commit

@kylesmartin kylesmartin marked this pull request as ready for review January 13, 2025 19:29
@kylesmartin kylesmartin requested review from a team as code owners January 13, 2025 19:29
Copy link
Contributor

@AnieeG AnieeG left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a partial review.
I think we should create sep changeset for new token pool addition and Updating existing pool config otherwise it is cluttering the changeset. Also DeployTokenPoolContractsConfig name does not convey that it can be used for ExistingPoolUpdates.

deployment/ccip/changeset/state.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/state.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/state.go Show resolved Hide resolved
deployment/ccip/changeset/state.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/cs_deploy_token_pools.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/cs_deploy_token_pools.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/cs_deploy_token_pools.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/cs_deploy_token_pools.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/cs_deploy_token_pools.go Outdated Show resolved Hide resolved
deployment/ccip/changeset/cs_deploy_token_pools.go Outdated Show resolved Hide resolved
Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and b203501 (CCIP-4508).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
TestRMNCurseIdempotent 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/deployment/ccip/changeset true 0s @smartcontractkit/ccip, @smartcontractkit/core, @smartcontractkit/deployment-automation

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

@kylesmartin kylesmartin requested a review from a team as a code owner January 17, 2025 02:45
@kylesmartin kylesmartin requested a review from winder January 17, 2025 02:45
@kylesmartin kylesmartin requested a review from AnieeG January 17, 2025 02:58
@kylesmartin kylesmartin changed the title Add changeset for self-serve token pool deployments Add changesets for self-serve token pool deployments Jan 17, 2025
Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and d66f952 (CCIP-4508).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
TestRMNCurseIdempotent 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/deployment/ccip/changeset true 0s @smartcontractkit/ccip, @smartcontractkit/core, @smartcontractkit/deployment-automation

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and a6be556 (CCIP-4508).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
TestRMNCurseIdempotent 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/deployment/ccip/changeset true 0s @smartcontractkit/ccip, @smartcontractkit/core, @smartcontractkit/deployment-automation

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

deployment/ccip/changeset/state.go Outdated Show resolved Hide resolved
}

// safeAppendToKey safely appends a new value to an array of values assigned to a map key.
func safeAppendToKey[K comparable, V any](mapping map[K][]V, key K, value V) map[K][]V {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let's export this and move to deployment/helpers.go


// MakeTxOptsAndHandlerForContract creates transaction opts and a handler that either submits and confirms a transaction or outputs it as an MCMS operation,
// depending on whether or not an MCMS config is supplied.
func MakeTxOptsAndHandlerForContract(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you check existing deployer_group and see if it is similar to what you are trying to achieve here?

Copy link
Contributor Author

@kylesmartin kylesmartin Jan 20, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Had to modify the deployer group a bit: 92ce147

It didn't work with the deployer key when given transactions that depend on prior transactions causing a state change (i.e. acceptAdmin depends on proposeAdmin)

)

// getAllTokenPoolsWithSymbol returns a list of all token pools tied to the given token symbol.
func GetAllTokenPoolsWithSymbol(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let's make these methods unexported. It's better to let user access the changesets only

Comment on lines 72 to 74
if tokenConfig.TokenPool != c.PoolAddress && !(weCanBeAdmin || weAreAdmin) {
return fmt.Errorf("address %s is unable to be the admin of %s on %s", fromAddress, tokenSymbol, chain.String())
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's divide these two with more explicit error message for each case

Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and 3ee1cda (CCIP-4508).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
TestRMNCurseIdempotent 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/deployment/ccip/changeset true 0s @smartcontractkit/ccip, @smartcontractkit/core, @smartcontractkit/deployment-automation

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and d7ade58 (CCIP-4508).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
TestRMNCurseIdempotent 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/deployment/ccip/changeset true 0s @smartcontractkit/ccip, @smartcontractkit/core, @smartcontractkit/deployment-automation

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and 92ce147 (CCIP-4508).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
TestRMNCurseIdempotent 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/deployment/ccip/changeset true 0s @smartcontractkit/ccip, @smartcontractkit/core, @smartcontractkit/deployment-automation

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants