-
Notifications
You must be signed in to change notification settings - Fork 3
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
Setting up t8n compatible Nethermind EVM inside Retesteth's docker container #22
Comments
Adding a new config for testsFollowing the docs on retesteth, copy over the t8ntool inside Nethermind's evm also uses # Replace --state.chainid with --state.chainId
if [ $index = "--state.chainid" ]; then
index="--state.chainId"
fi Facing problemsUsing retestethThe following command fails, even though this succeeds with Geth's evm. retesteth -t GeneralStateTests/stChainId -- --singletest chainId --testpath /tests --datadir /tests/config --filltests --clients t8ntool2 --chainid 100 The error message is:
Using t8n tool directlyNext I copied over the alloc, env and txs JSON files (which were printed to the console with verbose output), and directly executed the t8n tool with them. ./tools/evm/bin/Debug/net8.0/Evm t8n --input.alloc /example/alloc.json --input.env /example/env.json --input.txs /example/txs.json --state.chainId 100 --output.basedir /example/output It says |
Test filling works, chain filling doesn'tretesteth -t GeneralStateTests/stChainId -- --singletest chainId --filltests --testpath /tests --datadir /tests/config --clients t8ntool2 --chainid 100 The above command now WORKS for generating the retesteth -t GeneralStateTests/stChainId -- --singletest chainId --fillchain --testpath /tests --datadir /tests/config --clients t8ntool2 --chainid 100 Error logs: Finishing retesteth run
*** Total Tests Run: 0
Error: The command '/tests/config/t8ntool2/start.sh --state.fork Cancun --state.reward -1 --state.chainid 100 --input.alloc /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/alloc.json --input.txs /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/txs.rlp --input.env /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/env.json --output.basedir /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a --output.result out.json --output.alloc outAlloc.json --output.errorlog /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/error.json' exited with 768 code. (GeneralStateTests/stChainId/chainId, step: test_setChainParams: Cancun)
Error: ERROR OCCURED FILLING TESTS: The command '/tests/config/t8ntool2/start.sh --state.fork Cancun --state.reward -1 --state.chainid 100 --input.alloc /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/alloc.json --input.txs /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/txs.rlp --input.env /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/env.json --output.basedir /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a --output.result out.json --output.alloc outAlloc.json --output.errorlog /dev/shm/e9d9b0ae-9015-4298-9b20-574270a51f5a/error.json' exited with 768 code. (GeneralStateTests/stChainId/chainId, step: test_setChainParams: Cancun) One thing to note, if the command is executed with |
Building the Dockerfile in this PR fails due to several package conflicts (version, et.al). An alternate way is to download the old and built retesteth docker container they provide (without Nethermind), and then building Nethermind's EVM inside it.
1. Install Docker if you don't have it
2. Get and load the retesteth Docker image as a tar file
3. Download the retesteth script
4. Get the container running indefinately
5. Get into the container and set it up
Attach a terminal to the container any way you please (either using
docker exec -it
or using VS Code's dev containers). Once inside, set up dotnet and Nethermind's env.6. Build the Evm
You can run Nethermind's t8n tool with
./tools/Evm/bin/Debug/net8.0/Evm t8n
.The text was updated successfully, but these errors were encountered: