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

Port deployers, add end-to-end contract deployments #11922

Merged
merged 1 commit into from
Sep 16, 2024

Conversation

mslipper
Copy link
Collaborator

This PR ports over the deployers in interopgen into op-deployer, and updates op-deployer to support end-to end contract deployments for both the Superchain and individual OP Chains.

This PR includes a couple of bugfixes for things I discovered along the way:

  1. The script host is updated to bump the nonce of the address calling the CREATE2 deployer when broadcasting. This fixes a chain/simulation mismatch that blocked contracts from being deployed.
  2. The DeployImplementations contract used a fixed CREATE2 salt, which caused problems on repeated deployments. I updated the contract to pull the nonce from the environment as we do elsewhere.

Builds on #11910.

@mslipper mslipper requested review from a team as code owners September 16, 2024 05:22
@mslipper mslipper requested review from mbaxter and protolambda and removed request for a team September 16, 2024 05:22
@mslipper mslipper force-pushed the feat/op-deployer-3 branch 3 times, most recently from 4f77209 to 5225f0b Compare September 16, 2024 15:50
op-chain-ops/script/script_test.go Outdated Show resolved Hide resolved
op-chain-ops/script/script.go Show resolved Hide resolved
op-chain-ops/script/script.go Show resolved Hide resolved
op-chain-ops/deployer/state/state.go Show resolved Hide resolved
op-chain-ops/deployer/opsm/superchain.go Show resolved Hide resolved
@mslipper mslipper requested a review from a team as a code owner September 16, 2024 17:47
@mslipper mslipper requested review from ajsutton and removed request for a team September 16, 2024 17:47
@mslipper mslipper force-pushed the feat/op-deployer-2 branch 3 times, most recently from 046ea40 to c55f83c Compare September 16, 2024 18:43
@mslipper mslipper force-pushed the feat/op-deployer-3 branch 2 times, most recently from 40842e1 to 1293323 Compare September 16, 2024 18:59
Base automatically changed from feat/op-deployer-2 to develop September 16, 2024 19:12
This PR ports over the deployers in `interopgen` into `op-deployer`, and updates `op-deployer` to support end-to end contract deployments for both the Superchain and individual OP Chains.

This PR includes a couple of bugfixes for things I discovered along the way:

1. The script host is updated to bump the nonce of the address calling the CREATE2 deployer when broadcasting. This fixes a chain/simulation mismatch that blocked contracts from being deployed.
2. The DeployImplementations contract used a fixed CREATE2 salt, which caused problems on repeated deployments. I updated the contract to pull the nonce from the environment as we do elsewhere.

Builds on #11910.
Copy link
Contributor

@mbaxter mbaxter left a comment

Choose a reason for hiding this comment

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

✅ for the bedrock changes

@mslipper mslipper added this pull request to the merge queue Sep 16, 2024
Merged via the queue into develop with commit 717330e Sep 16, 2024
61 checks passed
@mslipper mslipper deleted the feat/op-deployer-3 branch September 16, 2024 21:09
samlaf pushed a commit to samlaf/optimism that referenced this pull request Nov 10, 2024
…m#11922)

This PR ports over the deployers in `interopgen` into `op-deployer`, and updates `op-deployer` to support end-to end contract deployments for both the Superchain and individual OP Chains.

This PR includes a couple of bugfixes for things I discovered along the way:

1. The script host is updated to bump the nonce of the address calling the CREATE2 deployer when broadcasting. This fixes a chain/simulation mismatch that blocked contracts from being deployed.
2. The DeployImplementations contract used a fixed CREATE2 salt, which caused problems on repeated deployments. I updated the contract to pull the nonce from the environment as we do elsewhere.

Builds on ethereum-optimism#11910.
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.

3 participants