Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
118 commits
Select commit Hold shift + click to select a range
847261a
[docs] update changelog
stdevMac Dec 10, 2023
8ad99c0
[docs] update docs for version v1.3.0
stdevMac Dec 10, 2023
08e2d20
docs: update main docs page to holds holesky
stdevMac Dec 11, 2023
ac6a892
docs: add new info section on latest comment at quickstart page
stdevMac Dec 11, 2023
bb51d67
docs: update CHANGELOG
stdevMac Dec 11, 2023
9e3e89b
fix: golang version for release
stdevMac Dec 11, 2023
280a601
chore: Update client images to be ready for deneb forks
stdevMac Feb 3, 2024
c01c423
feat: update courtney dependency
adriantpaez Feb 12, 2024
5e8827b
fix: update unit_tests action
adriantpaez Feb 12, 2024
ca4a121
fix: update build workflow
adriantpaez Feb 12, 2024
8abfaaf
fix: update codecov/codecov-action to v4
adriantpaez Feb 12, 2024
cb46133
fix: update doc-test dependencies versions
adriantpaez Feb 12, 2024
270b40c
fix: update templates commands in tests
stdevMac Feb 12, 2024
013b770
feat: update versions of clients
stdevMac Feb 13, 2024
2cc5c00
fix: update lodestar command
stdevMac Feb 12, 2024
523eb5e
Update develop branch with main (#362)
stdevMac Mar 8, 2024
3df8466
Update images dencun-ready (#364)
stdevMac Mar 8, 2024
f9cd284
Remove obsolete version field (#373)
kamilchodola Apr 30, 2024
dd62062
fix: update github actions (#366)
adriantpaez May 16, 2024
4d41a7d
fix: check-version PR reviewers (#382)
adriantpaez May 16, 2024
398245d
Remove support for Goerli (#372)
khalifaa55 May 20, 2024
1f75887
test: Add E2E test suite (#384)
adriantpaez May 28, 2024
870874f
feat: Add Smart Contracts logic for Lido (#386)
khalifaa55 Jun 25, 2024
011fad2
feat: Allow keystores creation with eth1 withdrawal credentials (#235)
cbermudez97 Jul 4, 2024
74604f5
feat: Add support for mev-boost on Holesky (#380)
khalifaa55 Jul 4, 2024
4bb728e
feat: Update images to latest versions (#391)
stdevMac Jul 9, 2024
ee821a8
feat: Add Lido Flow (#389)
khalifaa55 Jul 9, 2024
bdf9cfb
feat: Support ubuntu 24.04 deps install (#392)
AntiD2ta Jul 9, 2024
5231116
fix(cli): Mev-boost not being generated for holesky (#393)
AntiD2ta Jul 9, 2024
e92f92e
Sync branch with main branch changes (#399)
khalifaa55 Jul 22, 2024
aef5ceb
fix: Teku and Lighthouse import keys container error on Windows (#398)
khalifaa55 Jul 24, 2024
01fcb11
Lido Tier 1 Integration NO data (#401)
khalifaa55 Aug 13, 2024
ffd0eae
Remove Peer upper limit of peers on CL (#404)
kamilchodola Aug 29, 2024
6e3f24d
feat: Lido Tier 1 Integration CLI (#402)
khalifaa55 Aug 30, 2024
7204e13
feat: add op funding.json (#405)
MarekM25 Sep 4, 2024
149bcdc
Main v1.5.0 into Develop (#409)
stdevMac Sep 11, 2024
9563877
fix: Update Rewards method for Lido
khalifaa55 Sep 12, 2024
ea6586f
docs: Include lido-status command
khalifaa55 Sep 12, 2024
000cc79
feat: Integrate EL monitoring stack
khalifaa55 Sep 17, 2024
b63e1f2
feat: Add Lido-Exporter app
AntiD2ta Sep 19, 2024
e928e97
feat: Create pipeline for lido-exporter Docker image release
khalifaa55 Sep 24, 2024
1b3659d
fix: Lido Exporter Release (#415)
khalifaa55 Sep 25, 2024
0c82c08
feat: Update lido-exporter workflow trigger
khalifaa55 Sep 25, 2024
464352d
fix: Generate files for lido-exporter build
khalifaa55 Sep 25, 2024
d45ab87
fix: Adjust lido-exporter release tag (#419)
khalifaa55 Sep 26, 2024
9eb8d61
feat: Integrate lido-exporter into the monitoring stack
khalifaa55 Sep 30, 2024
7948325
feat: Create Grafana dashboard for lido-exporter
khalifaa55 Sep 30, 2024
5082128
docs: update lido.mdx with EA program info (#427)
jorem321 Oct 4, 2024
30add06
doc: Fix typo in custom-bootnodes.mdx (#353)
cristiantroy Oct 6, 2024
c9fa645
chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 in /docs (#350)
dependabot[bot] Oct 6, 2024
61e31be
chore(deps): bump serve-static and express in /docs (#429)
dependabot[bot] Oct 6, 2024
a359f81
feat(security): Adds security policy to repo (#371)
darigovresearch Oct 6, 2024
970c629
chore(deps): bump micromatch from 4.0.5 to 4.0.8 in /docs (#430)
dependabot[bot] Oct 6, 2024
d008283
chore(deps): bump webpack from 5.76.1 to 5.95.0 in /docs (#433)
dependabot[bot] Oct 6, 2024
325cb7a
feat(op): Remove not needed neth-op discovery flag (#421)
brbrr Oct 6, 2024
4dca751
chore(deps): bump webpack-dev-middleware from 5.3.3 to 5.3.4 in /docs…
dependabot[bot] Oct 6, 2024
fe52760
refac: Remove validator-import container from testdata files (#412)
adriantpaez Oct 6, 2024
b6e5bd6
fix(security): Upgrade cross-compile image for golang (#400)
stdevMac Oct 6, 2024
728a80e
chore(deps): bump follow-redirects from 1.15.4 to 1.15.9 in /docs (#435)
dependabot[bot] Oct 6, 2024
5550fa7
ci: Add CodeQL SAST workflow (#422)
yevh Oct 6, 2024
0793176
chore(deps): bump axios, @docusaurus/core and @docusaurus/preset-clas…
dependabot[bot] Oct 6, 2024
8994dad
chore: Update Go toolchain version (#439)
AntiD2ta Oct 6, 2024
f1d4580
ci: Update Github auth for CI pipeline (#440)
AntiD2ta Oct 6, 2024
4371d71
refac: Adjust lido-exporter Grafana dashboard
khalifaa55 Oct 7, 2024
d7968c3
test: update lido-exporter E2E tests (#428)
AntiD2ta Oct 8, 2024
70a9d94
feat: Add lido-exporter alert rules and alertmanager for monitoring s…
khalifaa55 Oct 10, 2024
1f69582
refac: Update Lido Mainnet relay list
khalifaa55 Oct 14, 2024
cb6e42e
tests: Add e2e test cases for lido-exporter service integration
khalifaa55 Oct 15, 2024
e3b138a
Remove mockgen generation while cloning repo (#448)
stdevMac Oct 15, 2024
58c2cc5
docs: Update cli command execution example (#451)
khalifaa55 Oct 17, 2024
d605df0
Update client images to latest versions (#450)
stdevMac Oct 17, 2024
fdd677d
Fix Besu sync-mode flag (#449)
stdevMac Oct 17, 2024
fbd89c4
Add initial nimbus implementation (#388)
stdevMac Oct 17, 2024
0554b7d
docs: Update Lido docs for tier 1 CSM integration + monitoring command
jorem321 Oct 18, 2024
7dd449e
feat: update teku and besu to latest version
stdevMac Oct 18, 2024
4c7e63e
merge main into develop (#458)
khalifaa55 Oct 21, 2024
20eb1bc
feat: Support mainnet for Lido CSM setup
khalifaa55 Oct 23, 2024
8fb6c2f
refac: Update lido-exporter image version
khalifaa55 Oct 24, 2024
6d8c249
Merge main into develop (#463)
khalifaa55 Oct 25, 2024
a078fba
refac: integrate ComposeManager into SedgeActions
khalifaa55 Oct 31, 2024
43bb602
Update image versions to latest version. (#469)
sedge-repository-dispatch-app[bot] Nov 1, 2024
4738fb3
Docs/landing (#466)
samtin0x Nov 1, 2024
dbddfd4
Update setup for op-geth and op-reth (#426)
stdevMac Nov 1, 2024
650338c
fix: revert base path (#470)
stdevMac Nov 1, 2024
1efdf84
ci: create dependency_review.yml (#474)
yevh Nov 7, 2024
a204f33
Merge main into develop (#473)
khalifaa55 Nov 7, 2024
d04b0b4
DV Setup: Charon Integration with Sedge (#368)
sugh01 Nov 14, 2024
0a6ad75
fix: monitoring stack e2e tests
khalifaa55 Nov 18, 2024
6e485d7
Update develop with hotfix (#479)
khalifaa55 Nov 20, 2024
a0d5bbb
Fix mev boost issue on Lodestar (#485)
stdevMac Dec 4, 2024
fc8ada4
docs: Update lido-status command (#488)
khalifaa55 Jan 6, 2025
299ba6f
tests: Valid tests for Lido mainnet setup (#467)
khalifaa55 Jan 20, 2025
07b369e
docs: Include note about lido-status flags (#490)
khalifaa55 Jan 20, 2025
c692dbd
Change latest flag behavior (#483)
stdevMac Jan 24, 2025
6ab41db
Update codeql.yml (#501)
yevh Feb 6, 2025
bb76123
chore: Update develop branch with release v1.8.0 (#505)
khalifaa55 Mar 25, 2025
fbe20e6
feat: Add support for Hoodi testnet (#504)
khalifaa55 Mar 26, 2025
8a20914
feat: Add support for Hoodi on Lido CSM (#506)
khalifaa55 Mar 27, 2025
e4c15ee
chore: Merge release v1.9.0 (#508)
khalifaa55 Mar 27, 2025
2e56a01
tests: Add tests for lido rewards on hoodi (#510)
khalifaa55 Apr 1, 2025
391fdba
fix: Remove cli commands bugs (#511)
khalifaa55 Apr 16, 2025
efd7c52
feat: update client images (#513)
stdevMac Apr 28, 2025
1fda2e9
feat: merge release v1.9.1 into develop (#514)
khalifaa55 May 2, 2025
c35cd60
feat: update lido csm contracts abi (#526)
khalifaa55 Oct 24, 2025
ef0a395
fix: Use correct Docker Hub secrets across workflows (#524)
derrix060 Oct 24, 2025
0ae4840
Remove deprecated Besu flag (#515)
kamilchodola Oct 24, 2025
7d21a8c
chore: upgrade client images (#527)
khalifaa55 Nov 10, 2025
779503b
feat: remove holesky support (#529)
khalifaa55 Nov 12, 2025
2de6a51
fix #521 - validator-blocker: add missing $ sign (#522)
Timotej979 Nov 12, 2025
c600274
feat: bump go version to 1.24.0 (#530)
khalifaa55 Nov 12, 2025
eafaa91
feat: bump go version to 1.24.0 in wrokflows (#531)
khalifaa55 Nov 12, 2025
d0271c7
feat: bump go version to 1.24.0 in lido dockerfile (#533)
khalifaa55 Nov 12, 2025
4a1b6cd
feat: bump lido-exporter to v1.2.0 (#532)
khalifaa55 Nov 12, 2025
6be63bd
chore: merge v1.10.0 into develop (#536)
khalifaa55 Nov 15, 2025
9f1eac0
update links in Lido CSM guide (#541)
satbalwyn-oss Jan 30, 2026
ca296d1
feat: Sedge<>Aztec integration (#540)
khalifaa55 Jan 30, 2026
39c52c9
Merge branch 'main' into release-v1.11.0
khalifaa55 Jan 30, 2026
817880d
chore: release updates
khalifaa55 Jan 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/check-version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,6 @@ jobs:
token: ${{ steps.gh-app.outputs.token }}
commit-message: Update image versions to latest version.
title: "[Update] Update image versions"
reviewers: adriantpaez, stdevMac, cbermudez97
reviewers: adriantpaez, stdevMac, cbermudez97
branch: feature/update-container-images
draft: false
1 change: 0 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,6 @@ jobs:
uses: actions/checkout@v4
with:
path: sedge
- uses: actions/setup-go@v5
- uses: actions/setup-go@v5
with:
go-version: "1.24.0"
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,3 +24,4 @@ node*/

keystore*
!cli/actions/testdata/charon/validator_keys/keystore*
!cli/testdata/cli_tests/aztec_keystore/**/keystore.json
11 changes: 10 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,16 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
## [v1.11.0] - 2026-01-30

### Added
- New command `sedge generate aztec` to generate an Aztec node setup.
- Support for Aztec Sequencer on Sepolia and Mainnet networks.
- Support for Aztec Full Node on Sepolia and Mainnet networks.
- Added Aztec Exporter to the monitoring stack.

### Changed
- Update Lido links in documentation.

## [v1.10.0] - 2025-11-12

Expand Down
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ Sedge is a one-click node setup tool for PoS network/chain validators and nodes
- [Supported networks and clients](#supported-networks-and-clients)
- [Mainnet](#mainnet)
- [Hoodi](#hoodi)
- [Hoodi](#hoodi)
- [Sepolia](#sepolia)
- [Gnosis](#gnosis)
- [Chiado (Gnosis testnet)](#chiado-gnosis-testnet)
Expand Down
15 changes: 15 additions & 0 deletions cli/actions/generation.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ import (
"os"
"path/filepath"

"github.com/NethermindEth/sedge/internal/utils"

"github.com/NethermindEth/sedge/configs"
"github.com/NethermindEth/sedge/internal/pkg/generate"
log "github.com/sirupsen/logrus"
Expand Down Expand Up @@ -53,6 +55,19 @@ func (s *sedgeActions) Generate(options GenerateOptions) (generate.GenData, erro
options.GenerationData.CustomGenesisPath = customConfigsPaths.GenesisPath
options.GenerationData.CustomDeployBlockPath = customConfigsPaths.DeployBlockPath

// If Aztec sequencer mode is used, copy the keystore.json into the generation directory
if options.GenerationData.AztecNodeType == "sequencer" && options.GenerationData.AztecSequencerKeystorePath != "" {
relKeystorePath := "./.aztec/keystore/key1.json"
absKeystorePath := filepath.Join(options.GenerationPath, ".aztec", "keystore", "key1.json")
if err := os.MkdirAll(filepath.Dir(absKeystorePath), 0o755); err != nil {
return options.GenerationData, err
}
if err := utils.CopyFile(options.GenerationData.AztecSequencerKeystorePath, absKeystorePath); err != nil {
return options.GenerationData, err
}
options.GenerationData.AztecSequencerKeystorePath = relKeystorePath
}

log.Info(configs.GeneratingDockerComposeScript)
// open output file
out, err := os.Create(filepath.Join(options.GenerationPath, configs.DefaultDockerComposeScriptName))
Expand Down
123 changes: 122 additions & 1 deletion cli/cli.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ package cli
import (
"errors"
"fmt"
"net"
"os"
"path/filepath"
"strings"
Expand Down Expand Up @@ -50,6 +51,7 @@ const (
NodeTypeExecution = "execution"
NodeTypeConsensus = "consensus"
NodeTypeValidator = "validator"
NodeTypeAztec = "aztec"

Randomize = "randomize"

Expand Down Expand Up @@ -98,6 +100,7 @@ func CliCmd(p ui.Prompter, actions actions.SedgeActions, depsMgr dependencies.De
- Execution Node
- Consensus Node
- Validator Node
- Aztec Node (execution + consensus + aztec)
- Lido CSM Node

Follow the prompts to select the options you want for your node. At the end of the process, you will
Expand All @@ -123,13 +126,81 @@ using docker compose command behind the scenes.
return setupConsensusNode(p, o, actions, depsMgr, monitoringMgr)
case NodeTypeValidator:
return setupValidatorNode(p, o, actions, depsMgr, monitoringMgr)
case NodeTypeAztec:
return setupAztecSequencerNode(p, o, actions, depsMgr, monitoringMgr)
}
return nil
},
}
return cmd
}

func setupAztecSequencerNode(p ui.Prompter, o *CliCmdOptions, a actions.SedgeActions, depsManager dependencies.DependenciesManager, monitoringMgr MonitoringManager) (err error) {
o.genData.Services = []string{"execution", "consensus", aztec}

if o.genData.Network == NetworkCustom {
if err := runPromptActions(p, o,
inputCustomNetworkConfig,
inputCustomChainSpec,
inputCustomGenesis,
inputCustomDeployBlock,
inputExecutionBootNodes,
inputConsensusBootNodes,
); err != nil {
return err
}
}

if err := runPromptActions(p, o,
selectExecutionClient,
selectConsensusClient,
selectAztecClient,
selectAztecNodeType,
); err != nil {
return err
}
// P2P IP is required for both full node and sequencer
if err := runPromptActions(p, o,
inputAztecP2pIP,
); err != nil {
return err
}
// Keystore is only required for sequencer
if o.genData.AztecNodeType == aztecNodeTypeSequencer {
if err := runPromptActions(p, o,
inputAztecSequencerKeystorePath,
); err != nil {
return err
}
}
if err := runPromptActions(p, o,
inputCheckpointSyncURL,
inputFeeRecipientNoValidator,
); err != nil {
return err
}

if err := confirmExposeAllPorts(p, o); err != nil {
return err
}
if err := setupJWT(p, o, false); err != nil {
return err
}
if err := confirmEnableMonitoring(p, o); err != nil {
return err
}

// Call generate action
o.genData, err = a.Generate(actions.GenerateOptions{
GenerationData: o.genData,
GenerationPath: o.generationPath,
})
if err != nil {
return err
}
return postGenerate(p, o, a, depsManager, monitoringMgr)
}

func setupFullNode(p ui.Prompter, o *CliCmdOptions, a actions.SedgeActions, depsManager dependencies.DependenciesManager, monitoringMgr MonitoringManager) (err error) {
o.genData.Services = []string{"execution", "consensus"}
if err := confirmWithValidator(p, o); err != nil {
Expand Down Expand Up @@ -376,6 +447,8 @@ func postGenerate(p ui.Prompter, o *CliCmdOptions, a actions.SedgeActions, depsM
services = []string{"consensus"}
case NodeTypeValidator:
services = []string{"validator"}
case NodeTypeAztec:
services = []string{"execution", "consensus", aztec}
}
run, err := p.Confirm("Run services now?", false)
if err != nil {
Expand Down Expand Up @@ -666,7 +739,7 @@ func selectNetwork(p ui.Prompter, o *CliCmdOptions) error {
}

func selectNodeType(p ui.Prompter, o *CliCmdOptions) error {
options := []string{NodeTypeFullNode, NodeTypeExecution, NodeTypeConsensus, NodeTypeValidator}
options := []string{NodeTypeFullNode, NodeTypeExecution, NodeTypeConsensus, NodeTypeValidator, NodeTypeAztec}
index, err := p.Select("Select node type", "", options)
if err != nil {
return err
Expand All @@ -675,6 +748,54 @@ func selectNodeType(p ui.Prompter, o *CliCmdOptions) error {
return nil
}

func selectAztecClient(p ui.Prompter, o *CliCmdOptions) (err error) {
selectedAztecClient := "aztec"
o.genData.AztecClient = &clients.Client{
Name: selectedAztecClient,
Type: aztec,
}
o.genData.AztecClient.SetImageOrDefault("")
return nil
}

func selectAztecNodeType(p ui.Prompter, o *CliCmdOptions) (err error) {
options := []string{aztecNodeTypeFullNode, aztecNodeTypeSequencer}
index, err := p.Select("Select aztec node type", "", options)
if err != nil {
return err
}
o.genData.AztecNodeType = options[index]
return nil
}

func inputAztecSequencerKeystorePath(p ui.Prompter, o *CliCmdOptions) (err error) {
path, err := p.InputFilePath("Aztec sequencer keystore.json path", "", true, ".json")
if err != nil {
return err
}
abs, err := loadAztecSequencerKeystore(path)
if err != nil {
return err
}
o.genData.AztecSequencerKeystorePath = abs
return nil
}

func inputAztecP2pIP(p ui.Prompter, o *CliCmdOptions) (err error) {
ip, err := p.Input("Aztec node P2P IP address", "", true, func(s string) error {
parsed := net.ParseIP(s)
if parsed == nil {
return fmt.Errorf("invalid IP address: %s", s)
}
return nil
})
if err != nil {
return err
}
o.genData.AztecP2pIp = ip
return nil
}

func selectExecutionClient(p ui.Prompter, o *CliCmdOptions) (err error) {
c := clients.ClientInfo{Network: o.genData.Network}
supportedClients, err := c.SupportedClients(execution)
Expand Down
Loading
Loading