Skip to content

Commit

Permalink
Update setup for op-geth and op-reth (#426)
Browse files Browse the repository at this point in the history
* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* Release v1.3.1 (#359)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* docs: update changelog

* docs: update documentation to version v1.3.1

* docs: update CHANGELOG.md

Co-authored-by: Adrian Tubal Páez Ruiz <[email protected]>

* docs: update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Fix homebrew (#360)

* feat: upgrade release action

* fix: downgrade docker/setup-buildx-action to v3

* fix: update reviewers on release PR

* fix:comment failing packages on Windows

* Release v1.3.2 (#365)

Dencun-ready release

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Release v1.4.0 (#394)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* Update develop branch with main (#362)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* Release v1.3.1 (#359)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* docs: update changelog

* docs: update documentation to version v1.3.1

* docs: update CHANGELOG.md

Co-authored-by: Adrian Tubal Páez Ruiz <[email protected]>

* docs: update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Fix homebrew (#360)

* feat: upgrade release action

* fix: downgrade docker/setup-buildx-action to v3

* fix: update reviewers on release PR

* fix:comment failing packages on Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Update images dencun-ready (#364)

* feat: update client images to be dencun compatible

* docs: update changelog

* Remove obsolete version field (#373)

* fix: remove obsolete version field

* fix: update github actions (#366)

* fix: check-version PR reviewers (#382)

* Remove support for Goerli  (#372)

* Removed Goerli from NetworkSupported and adjusted networks test

* Removed Goerli from templates/envs

* Removed Goerli from templates/envs

* Mentioned Goerli support removal in the changelog, goerli.mdx, and README

* Fixed TestSupportMEVBoost

* Removed Georli from TestGenerativeEnvFile

* Adjusted Test case 6 in TestCheckVariable

* Removed Georli from networks list for TestSupportedNetworks

* Removed Goerli from cli.go

* Adjusted test cli_test.go "consensus node" network into NetworkMainnet

* Replaced Goerli network from test cases in generate_test.go with valid networks

* Removed Goerli from GenerateCmd()

* Replaced Goerli in test cases with Mainnet

* Removed Goerli from KeysCmd()

* Removed Goerli from FullNodeSubCmd()

* Removed NetworkGoerli

* Fixed index_out_of_range error in Holesky related test cases in "Select network"

* Adjusted error in TestCli regarding "consensus node" test case

* Update cli/sub_gen.go

* docs: Update cli.mdx

* docs: Update clients.mdx

* docs: Update generate.mdx

* docs: Update keys.mdx

* docs: Update networks.mdx

* docs: Replace Goerli with Sepolia in run-validator-mev[network].md

* docs: Remove Goerli from documentations

* feat: remove Goerli from ImportKeys and associated tests

* docs: remove Goerli from docs

* test: Add E2E test suite (#384)

* test: init e2e tests

* feat: add e2e test workflow

* chore: add codecov config

* feat: Add Smart Contracts logic for Lido (#386)

* feat: add MevBoostRelayAllowedList contract and code

* feat: add StakingRouter contract and code

* feat: add contracts go files to package "lido"

* feat: apply changes to go.sum and go.mod

* feat: adjust packages for contracts

* fix: adjust formatting in MEVBoostRelayAllowedList.go

* fix: update go.mod and go.sum

* test: create MEVBoostrelayAllowedList_test.go

* feat: update go.mod, go.sum

* style: adjust formatting

* feat: move lido package to internal package

* feat: add feeRecipient addresses for each network

* feat: adjust MEVBoostRelayAllowedList_test.go for method GetRelays

* style: add comments to GetRelays method

* feat: separate test and logic methods

* feat: put expectedRelays in .yaml file

* style: rename files, adjust formatting and add comments

* feat: import configs package

* feat: add public rpcs to configs and create method GetPublicRPCs

* style: adjust formatting

* feat: Allow keystores creation with eth1 withdrawal credentials (#235)

* feat: allow keystores creation with eth1 withdrawal credentials

* fix: error when passing empty withdrawal eth1 address

* chore: Add devcontainer config

* fix: Withdrawal credentials prefix zeros in deposit data.

* feat: Add json schema and logic to validate deposit_data.json

* test: Add e2e test for keys gen with eth1 withdrawal cred

* feat: Support installing deps on debian 12

* fix: fix e2e tests error in Windows

* fix: e2e sedge keys test for Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>

* feat: Add support for mev-boost on Holesky (#380)

* feat: add mev RelayUrls for Holesky

* feat: update holesky/envs_base.tmpl

* test: add test case in TestSupportMEVBoost

* docs: update docs, README.md, and CHANGELOG.md

* feat: update TestCli/consensus_node_holesky

* feat: update TestCli/consensus_node_holesky

---------

Co-authored-by: Marcos Antonio Maceo <[email protected]>

* feat: Update images to latest versions (#391)

* feat: update clients to latest images

* Fix misused eth1 flag for lighthouse CL

* docs: update changelog

---------

Co-authored-by: Yaroslav Kukharuk <[email protected]>

* feat: Add Lido Flow (#389)

* feat: add method GetRelaysURI and adjust mevboostrelaylist package

* feat: add lido flow for cli.go

* refactor: adjust prompts for lido flow

* feat: add non-interactive lido flow

* style: adjust formatting

* fix: adjust formatting

* test: add e2e test for non-interactive setup

* fix: adjust e2e test

* style: adjust formatting

* test: Add mocks test for non-interactive setup in cli/generate_test.go

* doc: documentation for lido csm on sedge

* test: adjust e2e tests for lido flow

* fix: update go.mod

* fix: Adjust generate_test.go

* feat: Add --lido to sedge keys

* feat: Overwrite WithdrawalAddress in prompts setup

* refactor: error messages

* refactor: adjust tests and naming

* test: adjust keys for holesky

* doc: Update Sedge with Lido guide (#390)

* feat: MEV prompt with lido

* refactor: Validate lido supported networks

* refactor: NodeOptionsFactory interface for cli

* refactor: NodeOptionsFactory interface for sedge generate

* fix: Holesky fork version

* refac: New pkg options for Sedge setup type logic

* feat(keys): Log keystore path after generation

* doc: Add --network holesky to sedge keys --lido example

* chore: Update go.mod

* fix documentation for update on commands

* doc: Update CHANGELOG

---------

Co-authored-by: Marcos Maceo <[email protected]>
Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>

* feat: Support ubuntu 24.04 deps install (#392)

* feat: Support installing deps on Ubuntu 24.04

* feat: Add gcc and g++ to suggested deps for build from source

* fix(cli): Mev-boost not being generated for holesky (#393)

* docs: update documentation for release v.1.4.0

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: Kamil Chodoła <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Carlos Bermudez Porto <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Yaroslav Kukharuk <[email protected]>

* fix: set golang to 1.21 on actions (#395)

* fix: update go version on dockerfile for buildx (#396)

* fix: update go version on actions for ppa (#397)

* Release v1.5.0

* feat: add op funding.json (#405)

* Remove Peer upper limit of peers on CL (#404)

* Remove Peer upper limit on teku because of new peers management

* Remove Peer force setup from CL layer

* Fix typo

* Delete sh.exe.stackdump

* docs: update changelog

* docs: update docs to latest version

* feat: add OP stack using nethermind to Sedge (#407)

* feat: add op-neth support

* docs: update changelog

* feat: add --Discovery.Discv5Enabled flag to op-nethermind

* fix: change --consensus-api-url to --consensus-url

* fix: remove references to op-enabled on full command

* feat: add --syncmode=execution-layer flag to op-l2 container

* fix: add more context on documentation

* docs: updated changelog

* Update docs/docs/quickstart/optimism.mdx

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update changelog

* fix: format lines

---------

Co-authored-by: Marek Moraczyński <[email protected]>
Co-authored-by: Kamil Chodoła <[email protected]>
Co-authored-by: Miguel Tenorio <[email protected]>

* feat: initial image set

* feat: add op-geth optimization and general refact around op code

* feat: initial op-reth support

* feat: initial op-reth support

* feat: add reth support

* docs: update documentation

* chore: change op-neth to op-nethermind

* fix: missing opexecution .env template

* fix: removed Discovery.Discv5Enabled from nethermind

* Release v1.6.0 (#456)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* Update develop branch with main (#362)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* Release v1.3.1 (#359)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* docs: update changelog

* docs: update documentation to version v1.3.1

* docs: update CHANGELOG.md

Co-authored-by: Adrian Tubal Páez Ruiz <[email protected]>

* docs: update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Fix homebrew (#360)

* feat: upgrade release action

* fix: downgrade docker/setup-buildx-action to v3

* fix: update reviewers on release PR

* fix:comment failing packages on Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Update images dencun-ready (#364)

* feat: update client images to be dencun compatible

* docs: update changelog

* Remove obsolete version field (#373)

* fix: remove obsolete version field

* fix: update github actions (#366)

* fix: check-version PR reviewers (#382)

* Remove support for Goerli  (#372)

* Removed Goerli from NetworkSupported and adjusted networks test

* Removed Goerli from templates/envs

* Removed Goerli from templates/envs

* Mentioned Goerli support removal in the changelog, goerli.mdx, and README

* Fixed TestSupportMEVBoost

* Removed Georli from TestGenerativeEnvFile

* Adjusted Test case 6 in TestCheckVariable

* Removed Georli from networks list for TestSupportedNetworks

* Removed Goerli from cli.go

* Adjusted test cli_test.go "consensus node" network into NetworkMainnet

* Replaced Goerli network from test cases in generate_test.go with valid networks

* Removed Goerli from GenerateCmd()

* Replaced Goerli in test cases with Mainnet

* Removed Goerli from KeysCmd()

* Removed Goerli from FullNodeSubCmd()

* Removed NetworkGoerli

* Fixed index_out_of_range error in Holesky related test cases in "Select network"

* Adjusted error in TestCli regarding "consensus node" test case

* Update cli/sub_gen.go

* docs: Update cli.mdx

* docs: Update clients.mdx

* docs: Update generate.mdx

* docs: Update keys.mdx

* docs: Update networks.mdx

* docs: Replace Goerli with Sepolia in run-validator-mev[network].md

* docs: Remove Goerli from documentations

* feat: remove Goerli from ImportKeys and associated tests

* docs: remove Goerli from docs

* test: Add E2E test suite (#384)

* test: init e2e tests

* feat: add e2e test workflow

* chore: add codecov config

* feat: Add Smart Contracts logic for Lido (#386)

* feat: add MevBoostRelayAllowedList contract and code

* feat: add StakingRouter contract and code

* feat: add contracts go files to package "lido"

* feat: apply changes to go.sum and go.mod

* feat: adjust packages for contracts

* fix: adjust formatting in MEVBoostRelayAllowedList.go

* fix: update go.mod and go.sum

* test: create MEVBoostrelayAllowedList_test.go

* feat: update go.mod, go.sum

* style: adjust formatting

* feat: move lido package to internal package

* feat: add feeRecipient addresses for each network

* feat: adjust MEVBoostRelayAllowedList_test.go for method GetRelays

* style: add comments to GetRelays method

* feat: separate test and logic methods

* feat: put expectedRelays in .yaml file

* style: rename files, adjust formatting and add comments

* feat: import configs package

* feat: add public rpcs to configs and create method GetPublicRPCs

* style: adjust formatting

* feat: Allow keystores creation with eth1 withdrawal credentials (#235)

* feat: allow keystores creation with eth1 withdrawal credentials

* fix: error when passing empty withdrawal eth1 address

* chore: Add devcontainer config

* fix: Withdrawal credentials prefix zeros in deposit data.

* feat: Add json schema and logic to validate deposit_data.json

* test: Add e2e test for keys gen with eth1 withdrawal cred

* feat: Support installing deps on debian 12

* fix: fix e2e tests error in Windows

* fix: e2e sedge keys test for Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>

* feat: Add support for mev-boost on Holesky (#380)

* feat: add mev RelayUrls for Holesky

* feat: update holesky/envs_base.tmpl

* test: add test case in TestSupportMEVBoost

* docs: update docs, README.md, and CHANGELOG.md

* feat: update TestCli/consensus_node_holesky

* feat: update TestCli/consensus_node_holesky

---------

Co-authored-by: Marcos Antonio Maceo <[email protected]>

* feat: Update images to latest versions (#391)

* feat: update clients to latest images

* Fix misused eth1 flag for lighthouse CL

* docs: update changelog

---------

Co-authored-by: Yaroslav Kukharuk <[email protected]>

* feat: Add Lido Flow (#389)

* feat: add method GetRelaysURI and adjust mevboostrelaylist package

* feat: add lido flow for cli.go

* refactor: adjust prompts for lido flow

* feat: add non-interactive lido flow

* style: adjust formatting

* fix: adjust formatting

* test: add e2e test for non-interactive setup

* fix: adjust e2e test

* style: adjust formatting

* test: Add mocks test for non-interactive setup in cli/generate_test.go

* doc: documentation for lido csm on sedge

* test: adjust e2e tests for lido flow

* fix: update go.mod

* fix: Adjust generate_test.go

* feat: Add --lido to sedge keys

* feat: Overwrite WithdrawalAddress in prompts setup

* refactor: error messages

* refactor: adjust tests and naming

* test: adjust keys for holesky

* doc: Update Sedge with Lido guide (#390)

* feat: MEV prompt with lido

* refactor: Validate lido supported networks

* refactor: NodeOptionsFactory interface for cli

* refactor: NodeOptionsFactory interface for sedge generate

* fix: Holesky fork version

* refac: New pkg options for Sedge setup type logic

* feat(keys): Log keystore path after generation

* doc: Add --network holesky to sedge keys --lido example

* chore: Update go.mod

* fix documentation for update on commands

* doc: Update CHANGELOG

---------

Co-authored-by: Marcos Maceo <[email protected]>
Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>

* feat: Support ubuntu 24.04 deps install (#392)

* feat: Support installing deps on Ubuntu 24.04

* feat: Add gcc and g++ to suggested deps for build from source

* fix(cli): Mev-boost not being generated for holesky (#393)

* Sync branch with main branch changes (#399)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* Release v1.3.1 (#359)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* docs: update changelog

* docs: update documentation to version v1.3.1

* docs: update CHANGELOG.md

Co-authored-by: Adrian Tubal Páez Ruiz <[email protected]>

* docs: update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Fix homebrew (#360)

* feat: upgrade release action

* fix: downgrade docker/setup-buildx-action to v3

* fix: update reviewers on release PR

* fix:comment failing packages on Windows

* Release v1.3.2 (#365)

Dencun-ready release

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Release v1.4.0 (#394)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* Update develop branch with main (#362)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* Release v1.3.1 (#359)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* docs: update changelog

* docs: update documentation to version v1.3.1

* docs: update CHANGELOG.md

Co-authored-by: Adrian Tubal Páez Ruiz <[email protected]>

* docs: update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Fix homebrew (#360)

* feat: upgrade release action

* fix: downgrade docker/setup-buildx-action to v3

* fix: update reviewers on release PR

* fix:comment failing packages on Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Update images dencun-ready (#364)

* feat: update client images to be dencun compatible

* docs: update changelog

* Remove obsolete version field (#373)

* fix: remove obsolete version field

* fix: update github actions (#366)

* fix: check-version PR reviewers (#382)

* Remove support for Goerli  (#372)

* Removed Goerli from NetworkSupported and adjusted networks test

* Removed Goerli from templates/envs

* Removed Goerli from templates/envs

* Mentioned Goerli support removal in the changelog, goerli.mdx, and README

* Fixed TestSupportMEVBoost

* Removed Georli from TestGenerativeEnvFile

* Adjusted Test case 6 in TestCheckVariable

* Removed Georli from networks list for TestSupportedNetworks

* Removed Goerli from cli.go

* Adjusted test cli_test.go "consensus node" network into NetworkMainnet

* Replaced Goerli network from test cases in generate_test.go with valid networks

* Removed Goerli from GenerateCmd()

* Replaced Goerli in test cases with Mainnet

* Removed Goerli from KeysCmd()

* Removed Goerli from FullNodeSubCmd()

* Removed NetworkGoerli

* Fixed index_out_of_range error in Holesky related test cases in "Select network"

* Adjusted error in TestCli regarding "consensus node" test case

* Update cli/sub_gen.go

* docs: Update cli.mdx

* docs: Update clients.mdx

* docs: Update generate.mdx

* docs: Update keys.mdx

* docs: Update networks.mdx

* docs: Replace Goerli with Sepolia in run-validator-mev[network].md

* docs: Remove Goerli from documentations

* feat: remove Goerli from ImportKeys and associated tests

* docs: remove Goerli from docs

* test: Add E2E test suite (#384)

* test: init e2e tests

* feat: add e2e test workflow

* chore: add codecov config

* feat: Add Smart Contracts logic for Lido (#386)

* feat: add MevBoostRelayAllowedList contract and code

* feat: add StakingRouter contract and code

* feat: add contracts go files to package "lido"

* feat: apply changes to go.sum and go.mod

* feat: adjust packages for contracts

* fix: adjust formatting in MEVBoostRelayAllowedList.go

* fix: update go.mod and go.sum

* test: create MEVBoostrelayAllowedList_test.go

* feat: update go.mod, go.sum

* style: adjust formatting

* feat: move lido package to internal package

* feat: add feeRecipient addresses for each network

* feat: adjust MEVBoostRelayAllowedList_test.go for method GetRelays

* style: add comments to GetRelays method

* feat: separate test and logic methods

* feat: put expectedRelays in .yaml file

* style: rename files, adjust formatting and add comments

* feat: import configs package

* feat: add public rpcs to configs and create method GetPublicRPCs

* style: adjust formatting

* feat: Allow keystores creation with eth1 withdrawal credentials (#235)

* feat: allow keystores creation with eth1 withdrawal credentials

* fix: error when passing empty withdrawal eth1 address

* chore: Add devcontainer config

* fix: Withdrawal credentials prefix zeros in deposit data.

* feat: Add json schema and logic to validate deposit_data.json

* test: Add e2e test for keys gen with eth1 withdrawal cred

* feat: Support installing deps on debian 12

* fix: fix e2e tests error in Windows

* fix: e2e sedge keys test for Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>

* feat: Add support for mev-boost on Holesky (#380)

* feat: add mev RelayUrls for Holesky

* feat: update holesky/envs_base.tmpl

* test: add test case in TestSupportMEVBoost

* docs: update docs, README.md, and CHANGELOG.md

* feat: update TestCli/consensus_node_holesky

* feat: update TestCli/consensus_node_holesky

---------

Co-authored-by: Marcos Antonio Maceo <[email protected]>

* feat: Update images to latest versions (#391)

* feat: update clients to latest images

* Fix misused eth1 flag for lighthouse CL

* docs: update changelog

---------

Co-authored-by: Yaroslav Kukharuk <[email protected]>

* feat: Add Lido Flow (#389)

* feat: add method GetRelaysURI and adjust mevboostrelaylist package

* feat: add lido flow for cli.go

* refactor: adjust prompts for lido flow

* feat: add non-interactive lido flow

* style: adjust formatting

* fix: adjust formatting

* test: add e2e test for non-interactive setup

* fix: adjust e2e test

* style: adjust formatting

* test: Add mocks test for non-interactive setup in cli/generate_test.go

* doc: documentation for lido csm on sedge

* test: adjust e2e tests for lido flow

* fix: update go.mod

* fix: Adjust generate_test.go

* feat: Add --lido to sedge keys

* feat: Overwrite WithdrawalAddress in prompts setup

* refactor: error messages

* refactor: adjust tests and naming

* test: adjust keys for holesky

* doc: Update Sedge with Lido guide (#390)

* feat: MEV prompt with lido

* refactor: Validate lido supported networks

* refactor: NodeOptionsFactory interface for cli

* refactor: NodeOptionsFactory interface for sedge generate

* fix: Holesky fork version

* refac: New pkg options for Sedge setup type logic

* feat(keys): Log keystore path after generation

* doc: Add --network holesky to sedge keys --lido example

* chore: Update go.mod

* fix documentation for update on commands

* doc: Update CHANGELOG

---------

Co-authored-by: Marcos Maceo <[email protected]>
Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>

* feat: Support ubuntu 24.04 deps install (#392)

* feat: Support installing deps on Ubuntu 24.04

* feat: Add gcc and g++ to suggested deps for build from source

* fix(cli): Mev-boost not being generated for holesky (#393)

* docs: update documentation for release v.1.4.0

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: Kamil Chodoła <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Carlos Bermudez Porto <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Yaroslav Kukharuk <[email protected]>

* fix: set golang to 1.21 on actions (#395)

* fix: update go version on dockerfile for buildx (#396)

* fix: update go version on actions for ppa (#397)

* refactor: lido.go

---------

Co-authored-by: Marcos Antonio Maceo Reyes <[email protected]>
Co-authored-by: Marcos Antonio Maceo <[email protected]>
Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: Kamil Chodoła <[email protected]>
Co-authored-by: Carlos Bermudez Porto <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Yaroslav Kukharuk <[email protected]>

* fix: Teku and Lighthouse import keys container error on Windows (#398)

* fix: error for Lighthouse and Teku in Windows

* doc: update CHANGELOG.md

* doc: Update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>

* Lido Tier 1 Integration NO data (#401)

* refactor: lido.go

* feat: get NO ID by reward address

* style: adjust format

* refactor: contract setup logic

* refactor: Adjust tests for nodeOperator

* test: add Fuzz test for NodeID

* feat: Add keys info

* feat: Add bonds info

* feat: Get non-claimed rewards

* feat: generate contracts Go code

* feat: remove contracts go code

* doc: update documentation

* feat: add generated contract files to .gitignore

* refactor: adjust error message

* refactor: reduce search complexity for rewards

* refactor: Handle Contract deployed addresses

* test: Adjust test cases

* test: Add unit tests

* test: remove additional logs

* feat: remove SigningKeys function

* refactor: Adjust error messages

* feat: Remove proof parameter from Rewards method

* Remove Peer upper limit of peers on CL (#404)

* Remove Peer upper limit on teku because of new peers management

* Remove Peer force setup from CL layer

* Fix typo

* Delete sh.exe.stackdump

* feat: Lido Tier 1 Integration CLI  (#402)

* feat: Display Lido node data on the CLI

* test: sedge lidoStatus command

* style: Adjust sedge clients and sedge networks display

* test: Update tables_test.go

* docs: Update chagelog

* refactor: contractsAddress.go

* test: Include unit tests for binary search in rewards.go

* fix: handle RPC connection error

* style: Adjust CLI -h message

* feat: Validate reward address

* test: Add test cases for rewards  binary search

* style: Adjust clients and networks table design

* refactor: Randomize RPCs order for connection

* feat: validate reward address

* refactor: Adjust error messages for deployed contracts

* test: Add e2e tests for lido-status

* feat: Add --nodeID flag

* style: Adjust progress bar

* refactor: Use EthAddressValidator for rewardsAddress

* style: Update progress bar design

* fix: Update go.mod

* fix: Update go.mod

* test: Disable progress bar for tests

* feat: add op funding.json (#405)

* Main v1.5.0 into Develop (#409)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* Release v1.3.1 (#359)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* docs: update changelog

* docs: update documentation to version v1.3.1

* docs: update CHANGELOG.md

Co-authored-by: Adrian Tubal Páez Ruiz <[email protected]>

* docs: update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Fix homebrew (#360)

* feat: upgrade release action

* fix: downgrade docker/setup-buildx-action to v3

* fix: update reviewers on release PR

* fix:comment failing packages on Windows

* Release v1.3.2 (#365)

Dencun-ready release

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Release v1.4.0 (#394)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* Update develop branch with main (#362)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* Release v1.3.1 (#359)

* [docs] update changelog

* [docs] update docs for version v1.3.0

* docs: update main docs page to holds holesky

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: add new info section on latest comment at quickstart page

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update CHANGELOG

Co-authored-by: Miguel Tenorio <[email protected]>

* fix: golang version for release

* chore: Update client images to be ready for deneb forks

* feat: update courtney dependency

* fix: update unit_tests action

* fix: update build workflow

* fix: update codecov/codecov-action to v4

* fix: update doc-test dependencies versions

* fix: update templates commands in tests

* feat: update versions of clients

* fix: update lodestar command

* docs: update changelog

* docs: update documentation to version v1.3.1

* docs: update CHANGELOG.md

Co-authored-by: Adrian Tubal Páez Ruiz <[email protected]>

* docs: update CHANGELOG.md

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Fix homebrew (#360)

* feat: upgrade release action

* fix: downgrade docker/setup-buildx-action to v3

* fix: update reviewers on release PR

* fix:comment failing packages on Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>

* Update images dencun-ready (#364)

* feat: update client images to be dencun compatible

* docs: update changelog

* Remove obsolete version field (#373)

* fix: remove obsolete version field

* fix: update github actions (#366)

* fix: check-version PR reviewers (#382)

* Remove support for Goerli  (#372)

* Removed Goerli from NetworkSupported and adjusted networks test

* Removed Goerli from templates/envs

* Removed Goerli from templates/envs

* Mentioned Goerli support removal in the changelog, goerli.mdx, and README

* Fixed TestSupportMEVBoost

* Removed Georli from TestGenerativeEnvFile

* Adjusted Test case 6 in TestCheckVariable

* Removed Georli from networks list for TestSupportedNetworks

* Removed Goerli from cli.go

* Adjusted test cli_test.go "consensus node" network into NetworkMainnet

* Replaced Goerli network from test cases in generate_test.go with valid networks

* Removed Goerli from GenerateCmd()

* Replaced Goerli in test cases with Mainnet

* Removed Goerli from KeysCmd()

* Removed Goerli from FullNodeSubCmd()

* Removed NetworkGoerli

* Fixed index_out_of_range error in Holesky related test cases in "Select network"

* Adjusted error in TestCli regarding "consensus node" test case

* Update cli/sub_gen.go

* docs: Update cli.mdx

* docs: Update clients.mdx

* docs: Update generate.mdx

* docs: Update keys.mdx

* docs: Update networks.mdx

* docs: Replace Goerli with Sepolia in run-validator-mev[network].md

* docs: Remove Goerli from documentations

* feat: remove Goerli from ImportKeys and associated tests

* docs: remove Goerli from docs

* test: Add E2E test suite (#384)

* test: init e2e tests

* feat: add e2e test workflow

* chore: add codecov config

* feat: Add Smart Contracts logic for Lido (#386)

* feat: add MevBoostRelayAllowedList contract and code

* feat: add StakingRouter contract and code

* feat: add contracts go files to package "lido"

* feat: apply changes to go.sum and go.mod

* feat: adjust packages for contracts

* fix: adjust formatting in MEVBoostRelayAllowedList.go

* fix: update go.mod and go.sum

* test: create MEVBoostrelayAllowedList_test.go

* feat: update go.mod, go.sum

* style: adjust formatting

* feat: move lido package to internal package

* feat: add feeRecipient addresses for each network

* feat: adjust MEVBoostRelayAllowedList_test.go for method GetRelays

* style: add comments to GetRelays method

* feat: separate test and logic methods

* feat: put expectedRelays in .yaml file

* style: rename files, adjust formatting and add comments

* feat: import configs package

* feat: add public rpcs to configs and create method GetPublicRPCs

* style: adjust formatting

* feat: Allow keystores creation with eth1 withdrawal credentials (#235)

* feat: allow keystores creation with eth1 withdrawal credentials

* fix: error when passing empty withdrawal eth1 address

* chore: Add devcontainer config

* fix: Withdrawal credentials prefix zeros in deposit data.

* feat: Add json schema and logic to validate deposit_data.json

* test: Add e2e test for keys gen with eth1 withdrawal cred

* feat: Support installing deps on debian 12

* fix: fix e2e tests error in Windows

* fix: e2e sedge keys test for Windows

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>

* feat: Add support for mev-boost on Holesky (#380)

* feat: add mev RelayUrls for Holesky

* feat: update holesky/envs_base.tmpl

* test: add test case in TestSupportMEVBoost

* docs: update docs, README.md, and CHANGELOG.md

* feat: update TestCli/consensus_node_holesky

* feat: update TestCli/consensus_node_holesky

---------

Co-authored-by: Marcos Antonio Maceo <[email protected]>

* feat: Update images to latest versions (#391)

* feat: update clients to latest images

* Fix misused eth1 flag for lighthouse CL

* docs: update changelog

---------

Co-authored-by: Yaroslav Kukharuk <[email protected]>

* feat: Add Lido Flow (#389)

* feat: add method GetRelaysURI and adjust mevboostrelaylist package

* feat: add lido flow for cli.go

* refactor: adjust prompts for lido flow

* feat: add non-interactive lido flow

* style: adjust formatting

* fix: adjust formatting

* test: add e2e test for non-interactive setup

* fix: adjust e2e test

* style: adjust formatting

* test: Add mocks test for non-interactive setup in cli/generate_test.go

* doc: documentation for lido csm on sedge

* test: adjust e2e tests for lido flow

* fix: update go.mod

* fix: Adjust generate_test.go

* feat: Add --lido to sedge keys

* feat: Overwrite WithdrawalAddress in prompts setup

* refactor: error messages

* refactor: adjust tests and naming

* test: adjust keys for holesky

* doc: Update Sedge with Lido guide (#390)

* feat: MEV prompt with lido

* refactor: Validate lido supported networks

* refactor: NodeOptionsFactory interface for cli

* refactor: NodeOptionsFactory interface for sedge generate

* fix: Holesky fork version

* refac: New pkg options for Sedge setup type logic

* feat(keys): Log keystore path after generation

* doc: Add --network holesky to sedge keys --lido example

* chore: Update go.mod

* fix documentation for update on commands

* doc: Update CHANGELOG

---------

Co-authored-by: Marcos Maceo <[email protected]>
Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>

* feat: Support ubuntu 24.04 deps install (#392)

* feat: Support installing deps on Ubuntu 24.04

* feat: Add gcc and g++ to suggested deps for build from source

* fix(cli): Mev-boost not being generated for holesky (#393)

* docs: update documentation for release v.1.4.0

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: Kamil Chodoła <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Carlos Bermudez Porto <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Yaroslav Kukharuk <[email protected]>

* fix: set golang to 1.21 on actions (#395)

* fix: update go version on dockerfile for buildx (#396)

* fix: update go version on actions for ppa (#397)

* Release v1.5.0

* feat: add op funding.json (#405)

* Remove Peer upper limit of peers on CL (#404)

* Remove Peer upper limit on teku because of new peers management

* Remove Peer force setup from CL layer

* Fix typo

* Delete sh.exe.stackdump

* docs: update changelog

* docs: update docs to latest version

* feat: add OP stack using nethermind to Sedge (#407)

* feat: add op-neth support

* docs: update changelog

* feat: add --Discovery.Discv5Enabled flag to op-nethermind

* fix: change --consensus-api-url to --consensus-url

* fix: remove references to op-enabled on full command

* feat: add --syncmode=execution-layer flag to op-l2 container

* fix: add more context on documentation

* docs: updated changelog

* Update docs/docs/quickstart/optimism.mdx

Co-authored-by: Miguel Tenorio <[email protected]>

---------

Co-authored-by: Miguel Tenorio <[email protected]>

* docs: update changelog

* fix: format lines

---------

Co-authored-by: Marek Moraczyński <[email protected]>
Co-authored-by: Kamil Chodoła <[email protected]>
Co-authored-by: Miguel Tenorio <[email protected]>

* fix: Remove repeated code

* fix: error with lido rewards

* feat: Adjust Makefile

* fix: Remove generated file

---------

Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: Kamil Chodoła <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Carlos Bermudez Porto <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>
Co-authored-by: Haneen Khalifa <[email protected]>
Co-authored-by: Yaroslav Kukharuk <[email protected]>
Co-authored-by: Marek Moraczyński <[email protected]>

* fix: Update Rewards method for Lido

* refactor: Get rewards using linear search

* refactor: Get shares using linear search

* fix: Update deprecated package for RPCs

* fix: GetPublicRPCs randomize RPCs

* docs: Include lido-status command

* docs: Include lido-status command

* docs: Adjust lido in  quickstart

* docs: Update clients and networks execution example

* docs: Add information about rewardAddress

* docs: update lido-status with --nodeID flag

* feat: Integrate EL monitoring stack

* feat: Merge DockerManager and ServiceManager interfaces

* feat: integrate dependencies from eigenlayer

* feat: Integrate code from Eigenlayer

* feat: Adjust dependencies

* test: Merged interfaces

* feat: Include monitoring stack

* feat: Adjust monitoring stack dependencies

* feat: Update changelog

* refactor: Update mocks

* tests: Adjust tests file handling for Windows OS

* feat: Update PathMatcher adjustments

* tests: Adjust file handling

* feat: Add monitoring command

* tests: e2e tests for monitoringStack

* feat: Install latest Docker in CI/CD pipeline

* feat: Install latest Docker in CI/CD pipeline for e2e

* fix: Adjust Docker client version

* feat: Adjust docker client API version

* fix: Adjust platfrom issue for Windows

* feat: Update services images

* feat: Update docker-compose script

* fix: Windows error

* fix: File handling for Windows

* feat: Update service versions

* feat: Adjust monitoring clean command

* feat: Update pipeline for Windows docker

* feat: Remove unnecessary files

* fix: Windows error

* feat: Update gomod

* feat: Adjust pipeline for Docker Windows

* feat: Exclude e2e tests from unit-tests workflow

* feat: Update e2e workflow

* feat: Update daemon configuration for workflow

* fix: Pipeline  daemon for Windows

* feat: e2e pipeline for Windows

* feat: Install make for WSL in pipeline

* feat: Update workflow

* feat: Increase timeout for make codecov-test

* feat: Ignore e2e tests in unit-tests workflow

* feat: Install deps for WSL in pipeline

* feat: Skip e2e tests for unit-tests workflow

* feat: Update makefile

* feat: Run e2e tests for unit-tests ubuntu

* feat: Update go version for WSL pipeline

* feat: Update e2e workflow

* fix: Skip e2e in ubuntu unit-tests workflow

* feat: Handle go installation for WSL

* feat: Use actions for WSL in workflow

* feat: Skip e2e monitoringStack test for Windows

* feat: Update Go version

* test: Refactor tests

* refac: ComposeManager and Locker interfaces

* test: Update mocks

* refac: Remove unnecessary files

* refac: Update services versions

* style: Adjust formatting

* tests: Fix errors

* feat: Add Lido-Exporter app

* feat: Add contract bindings for VEBO Lido contract

* feat: Support Staking Module ID usage

* feat: Add ChainID to network configs

* refac: Update RPC client creation

Updates:
- Strengthen client validation
- Allow providing a list of RPC endpoints

* feat: Add Lido Exporter app

* feat: Add support for RPC WebSocket connection

* chore: Update logging

* refac!: Separate sedge and lido-exporter e2e test suites

* test: lido-exporter e2e

* doc: Add README for lido-exporter

* feat: Add Dockerfile for lido-exporter

* fix: Rewards test case

* fix: Unused import

* chore: Update go.mod

* chore: Update Makefile

* refac: Remove courtney dependency

* chore: Turn some prints into debug logs

* fix: e2e binary name for Windows

* refac: Include e2e monitoring stack tests

* fix: Update Makefile

* tests: Update e2e monitoring stack

* feat: Validate Node Operator ID

* tests: Increase timeout

* test: Increase timeout for e2e tests

* test: Adjust clean up for Windows

* test: Increase test sleep duration

* style: Adjust formatting

* test: Adjust timeout

* test: Run tests sequentially

* style: Adjust formatting

* test: Increase timeout

* test: Increase timeout

* test: Skip lido-exporter e2e tests

* refac: PublicRPCs

---------

Co-authored-by: Haneen Khalifa <[email protected]>

* feat: Create pipeline for lido-exporter Docker image release

* fix: Lido Exporter Release (#415)

* fix: Version variable

* refac: Adjust version extraction

* test: Release lido-exporter

* test: Check version

* fix: Deprecated output step

* fix: Lido Exporter release version

* fix: Remove comments

* feat: Update lido-exporter workflow trigger

* fix: Generate files for lido-exporter build

* fix: Adjust lido-exporter release tag (#419)

* feat: Integrate lido-exporter into the monitoring stack

* feat: Integrate lido-exporter into the monitoring stack

* test: e2e tests for monitoring init  lido

* chore: Update go.mod

* feat: Add method Name to ServiceAPI

* feat: Add lido-exporter as target

* refac: Port conversion

* test: Unit tests for AddService method

* test: Adjust mocks order

* feat: Set network name for monitoring stack

* feat: Create Grafana dashboard for lido-exporter

* docs: update lido.mdx with EA program info (#427)

* doc: Fix typo in custom-bootnodes.mdx (#353)

* chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 in /docs (#350)

Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump serve-static and express in /docs (#429)

Bumps [serve-static](https://github.com/expressjs/serve-static) and [express](https://github.com/expressjs/express). These dependencies needed to be updated together.

Updates `serve-static` from 1.15.0 to 1.16.2
- [Release notes](https://github.com/expressjs/serve-static/releases)
- [Changelog](https://github.com/expressjs/serve-static/blob/v1.16.2/HISTORY.md)
- [Commits](https://github.com/expressjs/serve-static/compare/v1.15.0...v1.16.2)

Updates `express` from 4.18.1 to 4.21.0
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.21.0/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.18.1...4.21.0)

---
updated-dependencies:
- dependency-name: serve-static
  dependency-type: indirect
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat(security): Adds security policy to repo (#371)

* feat(security): Adds security policy to repo

Adapted from https://github.com/NethermindEth/nethermind/blob/master/SECURITY.md

Closes https://github.com/NethermindEth/sedge/issues/370 if merged

* feat: Adds Security section to readme

Following feedback from @stdevMac in https://github.com/NethermindEth/sedge/pull/371

* chore(deps): bump micromatch from 4.0.5 to 4.0.8 in /docs (#430)

Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump webpack from 5.76.1 to 5.95.0 in /docs (#433)

Bumps [webpack](https://github.com/webpack/webpack) from 5.76.1 to 5.95.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.76.1...v5.95.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat(op): Remove not needed neth-op discovery flag (#421)

* chore(deps): bump webpack-dev-middleware from 5.3.3 to 5.3.4 in /docs (#436)

Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.3...v5.3.4)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* refac: Remove validator-import container from testdata files (#412)

* fix(security): Upgrade cross-compile image for golang (#400)

Co-authored-by: Miguel Tenorio <[email protected]>

* chore(deps): bump follow-redirects from 1.15.4 to 1.15.9 in /docs (#435)

Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.9.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.9)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* ci: Add CodeQL SAST workflow (#422)

* Create codeql.yml

* Update codeql.yml

* chore(deps): bump axios, @docusaurus/core and @docusaurus/preset-classic in /docs (#438)

* chore(deps): bump axios, @docusaurus/core and @docusaurus/preset-classic

Removes [axios](https://github.com/axios/axios). It's no longer used after updating ancestor dependencies [axios](https://github.com/axios/axios), [@docusaurus/core](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus) and [@docusaurus/preset-classic](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-preset-classic). These dependencies need to be updated together.


Removes `axios`

Updates `@docusaurus/core` from 2.0.1 to 3.5.2
- [Release notes](https://github.com/facebook/docusaurus/releases)
- [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/docusaurus/commits/v3.5.2/packages/docusaurus)

Updates `@docusaurus/preset-classic` from 2.0.1 to 3.5.2
- [Release notes](https://github.com/facebook/docusaurus/releases)
- [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/docusaurus/commits/v3.5.2/packages/docusaurus-preset-classic)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: indirect
- dependency-name: "@docusaurus/core"
  dependency-type: direct:production
- dependency-name: "@docusaurus/preset-classic"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix: Dependencies issues

* chore(makefile): Add rule to install docs dependencies

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Miguel Tenorio <[email protected]>
Co-authored-by: AntiD2ta <[email protected]>

* chore: Update Go toolchain version (#439)

* fix: Update Go toolchain version

* chore: Update CHANGELOG

* ci: Update Github auth for CI pipeline (#440)

* ci: Update check-version workflow with new GH app

* ci: Update homebrew release with new GH app

* refac: Adjust lido-exporter Grafana dashboard

* refac: Adjust lido-exporter Grafana dashboard

* feat: Update lido-exporter penalty metrics

* fix: Update test values

* test: update lido-exporter E2E tests (#428)

* fix(e2e): Clean env variables in between runs

* fix: Update test cases and remove Parallels

* test: Skip monitoring stack e2e tests for arm64

* chore: Update gitignore

---------

Co-authored-by: Haneen Hany <[email protected]>

* feat: Add lido-exporter alert rules and alertmanager for monitoring stack

* feat: lido-exporter alert rules

* feat: Include alertmanager for Prometheus and Grafana

* test: Update Prometheus tests

* refac: Adjust alert message

Co-authored-by: Miguel Tenorio <[email protected]>

* test: Update Prometheus service tests

* refac: Update unit tests for AddService

* feat: Update lido-exporter version

* feat: Add Grafana on-call plugin

* refac: Update ports for services

* feat: Connect Prometheus alerts with Grafana OnCall

* Refac: Adjust test message

Co-authored-by: Miguel Tenorio <4…
  • Loading branch information
15 people authored Nov 1, 2024
1 parent 4738fb3 commit dbddfd4
Show file tree
Hide file tree
Showing 30 changed files with 372 additions and 24 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

### Added
- Updates on support for `op-geth` and `op-reth` clients on Optimism and Base networks.

### Changed
- Updated Sedge's Docker commands internal functionality.
- Changed the `--op-execution-image` flag to `--op-execution` on the `generate op-full-node` command.

## [v1.7.0] - 2024-10-24

Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -264,6 +264,7 @@ The following roadmap covers the main features and ideas we want to implement bu
- [x] Support for Lido CSM
- [x] Support for Nimbus client as Consensus and Validator
- [x] Include monitoring tool for alerting, tracking validator balance, and tracking sync progress and status of nodes
- [x] Support for Optimism and Base.
- [ ] More tests!!!


Expand Down
15 changes: 9 additions & 6 deletions cli/generate.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ var (
)

const (
execution, consensus, validator, mevBoost, optimism = "execution", "consensus", "validator", "mev-boost", "optimism"
jwtPathName = "jwtsecret"
execution, consensus, validator, mevBoost, optimism, opExecution = "execution", "consensus", "validator", "mev-boost", "optimism", "opexecution"
jwtPathName = "jwtsecret"
)

type CustomFlags struct {
Expand Down Expand Up @@ -459,7 +459,7 @@ func valClients(allClients clients.OrderedClients, flags *GenCmdFlags, services
return nil, err
}
if flags.optimismName != "" {
opClient.Name = "optimism"
opClient.Name = "opnode"
if len(optimismParts) > 1 {
opClient.Image = strings.Join(optimismParts[1:], ":")
}
Expand All @@ -470,15 +470,18 @@ func valClients(allClients clients.OrderedClients, flags *GenCmdFlags, services
}

optimismExecutionParts := strings.Split(flags.optimismExecutionName, ":")
executionOpClient = allClients[execution]["nethermind"]
executionOpClient, err = clients.RandomChoice(allClients[opExecution])
if err != nil {
return nil, err
}
if flags.optimismExecutionName != "" {
executionOpClient.Name = optimismExecutionParts[0]
executionOpClient.Name = strings.ReplaceAll(optimismExecutionParts[0], "-", "")
if len(optimismExecutionParts) > 1 {
executionOpClient.Image = strings.Join(optimismExecutionParts[1:], ":")
}
}
executionOpClient.SetImageOrDefault(strings.Join(optimismExecutionParts[1:], ":"))
if err = clients.ValidateClient(executionOpClient, optimism); err != nil {
if err = clients.ValidateClient(executionOpClient, opExecution); err != nil {
return nil, err
}

Expand Down
4 changes: 2 additions & 2 deletions cli/sub_gen.go
Original file line number Diff line number Diff line change
Expand Up @@ -139,14 +139,14 @@ This command does not generate a validator configuration, as Optimism and Base u
return preValidationGenerateCmd(network, logging, &flags)
},
RunE: func(cmd *cobra.Command, args []string) error {
services := []string{execution, consensus, optimism}
services := []string{execution, consensus, optimism, opExecution}
return runGenCmd(cmd.OutOrStdout(), &flags, sedgeAction, services)
},
}
// Bind flags
cmd.Flags().StringVarP(&flags.consensusName, "consensus", "c", "", "Consensus engine client, e.g. teku, lodestar, prysm, lighthouse, Nimbus. Additionally, you can use this syntax '<CLIENT>:<DOCKER_IMAGE>' to override the docker image used for the client. If you want to use the default docker image, just use the client name")
cmd.Flags().StringVar(&flags.optimismName, "op-image", "", "Optimism consensus client image.")
cmd.Flags().StringVar(&flags.optimismExecutionName, "op-execution-image", "", "Image name set for nethermind client to be used with optimism.")
cmd.Flags().StringVar(&flags.optimismExecutionName, "op-execution", "", "Optimism Execution client to be used, op-nethermind, op-geth, or op-reth. Additionally, you can use this syntax '<CLIENT>:<DOCKER_IMAGE>' to override the docker image used for the client. If you want to use the default docker image, just use the client name.")
cmd.Flags().StringVarP(&flags.executionName, "execution", "e", "", "Execution engine client, e.g. geth, nethermind, besu, erigon. Additionally, you can use this syntax '<CLIENT>:<DOCKER_IMAGE>' to override the docker image used for the client. If you want to use the default docker image, just use the client name")
cmd.Flags().StringVarP(&flags.executionApiUrl, "execution-api-url", "", "", "Set execution api url. If Set, will omit the creation of execution and beacon nodes, and only create optimism nodes.")
cmd.Flags().StringVarP(&flags.consensusApiUrl, "consensus-url", "", "", "Set consensus api url. If Set, will omit the creation of execution and beacon nodes, and only create optimism nodes.")
Expand Down
18 changes: 14 additions & 4 deletions configs/client_images.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ consensus:
version: v5.1.2
nimbus:
name: statusim/nimbus-eth2
version: multiarch-v24.9.0
version: multiarch-v24.10.0
validator:
lighthouse:
name: sigp/lighthouse
Expand All @@ -42,8 +42,18 @@ validator:
version: v5.1.2
nimbus:
name: statusim/nimbus-validator-client
version: multiarch-v24.9.0
version: multiarch-v24.10.0
optimism:
optimism:
opnode:
name: us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node
version: v1.9.3
version: v1.9.4
opexecution:
opgeth:
name: us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth
version: v1.101411.0
opnethermind:
name: nethermind/nethermind
version: 1.29.1
opreth:
name: ghcr.io/paradigmxyz/op-reth
version: v1.1.0
7 changes: 6 additions & 1 deletion configs/images.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,12 @@ var ClientImages struct {
Nimbus Image `yaml:"nimbus"`
}
Optimism struct {
OpNode Image `yaml:"optimism"`
OpNode Image `yaml:"opnode"`
}
OpExecution struct {
OpGeth Image `yaml:"opgeth"`
OpNeth Image `yaml:"opnethermind"`
OpReth Image `yaml:"opreth"`
}
}

Expand Down
4 changes: 2 additions & 2 deletions docs/docs/commands/cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ $ sedge cli
? Enable MEV Boost? Yes
? Mev-Boost image flashbots/mev-boost:latest
? Insert relay URLs if you don't want to use the default values listed below Default values are listed below. (
? Insert relay URLs if you don't want to use the default values listed below Default values are listed below.
? Insert relay URLs if you don't want to use the default values listed below Default values are listed below.
https://0xa7ab7a996c8584251c8f925da3170bdfd6ebc75d50f5ddc4050a6fdc77f2a3b5fce2cc750d0865e05d7228af97d69561@agnostic-relay.net
https://0x9000009807ed12c1f08bf4e81c6da3ba8e3fc3d953898ce0102433094e5f22f21102ec057841fcb81978ed1ea0fa8246@builder-relay-mainnet.blocknative.com
https://0x9000009807ed12c1f08bf4e81c6da3ba8e3fc3d953898ce0102433094e5f22f21102ec057841fcb81978ed1ea0fa8246@builder-relay-mainnet.blocknative.com
https://0xad0a8bb54565c2211cee576363f3a347089d2f07cf72679d16911d740262694cadb62d7fd7483f27afd714ca0f1b9118@bloxroute.ethical.blxrbdn.com
https://0x8b5d2e73e2a3a55c6c87b8b6eb92e0149a125c852751db1422fa951e42a09b82c142c3ea98d0d9930b056a3bc9896b8f@bloxroute.max-profit.blxrbdn.com
https://0xb0b07cd0abef743db4260b0ed50619cf6ad4d82064cb4fbec9d3ec530f7c5e6793d9f286c4e082c0244ffb9f2658fe88@bloxroute.regulated.blxrbdn.com
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/commands/generate.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ Usage:
Flags:
-c, --consensus string Consensus engine client, e.g. teku, lodestar, prysm, lighthouse, Nimbus. Additionally, you can use this syntax '<CLIENT>:<DOCKER_IMAGE>' to override the docker image used for the client. If you want to use the default docker image, just use the client name
--op-image string Optimism consensus client image.
--op-execution-image string Image name set for nethermind client to be used with optimism.
--op-execution string Optimism Execution client to be used, op-nethermind, op-geth, or op-reth. Additionally, you can use this syntax '<CLIENT>:<DOCKER_IMAGE>' to override the docker image used for the client. If you want to use the default docker image, just use the client name.
-e, --execution string Execution engine client, e.g. geth, nethermind, besu, erigon. Additionally, you can use this syntax '<CLIENT>:<DOCKER_IMAGE>' to override the docker image used for the client. If you want to use the default docker image, just use the client name
--execution-api-url string Set execution api url. If Set, will omit the creation of execution and beacon nodes, and only create optimism nodes.
--consensus-url string Set consensus api url. If Set, will omit the creation of execution and beacon nodes, and only create optimism nodes.
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/commands/networks.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ $ sedge networks
2024-07-09 12:23:03 -- [INFO] Listing supported networks
# │Supported Networks
───────────────────────────────┼────────────────────────────────────────────────
1 │chiado
Expand Down
14 changes: 14 additions & 0 deletions docs/docs/quickstart/optimism.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,18 @@ To generate the configuration for your Optimism node, use the following command:
sedge generate op-full-node --network mainnet
```

:::tip

**Supported Execution Clients**:
- op-nethermind
- op-geth
- op-reth

You can set the execution client using the `--op-execution` flag. If you don't specify an execution client, Sedge will chose one randomly.

Alternatively, you can set the docker image for the execution client using the `--op-execution '<CLIENT>:<DOCKER_IMAGE>'` syntax.
:::

This command will create a new directory with all the necessary configuration files for running an Optimism node on the mainnet. If you want to run a node on the testnet (Sepolia), use `--network sepolia` instead.

At this time, we are using Nethermind as the execution Optimism node, in the future we will add support for `op-geth`.
Expand All @@ -58,6 +70,8 @@ Setting `--execution-api-url` flag, will only generate execution and consensus O

This is useful if you already have an endpoint for the execution node. It will save synchronization time.

For example you can set: `sedge generate op-full-node --execution-api-url http://execution:port -n sepolia --op-execution op-nethermind --consensus-url http://consensus:port`

:::

### Running the Node
Expand Down
7 changes: 6 additions & 1 deletion internal/pkg/clients/init.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,11 @@ var AllClients map[string][]string = map[string][]string{
"nimbus",
},
"optimism": {
"optimism",
"opnode",
},
"opexecution": {
"opgeth",
"opnethermind",
"opreth",
},
}
17 changes: 15 additions & 2 deletions internal/pkg/clients/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ func (c *Client) SetImageOrDefault(image string) {
c.setExecutionImage(image)
case "optimism":
c.setOptimismImage(image)
case "opexecution":
c.SetOpExecutionImage(image)
}
}

Expand Down Expand Up @@ -84,11 +86,22 @@ func (c *Client) setValidatorImage(image string) {

func (c *Client) setOptimismImage(image string) {
switch c.Name {
case "optimism":
case "opnode":
c.Image = valueOrDefault(image, configs.ClientImages.Optimism.OpNode.String())
}
}

func (c *Client) SetOpExecutionImage(image string) {
switch c.Name {
case "opgeth":
c.Image = valueOrDefault(image, configs.ClientImages.OpExecution.OpGeth.String())
case "opnethermind":
c.Image = valueOrDefault(image, configs.ClientImages.OpExecution.OpNeth.String())
case "opreth":
c.Image = valueOrDefault(image, configs.ClientImages.OpExecution.OpReth.String())
}
}

func valueOrDefault(value string, defaultValue string) string {
if value == "" {
return defaultValue
Expand All @@ -101,8 +114,8 @@ type Clients struct {
Execution *Client
Consensus *Client
Validator *Client
ExecutionOP *Client
Optimism *Client
ExecutionOP *Client
}

type ClientMap map[string]*Client
Expand Down
34 changes: 30 additions & 4 deletions internal/pkg/generate/generate_scripts.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ const (
consensus = "consensus"
validator = "validator"
optimism = "optimism"
opExecution = "opexecution"
validatorImport = "validator-import"
mevBoost = "mev-boost"
configConsensus = "config_consensus"
Expand Down Expand Up @@ -108,10 +109,11 @@ func validateConsensus(gd *GenData, c *clients.ClientInfo) error {
// mapClients convert genData clients to clients.Clients
func mapClients(gd *GenData) map[string]*clients.Client {
cls := map[string]*clients.Client{
execution: gd.ExecutionClient,
consensus: gd.ConsensusClient,
validator: gd.ValidatorClient,
optimism: gd.OptimismClient,
execution: gd.ExecutionClient,
consensus: gd.ConsensusClient,
validator: gd.ValidatorClient,
optimism: gd.OptimismClient,
opExecution: gd.ExecutionOPClient,
}

return cls
Expand Down Expand Up @@ -437,8 +439,30 @@ func EnvFile(gd *GenData, at io.Writer) error {
elOpImage = imageOrEmpty(gd.ExecutionOPClient, gd.LatestVersion)
}
opImageVersion := ""
opSequencerHttp := ""
rethNetwork := ""
if gd.OptimismClient != nil {
opImageVersion = imageOrEmpty(cls[optimism], gd.LatestVersion)
if gd.IsBase {
opSequencerHttp = "https://" + gd.Network + "-sequencer.base.org"
} else {
opSequencerHttp = "https://" + gd.Network + "-sequencer.optimism.io"
}
if gd.Network == configs.NetworkMainnet {
if gd.IsBase {
rethNetwork = "base"
} else {
rethNetwork = "optimism"
}
}
if gd.Network == configs.NetworkSepolia {
if gd.IsBase {
rethNetwork = "base-sepolia"
} else {
rethNetwork = "optimism-sepolia"
}
}

}

data := EnvData{
Expand Down Expand Up @@ -467,6 +491,8 @@ func EnvFile(gd *GenData, at io.Writer) error {
OPImageVersion: opImageVersion,
ElOpImage: elOpImage,
ElOPAuthPort: gd.Ports["AuthPortELOP"],
OpSequencerHttp: opSequencerHttp,
RethNetwork: rethNetwork,
}

// Save to writer
Expand Down
2 changes: 2 additions & 0 deletions internal/pkg/generate/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ type EnvData struct {
JWTOPSecretPath string
OPImageVersion string
ElOPAuthPort uint16
OpSequencerHttp string
RethNetwork string
}

// GenData : Struct Data object for script's generation
Expand Down
1 change: 1 addition & 0 deletions templates/envs/mainnet/env_base.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,5 @@ FEE_RECIPIENT={{.FeeRecipient}}{{end}}
{{template "consensus" .}}
{{template "validator" .}}
{{template "optimism" .}}
{{template "opexecution" .}}
{{ end }}
10 changes: 10 additions & 0 deletions templates/envs/mainnet/opexecution/opgeth.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{{/* opgeth.tmpl */}}
{{ define "opexecution" }}
# --- Layer 2 - Optimism Execution Node - configuration ---
EXECUTION_OP_API_URL={{.ExecutionOPApiURL}}
EC_OP_IMAGE_VERSION={{.ElOpImage}}
EC_OP_DATA_DIR={{.ElDataDir}}-op
EC_OP_JWT_SECRET_PATH={{.JWTOPSecretPath}}
EC_OP_RPC_URL=http://execution-l2:{{.ElOPAuthPort}}
OP_SEQUENCER_HTTP={{.OpSequencerHttp}}
{{ end }}
10 changes: 10 additions & 0 deletions templates/envs/mainnet/opexecution/opnethermind.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{{/* opnethermind.tmpl */}}
{{ define "opexecution" }}
# --- Layer 2 - Optimism Execution Node - configuration ---
EXECUTION_OP_API_URL={{.ExecutionOPApiURL}}
EC_OP_IMAGE_VERSION={{.ElOpImage}}
EC_OP_DATA_DIR={{.ElDataDir}}-op
EC_OP_JWT_SECRET_PATH={{.JWTOPSecretPath}}
NETHERMIND_OP_LOG_LEVEL=INFO
OP_SEQUENCER_HTTP={{.OpSequencerHttp}}
{{ end }}
12 changes: 12 additions & 0 deletions templates/envs/mainnet/opexecution/opreth.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{{/* opreth.tmpl */}}
{{ define "opexecution" }}
# --- Layer 2 - Optimism Execution Node - configuration ---
EXECUTION_OP_API_URL={{.ExecutionOPApiURL}}
EC_OP_IMAGE_VERSION={{.ElOpImage}}
EC_OP_DATA_DIR={{.ElDataDir}}-op
EC_OP_JWT_SECRET_PATH={{.JWTOPSecretPath}}
RETH_OP_LOG_LEVEL=log-fmt
OP_SEQUENCER_HTTP={{.OpSequencerHttp}}
RETH_NETWORK={{.RethNetwork}}
{{ end }}

8 changes: 8 additions & 0 deletions templates/envs/mainnet/optimism/opnode.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{{/* opnode.tmpl */}}
{{ define "optimism" }}
# --- Layer 2 - Optimism Node - configuration ---
EC_API_URL={{.ExecutionApiURL}}
EC_OP_JWT_SECRET_PATH={{.JWTOPSecretPath}}
EC_OP_RPC_URL=http://execution-l2:{{.ElOPAuthPort}}
OP_IMAGE_VERSION={{.OPImageVersion}}
{{ end }}
1 change: 1 addition & 0 deletions templates/envs/sepolia/env_base.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,5 @@ FEE_RECIPIENT={{.FeeRecipient}}{{end}}
{{template "consensus" .}}
{{template "validator" .}}
{{template "optimism" .}}
{{template "opexecution" .}}
{{ end }}
10 changes: 10 additions & 0 deletions templates/envs/sepolia/opexecution/opgeth.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{{/* opgeth.tmpl */}}
{{ define "opexecution" }}
# --- Layer 2 - Optimism Execution Node - configuration ---
EXECUTION_OP_API_URL={{.ExecutionOPApiURL}}
EC_OP_IMAGE_VERSION={{.ElOpImage}}
EC_OP_DATA_DIR={{.ElDataDir}}-op
EC_OP_JWT_SECRET_PATH={{.JWTOPSecretPath}}
EC_OP_RPC_URL=http://execution-l2:{{.ElOPAuthPort}}
OP_SEQUENCER_HTTP={{.OpSequencerHttp}}
{{ end }}
10 changes: 10 additions & 0 deletions templates/envs/sepolia/opexecution/opnethermind.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{{/* opnethermind.tmpl */}}
{{ define "opexecution" }}
# --- Layer 2 - Optimism Execution Node - configuration ---
EXECUTION_OP_API_URL={{.ExecutionOPApiURL}}
EC_OP_IMAGE_VERSION={{.ElOpImage}}
EC_OP_DATA_DIR={{.ElDataDir}}-op
EC_OP_JWT_SECRET_PATH={{.JWTOPSecretPath}}
NETHERMIND_OP_LOG_LEVEL=INFO
OP_SEQUENCER_HTTP={{.OpSequencerHttp}}
{{ end }}
Loading

0 comments on commit dbddfd4

Please sign in to comment.