Skip to content

Conversation

@avilagaston9
Copy link
Contributor

@avilagaston9 avilagaston9 commented Nov 14, 2024

Add Ethereum Package

Description

Launches a local network using the ethereum-package with all Eigen and Aligned contracts deployed. Also adds some Makefile targets to launch and connect aligned components to the net.

  • Start local net
  • Add prefunded accounts.
  • Add preloaded contracts.
  • Connect the Batcher.
  • Connect the Aggregator.
  • Connect the Task Sender.
  • Connect the Explorer.
  • Connect Telemetry.
  • Connect Operators.
  • Spam transactions.
  • Increase gas price

Warning

Kurtosis must be installed.

Note

new guide to use ethereum package:
docs/0_internal/ethereum_package.md

Commands

To start a local network run:

make ethereum_package_start

To restart the network run:

make ethereum_package_rm
make ethereum_package_start

To temporarily stop the network run:

make ethereum_package_stop

To start the batcher run:

make batcher_start_ethereum_package

To start the aggregator run:

make aggregator_start_ethereum_package

To start an operator run:

make operator_register_start_ethereum_package

To start Telemetry and the Explorer, run the usual commands:

make telemetry_full_start
make run_explorer

To spam transactions run:

make install_spamoor

and then:

make spamoor_send_transactions  \
  COUNT=<TOTAL_TX_TO_EXECUTE> \
  TX_PER_BLOCK=<LIMIT_OF_TXS_TO_SEND_PER_BLOCK> \
  TX_CONSUME_GAS=<HOW_MUCH_GAS_TO_USE_PER_TX> \
  NUM_WALLETS=<NUMBER_OF_WALLETS_FROM_WHICH_TO_SEND_TXS> \
  TIP_FEE=<TIP_TO_VALIDATORS>

For example:

make spamoor_send_transactions  \
  COUNT=10000 \
  TX_PER_BLOCK=200 \
  TX_CONSUME_GAS=150000 \
  NUM_WALLETS=1000 \
  TIP_FEE=10

In this scenario, we would be sending 200 transactions per block with an approximate consumption of gas of 150.000, amounting to a total usage of 200 * 150000 = 30.000.000 approximating the Ethereum block limit. Any block that exceeds 15.000.000 of gas used will increase the gas price.

Type of change

  • New feature

Checklist

  • “Hotfix” to testnet, everything else to staging
  • Linked to Github Issue
  • This change depends on code or research by an external entity
    • Acknowledgements were updated to give credit
  • Unit tests added
  • This change requires new documentation.
    • Documentation has been added/updated.
  • This change is an Optimization
    • Benchmarks added/run
  • Has a known issue
  • If your PR changes the Operator compatibility (Ex: Upgrade prover versions)
    • This PR adds compatibility for operator for both versions and do not change batcher/docs/examples
    • This PR updates batcher and docs/examples to the newer version. This requires the operator are already updated to be compatible

@avilagaston9 avilagaston9 self-assigned this Nov 14, 2024
@MarcosNicolau MarcosNicolau self-assigned this Nov 14, 2024
@MarcosNicolau MarcosNicolau changed the title feat: add ethereum-package feat: ethereum-package for real conditions network stress-test Nov 15, 2024
@avilagaston9 avilagaston9 marked this pull request as ready for review November 19, 2024 18:33
@avilagaston9 avilagaston9 linked an issue Dec 5, 2024 that may be closed by this pull request
@JuArce
Copy link
Collaborator

JuArce commented Dec 9, 2024

Seems ok. I will test it

@MarcosNicolau MarcosNicolau requested a review from JuArce December 16, 2024 13:00
Copy link
Collaborator

@JuArce JuArce left a comment

Choose a reason for hiding this comment

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

Sometimes it is needed to restart ethereum package to make it work.
Would be nice to add blockscout in another PR, so we have a block explorer available locally

@JuArce JuArce added this pull request to the merge queue Jan 9, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jan 9, 2025
@JuArce JuArce added this pull request to the merge queue Jan 10, 2025
Merged via the queue into staging with commit 6845473 Jan 10, 2025
1 check passed
@JuArce JuArce deleted the aligned-ethereum-package branch January 10, 2025 13:46
PatStiles pushed a commit that referenced this pull request Jan 10, 2025
Co-authored-by: Marcos Nicolau <[email protected]>
Co-authored-by: Mauro Toscano <[email protected]>
Co-authored-by: Urix <[email protected]>
Co-authored-by: MauroFab <[email protected]>
Co-authored-by: JuArce <[email protected]>
PatStiles pushed a commit that referenced this pull request Jan 10, 2025
Co-authored-by: Marcos Nicolau <[email protected]>
Co-authored-by: Mauro Toscano <[email protected]>
Co-authored-by: Urix <[email protected]>
Co-authored-by: MauroFab <[email protected]>
Co-authored-by: JuArce <[email protected]>
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.

refactor: improve ethereum-package contracts deployment

7 participants