foundry icon indicating copy to clipboard operation
foundry copied to clipboard

feat(forge): multi chain deployment

Open joshieDo opened this issue 3 years ago • 3 comments

follow-ups:

  • library - linking (currently it just aborts if it the project requires it)
  • Messy stdout during concurrent operations (simulation / broadcasting / verification)
  • Unite both single and multi deployment flow once the above two are solved.

joshieDo avatar Aug 01 '22 17:08 joshieDo

Ref #2609 for multi chain verification

gakonst avatar Aug 05 '22 02:08 gakonst

@joshieDo FYI #2609 now merged

gakonst avatar Aug 12 '22 22:08 gakonst

Still going to add simple tests, but opening the PR already for review.

joshieDo avatar Sep 21 '22 13:09 joshieDo

added tests

joshieDo avatar Sep 23 '22 15:09 joshieDo

Would love if @aureliusbtc @mds1 or @hexonaut took it for a test before we merge

gakonst avatar Oct 01 '22 18:10 gakonst

Planning to test this week! Will update here afterwards

mds1 avatar Oct 05 '22 21:10 mds1

We still haven't switched to Foundry deployment yet. It's one of the last things we are still using dapp tools for.

Will test these features when we switch over, but probably not for this PR.

hexonaut avatar Oct 06 '22 12:10 hexonaut

Finally got around to testing this. With this PR I'm seeing a non-descript error. Running: forge script script/DeployExistingTokenBridge.s.sol:DeployExistingTokenBridge --use solc:0.8.14 --rpc-url $ETH_RPC_URL --broadcast --verify -vvvv

Which produces:

The application panicked (crashed).
Message:  called `Option::unwrap()` on a `None` value
Location: evm/src/executor/backend/mod.rs:587

The crash appears to happen on this line when switching forks twice: https://github.com/makerdao/dss-bridge/pull/2/files#diff-e2a54d4d0ad2ae2494877491f14dffba4442e3ada78d1f1aecf7477e1857345aR47

hexonaut avatar Oct 28 '22 17:10 hexonaut

As I said in our Discord chat, I updated to latest here and it seems to work fine now, so not sure what happened. Appears to work great now!

hexonaut avatar Oct 31 '22 14:10 hexonaut

@joshieDo could you resolve conflicts and feel free to merge! nice work.

gakonst avatar Nov 03 '22 07:11 gakonst

bump @joshieDo PTAL re: conflicts, would like to merge this week if poss

gakonst avatar Nov 09 '22 00:11 gakonst

resolved pretty easily (maybe too easily..). There were some changes which i was not aware on the master branch, and i'm not quite sure how that may impact this branch

waiting for the CI, and going to run some manual tests meanwhile

joshieDo avatar Nov 09 '22 07:11 joshieDo

manual tests of deployment + verification successfully passed. Pending CI and new changes approval, i think we can merge, and tackle the inevitable issues as they come

joshieDo avatar Nov 09 '22 10:11 joshieDo

SHIP IT

gakonst avatar Nov 09 '22 23:11 gakonst

gg

mattsse avatar Nov 09 '22 23:11 mattsse

So, what's the API look like on this?

https://ethereum.stackexchange.com/search?q=two+chains+foundry

How do I actually use this for a multi-chain deployment?

PatrickAlphaC avatar Apr 06 '24 19:04 PatrickAlphaC