diff --git a/CHANGELOG.md b/CHANGELOG.md
index 378d9d2fa..99c838d67 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,6 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
+## [v1.2.3] - 2023-08-16
+
+### Added
+
+- Support for Erigon in Gnosis.
+
+### Fixed
+
+- Issue in Chiado templates with checkpoint sync.
+- Fix show error when using containers tags.
+
+### Changed
+
+- Update client images.
+- Moved xdai to gnosis on Nethermind config.
+
## [v1.2.2] - 2023-07-24
### Changed
@@ -15,7 +31,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed
-- Issue in Chiado templates with checkpoint sync
+- Issue in Chiado templates with checkpoint sync.
- Fix show error when using containers tags.
- Fix chiado checkpoint sync url.
diff --git a/README.md b/README.md
index 6b542c397..29901de5e 100644
--- a/README.md
+++ b/README.md
@@ -158,11 +158,11 @@ Users acknowledge that no warranty is being made of a successful installation. S
### Gnosis
-| Execution | Consensus | Validator |
-| ------------- | ---------- | ---------- |
-| Nethermind | Lighthouse | Lighthouse |
-| Erigon (soon) | Lodestar | Lodestar |
-| | Teku | Teku |
+| Execution | Consensus | Validator |
+|-------------| ---------- | ---------- |
+| Nethermind | Lighthouse | Lighthouse |
+| Erigon | Lodestar | Lodestar |
+| | Teku | Teku |
### Chiado (Gnosis testnet)
@@ -245,7 +245,7 @@ The following roadmap covers the main features and ideas we want to implement bu
### Version 1.X (Current)
-- [ ] Support Erigon on Gnosis
+- [x] Support Erigon on Gnosis
- [ ] Include monitoring tool for alerting, tracking validator balance, and tracking sync progress and status of nodes
- [ ] More tests!!!
- [ ] Support for Nimbus client
diff --git a/configs/client_images.yaml b/configs/client_images.yaml
index d752b6875..b3c119b36 100644
--- a/configs/client_images.yaml
+++ b/configs/client_images.yaml
@@ -1,7 +1,7 @@
execution:
geth:
name: ethereum/client-go
- version: v1.12.0
+ version: v1.12.1
besu:
name: hyperledger/besu
version: 23.4.4
@@ -20,7 +20,7 @@ consensus:
version: v1.9.2
teku:
name: consensys/teku
- version: 23.6.2
+ version: 23.8.0
prysm:
name: gcr.io/prysmaticlabs/prysm/beacon-chain
version: v4.0.7
@@ -33,7 +33,7 @@ validator:
version: v1.9.2
teku:
name: consensys/teku
- version: 23.6.2
+ version: 23.8.0
prysm:
name: gcr.io/prysmaticlabs/prysm/validator
version: v4.0.7
diff --git a/docs/docs/quickstart/complete-guide.mdx b/docs/docs/quickstart/complete-guide.mdx
index 702e23ffe..a5d5f08da 100644
--- a/docs/docs/quickstart/complete-guide.mdx
+++ b/docs/docs/quickstart/complete-guide.mdx
@@ -41,14 +41,14 @@ want to use another installation method:
```
- curl -L https://github.com/NethermindEth/sedge/releases/download/v1.2.2/sedge-v1.2.2-linux-amd64 --output sedge
+ curl -L https://github.com/NethermindEth/sedge/releases/download/v1.2.3/sedge-v1.2.3-linux-amd64 --output sedge
```
```
- wget https://github.com/NethermindEth/sedge/releases/download/v1.2.2/sedge-v1.2.2-linux-amd64 -O sedge
+ wget https://github.com/NethermindEth/sedge/releases/download/v1.2.3/sedge-v1.2.3-linux-amd64 -O sedge
```
diff --git a/internal/pkg/clients/clients_test.go b/internal/pkg/clients/clients_test.go
index fbd185682..ddb40428b 100644
--- a/internal/pkg/clients/clients_test.go
+++ b/internal/pkg/clients/clients_test.go
@@ -30,7 +30,7 @@ func TestSupportedClients(t *testing.T) {
want []string
isErr bool
}{
- {"execution", "gnosis", []string{"nethermind"}, false},
+ {"execution", "gnosis", []string{"nethermind", "erigon"}, false},
{"consensus", "gnosis", utils.Filter(AllClients["consensus"], func(c string) bool { return c != "prysm" }), false},
{"execution", "mainnet", AllClients["execution"], false},
{"consensus", "mainnet", AllClients["consensus"], false},
@@ -132,7 +132,7 @@ func TestClients(t *testing.T) {
map[string][]string{
"validator": {"lighthouse", "teku", "lodestar"},
"consensus": {"lighthouse", "teku", "lodestar"},
- "execution": {"nethermind"},
+ "execution": {"nethermind", "erigon"},
},
[]string{"consensus", "execution", "validator"},
"gnosis",
diff --git a/internal/pkg/generate/envs_test.go b/internal/pkg/generate/envs_test.go
index 96858a24d..75a1f7b06 100644
--- a/internal/pkg/generate/envs_test.go
+++ b/internal/pkg/generate/envs_test.go
@@ -178,6 +178,26 @@ func TestGenerateEnvFile(t *testing.T) {
"KEYSTORE_DIR": "./keystore",
},
},
+ {
+ name: "Check Erigon for Gnosis network",
+ data: &GenData{
+ ExecutionClient: &clients.Client{Name: "erigon"},
+ Network: "gnosis",
+ },
+ fieldsToCheck: map[string]string{
+ "EL_NETWORK": "gnosis",
+ },
+ },
+ {
+ name: "Check Nethermind for Gnosis network",
+ data: &GenData{
+ ExecutionClient: &clients.Client{Name: "nethermind"},
+ Network: "gnosis",
+ },
+ fieldsToCheck: map[string]string{
+ "EL_NETWORK": "gnosis",
+ },
+ },
{
name: "Check wrong network",
data: &GenData{
@@ -203,7 +223,6 @@ func TestGenerateEnvFile(t *testing.T) {
ConsensusClient: &clients.Client{Name: "teku"},
},
fieldsToCheck: map[string]string{
- "EL_NETWORK": "xdai",
"CL_NETWORK": "gnosis",
},
},
diff --git a/internal/pkg/generate/generate_scripts_test.go b/internal/pkg/generate/generate_scripts_test.go
index 10b44bcf7..b1720eb23 100644
--- a/internal/pkg/generate/generate_scripts_test.go
+++ b/internal/pkg/generate/generate_scripts_test.go
@@ -245,12 +245,15 @@ func defaultFunc(t *testing.T, data *GenData, compose, env io.Reader) error {
envData := retrieveEnvData(t, env)
if data.Network == "gnosis" {
// Check that the right network is set
- assert.Contains(t, envData, "EL_NETWORK")
- assert.Equal(t, "xdai", clean(envData["EL_NETWORK"]))
-
- assert.Contains(t, envData, "CL_NETWORK")
- assert.Equal(t, "gnosis", clean(envData["CL_NETWORK"]))
+ if data.ExecutionClient != nil {
+ assert.Contains(t, envData, "EL_NETWORK")
+ assert.Equal(t, "gnosis", clean(envData["EL_NETWORK"]))
+ }
+ if data.ConsensusClient != nil {
+ assert.Contains(t, envData, "CL_NETWORK")
+ assert.Equal(t, "gnosis", clean(envData["CL_NETWORK"]))
+ }
} else {
// Check that the right network is set
assert.Contains(t, envData, "NETWORK")
diff --git a/internal/utils/testdata/remote_files/good_file/config.yml b/internal/utils/testdata/remote_files/good_file/config.yml
index 9d19bf432..1eb1448f3 100644
--- a/internal/utils/testdata/remote_files/good_file/config.yml
+++ b/internal/utils/testdata/remote_files/good_file/config.yml
@@ -53,7 +53,7 @@ TARGET_AGGREGATORS_PER_COMMITTEE: 16
RANDOM_SUBNETS_PER_VALIDATOR: 1
# 2**8 (= 256)
EPOCHS_PER_RANDOM_SUBNET_SUBSCRIPTION: 256
-# 6 (estimate from xDai mainnet)
+# 6 (estimate from Gnosis mainnet)
SECONDS_PER_ETH1_BLOCK: 6
# Gwei values
diff --git a/templates/envs/gnosis/env_base.tmpl b/templates/envs/gnosis/env_base.tmpl
index 0ac010be0..f921ef97a 100644
--- a/templates/envs/gnosis/env_base.tmpl
+++ b/templates/envs/gnosis/env_base.tmpl
@@ -1,7 +1,7 @@
{{/* docker-compose_base.tmpl */}}
{{ define "env" }}
# --- Global configuration ---
-EL_NETWORK=xdai
+EL_NETWORK=gnosis
CL_NETWORK=gnosis
{{if .FeeRecipient}}
FEE_RECIPIENT={{.FeeRecipient}}{{end}}
diff --git a/templates/envs/gnosis/execution/erigon.tmpl b/templates/envs/gnosis/execution/erigon.tmpl
new file mode 100644
index 000000000..d59695f92
--- /dev/null
+++ b/templates/envs/gnosis/execution/erigon.tmpl
@@ -0,0 +1,7 @@
+{{/* erigon.tmpl */}}
+{{ define "execution" }}
+# --- Execution Layer - Execution Node - configuration ---
+EC_IMAGE_VERSION={{.ElImage}}
+EC_DATA_DIR={{.ElDataDir}}
+EC_JWT_SECRET_PATH={{.JWTSecretPath}}
+{{ end }}
diff --git a/templates/envs/gnosis/execution/nethermind.tmpl b/templates/envs/gnosis/execution/nethermind.tmpl
index 25a605fbc..d019a6824 100644
--- a/templates/envs/gnosis/execution/nethermind.tmpl
+++ b/templates/envs/gnosis/execution/nethermind.tmpl
@@ -1,5 +1,7 @@
{{/* nethermind.tmpl */}}
{{ define "execution" }}
+EL_NETWORK=gnosis
+
# --- Execution Layer - Execution Node - configuration ---
EC_IMAGE_VERSION={{.ElImage}}
NETHERMIND_LOG_LEVEL=INFO