node
node copied to clipboard
feat: enable e2e orchestrator restart
Description
Enable restarting the e2e orchestrator by:
- always use the
--setup-onlyoption followed by running with the--skip-setupoption - skip setup if the
deployed.yml(created by setup) exists
This enables you to rerun the e2e tests just by running docker restart orchestrator
Also fix the TestDappZEVM/TestDappEVM addresses. Otherwise you'll see something like this:
setup | ✅ setup completed in 32.235828535s
setup | ✅ config file written in /work/deployed.yml
setup | --- 📜zEVM contracts ---
setup | SystemContract: 0x91d18e54DAf4F677cB28167158d6dd21F6aB3921
setup | ETHZRC20: 0x13A0c5930C028511Dc02665E7285134B6d11A5f4
setup | ERC20ZRC20: 0x48f80608B672DC30DC7e3dbBd0343c5F02C738Eb
setup | BTCZRC20: 0xd97B1de3619ed2c6BEb3860147E30cA8A7dC9891
setup | UniswapFactory: 0x9fd96203f7b22bCF72d9DCb40ff98302376cE09c
setup | UniswapRouter: 0x2ca7d64A7EFE2D62A725E2B35Cf7230D6677FfEe
setup | ConnectorZEVM: 0x239e96c8f17C85c30100AC26F635Ea15f23E9c67
setup | WZeta: 0x5F0b1a82749cb4E2278EC87F8BF6B618dC71a8bf
setup | ZEVMSwapApp: 0x733aB8b06DDDEf27Eaa72294B0d7c9cEF7f12db9
setup | ContextApp: 0xD28D6A0b8189305551a0A8bd247a6ECa9CE781Ca
setup | TestDappZEVM: 0xA8D5060feb6B456e886F023709A2795373691E63
setup | --- 📜EVM contracts ---
setup | ZetaEth: 0xcd01737eaa83195514601E9F6df929Bd0709DC60
setup | ConnectorEth: 0xfdA26637E11771E5919aF5c24A363c82613d62dA
setup | ERC20Custody: 0x03Ce5CDd0aEC673B11a672df176E0F52E9191556
setup | ERC20: 0x486d325e1D577f1fe6f4E1633E137f91758a8362
setup | TestDappEVM: 0x28b64929f082F7361B9d9e681AaC3436dA4Cb857
setup | ✅ the localnet has been setup
running e2e tests...
setup | starting E2E tests
setup | ⚙️ setting up TSS address
setup | ⚙️ enabling verification flags for block headers
setup | --- 📜zEVM contracts ---
setup | SystemContract: 0x91d18e54DAf4F677cB28167158d6dd21F6aB3921
setup | ETHZRC20: 0x13A0c5930C028511Dc02665E7285134B6d11A5f4
setup | ERC20ZRC20: 0x48f80608B672DC30DC7e3dbBd0343c5F02C738Eb
setup | BTCZRC20: 0xd97B1de3619ed2c6BEb3860147E30cA8A7dC9891
setup | UniswapFactory: 0x9fd96203f7b22bCF72d9DCb40ff98302376cE09c
setup | UniswapRouter: 0x2ca7d64A7EFE2D62A725E2B35Cf7230D6677FfEe
setup | ConnectorZEVM: 0x239e96c8f17C85c30100AC26F635Ea15f23E9c67
setup | WZeta: 0x5F0b1a82749cb4E2278EC87F8BF6B618dC71a8bf
setup | ZEVMSwapApp: 0x733aB8b06DDDEf27Eaa72294B0d7c9cEF7f12db9
setup | ContextApp: 0xD28D6A0b8189305551a0A8bd247a6ECa9CE781Ca
setup | TestDappZEVM: 0x0000000000000000000000000000000000000000
setup | --- 📜EVM contracts ---
setup | ZetaEth: 0xcd01737eaa83195514601E9F6df929Bd0709DC60
setup | ConnectorEth: 0xfdA26637E11771E5919aF5c24A363c82613d62dA
setup | ERC20Custody: 0x03Ce5CDd0aEC673B11a672df176E0F52E9191556
setup | ERC20: 0x486d325e1D577f1fe6f4E1633E137f91758a8362
setup | TestDappEVM: 0x28b64929f082F7361B9d9e681AaC3436dA4Cb857
<snip>
setup | ❌ zevm mp panic: waiting cctx timeout, cctx not mined, inboundHash: 0x900d53080f3c437a9b34d6d8214a5ddfee2ba4eacc32fb4c8ec63b925d2bc9dc, stack trace goroutine 103 [running]:
github.com/zeta-chain/zetacore/cmd/zetae2e/local.zevmMPTestRoutine.func1.1()
/go/delivery/zeta-node/cmd/zetae2e/local/zevm_mp.go:30 +0x60
panic({0x233b660, 0x4001d7ffd0})
/usr/local/go/src/runtime/panic.go:884 +0x1f4
github.com/zeta-chain/zetacore/e2e/utils.WaitCctxsMinedByInboundHash({0x35084f8, 0x400004e780}, {0x4000edc4b0, 0x42}, {0x3530778, 0x400060dd20}, 0x1, {0x34e1f00, 0x40004c7e90}, 0x0)
/go/delivery/zeta-node/e2e/utils/zetacore.go:62 +0x6bc
github.com/zeta-chain/zetacore/e2e/utils.WaitCctxMinedByInboundHash({0x35084f8?, 0x400004e780?}, {0x4000edc4b0, 0x42}, {0x3530778?, 0x400060dd20?}, {0x34e1f00?, 0x40004c7e90?}, 0xde0b6b3a7640000?)
/go/delivery/zeta-node/e2e/utils/zetacore.go:28 +0x4c
github.com/zeta-chain/zetacore/e2e/runner.(*E2ERunner).WaitForMinedCCTX(0x400100aa00, {0x90, 0xd, 0x53, 0x8, 0xf, 0x3c, 0x43, 0x7a, 0x9b, ...})
/go/delivery/zeta-node/e2e/runner/zeta.go:36 +0x1b0
github.com/zeta-chain/zetacore/cmd/zetae2e/local.zevmMPTestRoutine.func1()
/go/delivery/zeta-node/cmd/zetae2e/local/zevm_mp.go:58 +0x248
golang.org/x/sync/errgroup.(*Group).Go.func1()
/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x5c
created by golang.org/x/sync/errgroup.(*Group).Go
/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:72 +0x9c
setup | ❌ e2e tests failed after 6m26.432842915s
BTC tests are failing on the restart, but this is a good first step:
skipping e2e setup because it has already been completed
running e2e tests...
setup | starting E2E tests
setup | ⚙️ setting up TSS address
setup | ⚙️ enabling verification flags for block headers
setup | --- 📜zEVM contracts ---
setup | SystemContract: 0x91d18e54DAf4F677cB28167158d6dd21F6aB3921
setup | ETHZRC20: 0x13A0c5930C028511Dc02665E7285134B6d11A5f4
setup | ERC20ZRC20: 0x48f80608B672DC30DC7e3dbBd0343c5F02C738Eb
setup | BTCZRC20: 0xd97B1de3619ed2c6BEb3860147E30cA8A7dC9891
setup | UniswapFactory: 0x9fd96203f7b22bCF72d9DCb40ff98302376cE09c
setup | UniswapRouter: 0x2ca7d64A7EFE2D62A725E2B35Cf7230D6677FfEe
setup | ConnectorZEVM: 0x239e96c8f17C85c30100AC26F635Ea15f23E9c67
setup | WZeta: 0x5F0b1a82749cb4E2278EC87F8BF6B618dC71a8bf
setup | ZEVMSwapApp: 0x733aB8b06DDDEf27Eaa72294B0d7c9cEF7f12db9
setup | ContextApp: 0xD28D6A0b8189305551a0A8bd247a6ECa9CE781Ca
setup | TestDappZEVM: 0xA8D5060feb6B456e886F023709A2795373691E63
setup | --- 📜EVM contracts ---
setup | ZetaEth: 0x733aB8b06DDDEf27Eaa72294B0d7c9cEF7f12db9
setup | ConnectorEth: 0xD28D6A0b8189305551a0A8bd247a6ECa9CE781Ca
setup | ERC20Custody: 0xff3135df4F2775f4091b81f4c7B6359CfA07862a
setup | ERC20: 0xbD1e64A22B9F92D9Ce81aA9B4b0fFacd80215564
setup | TestDappEVM: 0xBFF76e77D56B3C1202107f059425D56f0AEF87Ed
<snip>
zevm_mp | ✅ completed in 41.117951979s - evm -> zevm message passing contract with failing revert
zevm_mp | 🍾 ZEVM message passing tests completed in 5m1.017731008s
erc20 | ✅ completed in 12.073586308s - deposit ERC20 into ZEVM restricted address
erc20 | 🍾 erc20 tests completed in 5m3.565783507s
ether | ✅ completed in 44.112256664s - deposit ZRC20 into ZEVM and call a contract
ether | ⏳running - deposit Ether into ZEVM and call a contract that reverts; should refund
ether | ✅ completed in 1m44.285673884s - deposit Ether into ZEVM and call a contract that reverts; should refund
ether | ⏳running - withdraw Ether from ZEVM to restricted address
zeta | ✅ completed in 2m30.333301442s - message passing with successful revert between external EVM chains
zeta | ⏳running - deposit ZETA from Ethereum to ZEVM restricted address
zeta | ✅ completed in 7.049840791s - deposit ZETA from Ethereum to ZEVM restricted address
zeta | ⏳running - deposit ZETA from Ethereum to ZEVM
zeta | ✅ completed in 13.081878008s - deposit ZETA from Ethereum to ZEVM
zeta | ⏳running - deposit ZETA from Ethereum to a new ZEVM address which does not exist yet
ether | ✅ completed in 24.081093927s - withdraw Ether from ZEVM to restricted address
ether | 🍾 Ethereum tests completed in 7m11.938481337s
zeta | ✅ completed in 11.072837997s - deposit ZETA from Ethereum to a new ZEVM address which does not exist yet
zeta | 🍾 Zeta tests completed in 7m21.337073437s
bitcoin | ✅ BTC deposited in 6m59.602731686s
setup | ❌ bitcoin panic: timed out waiting for block header to show up in observer, stack trace goroutine 46 [running]:
github.com/zeta-chain/zetacore/cmd/zetae2e/local.bitcoinTestRoutine.func1.1()
/go/delivery/zeta-node/cmd/zetae2e/local/bitcoin.go:32 +0x60
panic({0x233b780, 0x34daba0})
/usr/local/go/src/runtime/panic.go:884 +0x1f4
github.com/zeta-chain/zetacore/e2e/runner.(*E2ERunner).ProveBTCTransaction(0x40014af100, 0x4001b016a0)
/go/delivery/zeta-node/e2e/runner/bitcoin.go:425 +0x72c
github.com/zeta-chain/zetacore/e2e/runner.(*E2ERunner).DepositBTC(0x40014af100, 0x1)
/go/delivery/zeta-node/e2e/runner/bitcoin.go:181 +0x430
github.com/zeta-chain/zetacore/cmd/zetae2e/local.bitcoinTestRoutine.func1()
/go/delivery/zeta-node/cmd/zetae2e/local/bitcoin.go:65 +0x290
golang.org/x/sync/errgroup.(*Group).Go.func1()
/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x5c
created by golang.org/x/sync/errgroup.(*Group).Go
/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:72 +0x9c
setup | ❌ e2e tests failed after 7m30.243773648s
e2e failed
Closes: #2232
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Include instructions and any relevant details so others can reproduce.
- [ ] Tested CCTX in localnet
- [x] Tested in development environment
- [ ] Go unit tests
- [ ] Go integration tests
- [ ] Tested via GitHub Actions