Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update client versions #417

Merged
merged 8 commits into from
Dec 5, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions shared/services/config/besu-params.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import (

// Constants
const (
besuTagTest string = "hyperledger/besu:23.10.0"
besuTagProd string = "hyperledger/besu:23.10.0"
besuTagTest string = "hyperledger/besu:23.10.2"
besuTagProd string = "hyperledger/besu:23.10.2"
besuEventLogInterval int = 1000
besuMaxPeers uint16 = 25
besuStopSignal string = "SIGTERM"
Expand Down
17 changes: 17 additions & 0 deletions shared/services/config/consensus-common-config.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import (
const GraffitiID string = "graffiti"
const CheckpointSyncUrlID string = "checkpointSyncUrl"
const P2pPortID string = "p2pPort"
const P2pQuicPortID string = "p2pQuicPort"
const ApiPortID string = "apiPort"
const OpenApiPortID string = "openApiPort"
const DoppelgangerDetectionID string = "doppelgangerDetection"
Expand All @@ -16,6 +17,7 @@ const DoppelgangerDetectionID string = "doppelgangerDetection"
const defaultGraffiti string = ""
const defaultCheckpointSyncProvider string = ""
const defaultP2pPort uint16 = 9001
const defaultP2pQuicPort uint16 = 9002
const defaultBnApiPort uint16 = 5052
const defaultOpenBnApiPort string = string(config.RPC_Closed)
const defaultDoppelgangerDetection bool = true
Expand All @@ -36,6 +38,9 @@ type ConsensusCommonConfig struct {
// The port to use for gossip traffic
P2pPort config.Parameter `yaml:"p2pPort,omitempty"`

// The port to use for gossip traffic using the QUIC protocol
P2pQuicPort config.Parameter `yaml:"p2pQuicPort,omitempty"`

// The port to expose the HTTP API on
ApiPort config.Parameter `yaml:"apiPort,omitempty"`

Expand Down Expand Up @@ -91,6 +96,17 @@ func NewConsensusCommonConfig(cfg *RocketPoolConfig) *ConsensusCommonConfig {
CanBeBlank: false,
OverwriteOnUpgrade: false,
},
P2pQuicPort: config.Parameter{
ID: P2pQuicPortID,
Name: "P2P QUIC Port",
Description: "The port to use for P2P (blockchain) traffic using the QUIC protocol.",
Type: config.ParameterType_Uint16,
Default: map[config.Network]interface{}{config.Network_All: defaultP2pQuicPort},
AffectsContainers: []config.ContainerID{config.ContainerID_Eth2},
EnvironmentVariables: []string{"BN_P2P_QUIC_PORT"},
CanBeBlank: false,
OverwriteOnUpgrade: false,
},

ApiPort: config.Parameter{
ID: ApiPortID,
Expand Down Expand Up @@ -137,6 +153,7 @@ func (cfg *ConsensusCommonConfig) GetParameters() []*config.Parameter {
&cfg.Graffiti,
&cfg.CheckpointSyncProvider,
&cfg.P2pPort,
&cfg.P2pQuicPort,
&cfg.ApiPort,
&cfg.OpenApiPort,
&cfg.DoppelgangerDetection,
Expand Down
8 changes: 4 additions & 4 deletions shared/services/config/external-configs.go
Original file line number Diff line number Diff line change
Expand Up @@ -426,10 +426,10 @@ func NewExternalPrysmConfig(cfg *RocketPoolConfig) *ExternalPrysmConfig {
Description: "The tag name of the Prysm validator container you want to use from Docker Hub. This will be used for the Validator Client that Rocket Pool manages with your minipool keys.",
Type: config.ParameterType_String,
Default: map[config.Network]interface{}{
config.Network_Mainnet: getPrysmVcProdTag(),
config.Network_Prater: getPrysmVcTestTag(),
config.Network_Devnet: getPrysmVcTestTag(),
config.Network_Holesky: getPrysmVcTestTag(),
config.Network_Mainnet: prysmVcProd,
config.Network_Prater: prysmVcTest,
config.Network_Devnet: prysmVcTest,
config.Network_Holesky: prysmVcTest,
},
AffectsContainers: []config.ContainerID{config.ContainerID_Validator},
EnvironmentVariables: []string{"VC_CONTAINER_TAG"},
Expand Down
4 changes: 2 additions & 2 deletions shared/services/config/geth-params.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ import (

// Constants
const (
gethTagProd string = "ethereum/client-go:v1.13.2"
gethTagTest string = "ethereum/client-go:v1.13.2"
gethTagProd string = "ethereum/client-go:v1.13.5"
gethTagTest string = "ethereum/client-go:v1.13.5"
gethEventLogInterval int = 1000
gethStopSignal string = "SIGTERM"
)
Expand Down
4 changes: 2 additions & 2 deletions shared/services/config/nethermind-params.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ import (

// Constants
const (
nethermindTagProd string = "nethermind/nethermind:1.21.0"
nethermindTagTest string = "nethermind/nethermind:1.20.4"
nethermindTagProd string = "nethermind/nethermind:1.23.0"
nethermindTagTest string = "nethermind/nethermind:1.23.0"
nethermindEventLogInterval int = 1000
nethermindStopSignal string = "SIGTERM"
)
Expand Down
8 changes: 4 additions & 4 deletions shared/services/config/nimbus-config.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ import (

const (
// Prater
nimbusBnTagTest string = "statusim/nimbus-eth2:multiarch-v23.9.1"
nimbusVcTagTest string = "statusim/nimbus-validator-client:multiarch-v23.9.1"
nimbusBnTagTest string = "statusim/nimbus-eth2:multiarch-v23.11.0"
nimbusVcTagTest string = "statusim/nimbus-validator-client:multiarch-v23.11.0"

// Mainnet
nimbusBnTagProd string = "statusim/nimbus-eth2:multiarch-v23.9.1"
nimbusVcTagProd string = "statusim/nimbus-validator-client:multiarch-v23.9.1"
nimbusBnTagProd string = "statusim/nimbus-eth2:multiarch-v23.11.0"
nimbusVcTagProd string = "statusim/nimbus-validator-client:multiarch-v23.11.0"

defaultNimbusMaxPeersArm uint16 = 100
defaultNimbusMaxPeersAmd uint16 = 160
Expand Down
131 changes: 15 additions & 116 deletions shared/services/config/prysm-config.go
Original file line number Diff line number Diff line change
@@ -1,30 +1,17 @@
package config

import (
"fmt"
"runtime"

"github.com/rocket-pool/smartnode/shared/types/config"
"github.com/rocket-pool/smartnode/shared/utils/sys"
)

const (
prysmBnTagAmd64PortableTest string = "rocketpool/prysm:0bd2326"
prysmVcTagAmd64PortableTest string = "rocketpool/prysm:0bd2326"
prysmTagArm64PortableTest string = "rocketpool/prysm:0bd2326"
prysmBnTagAmd64ModernTest string = "rocketpool/prysm:0bd2326" //"prysmaticlabs/prysm-beacon-chain:HEAD-58df1f1-debug"
prysmVcTagAmd64ModernTest string = "rocketpool/prysm:0bd2326" //"prysmaticlabs/prysm-validator:HEAD-58df1f1-debug"
prysmTagArm64ModernTest string = "rocketpool/prysm:0bd2326"

prysmBnTagAmd64PortableProd string = "rocketpool/prysm:v4.0.8-portable"
prysmVcTagAmd64PortableProd string = "rocketpool/prysm:v4.0.8-portable"
prysmTagArm64PortableProd string = "rocketpool/prysm:v4.0.8-portable"
prysmBnTagAmd64ModernProd string = "rocketpool/prysm:v4.0.8" //"prysmaticlabs/prysm-beacon-chain:HEAD-58df1f1-debug"
prysmVcTagAmd64ModernProd string = "rocketpool/prysm:v4.0.8" //"prysmaticlabs/prysm-validator:HEAD-58df1f1-debug"
prysmTagArm64ModernProd string = "rocketpool/prysm:v4.0.8"
defaultPrysmRpcPort uint16 = 5053
defaultPrysmOpenRpcPort string = string(config.RPC_Closed)
defaultPrysmMaxPeers uint16 = 45
prysmBnTest string = "rocketpool/prysm:v4.1.1"
prysmBnProd string = "rocketpool/prysm:v4.1.1"
prysmVcTest string = "rocketpool/prysm:v4.1.1"
prysmVcProd string = "rocketpool/prysm:v4.1.1"
defaultPrysmRpcPort uint16 = 5053
defaultPrysmOpenRpcPort string = string(config.RPC_Closed)
defaultPrysmMaxPeers uint16 = 45
)

// Configuration for Prysm
Expand Down Expand Up @@ -108,10 +95,10 @@ func NewPrysmConfig(cfg *RocketPoolConfig) *PrysmConfig {
Description: "The tag name of the Prysm Beacon Node container you want to use on Docker Hub.",
Type: config.ParameterType_String,
Default: map[config.Network]interface{}{
config.Network_Mainnet: getPrysmBnProdTag(),
config.Network_Prater: getPrysmBnTestTag(),
config.Network_Devnet: getPrysmBnTestTag(),
config.Network_Holesky: getPrysmBnTestTag(),
config.Network_Mainnet: prysmBnProd,
config.Network_Prater: prysmBnTest,
config.Network_Devnet: prysmBnTest,
config.Network_Holesky: prysmBnTest,
},
AffectsContainers: []config.ContainerID{config.ContainerID_Eth2},
EnvironmentVariables: []string{"BN_CONTAINER_TAG"},
Expand All @@ -125,10 +112,10 @@ func NewPrysmConfig(cfg *RocketPoolConfig) *PrysmConfig {
Description: "The tag name of the Prysm Validator Client container you want to use on Docker Hub.",
Type: config.ParameterType_String,
Default: map[config.Network]interface{}{
config.Network_Mainnet: getPrysmVcProdTag(),
config.Network_Prater: getPrysmVcTestTag(),
config.Network_Devnet: getPrysmVcTestTag(),
config.Network_Holesky: getPrysmVcTestTag(),
config.Network_Mainnet: prysmVcProd,
config.Network_Prater: prysmVcTest,
config.Network_Devnet: prysmVcTest,
config.Network_Holesky: prysmVcTest,
},
AffectsContainers: []config.ContainerID{config.ContainerID_Validator},
EnvironmentVariables: []string{"VC_CONTAINER_TAG"},
Expand Down Expand Up @@ -162,94 +149,6 @@ func NewPrysmConfig(cfg *RocketPoolConfig) *PrysmConfig {
}
}

// Get the container tag for the Prysm BN based on the current architecture
func getPrysmBnProdTag() string {
missingFeatures := sys.GetMissingModernCpuFeatures()
if len(missingFeatures) > 0 {
if runtime.GOARCH == "arm64" {
return prysmTagArm64PortableProd
} else if runtime.GOARCH == "amd64" {
return prysmBnTagAmd64PortableProd
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
} else {
if runtime.GOARCH == "arm64" {
return prysmTagArm64ModernProd
} else if runtime.GOARCH == "amd64" {
return prysmBnTagAmd64ModernProd
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
}
}

// Get the container tag for the Prysm BN based on the current architecture
func getPrysmBnTestTag() string {
missingFeatures := sys.GetMissingModernCpuFeatures()
if len(missingFeatures) > 0 {
if runtime.GOARCH == "arm64" {
return prysmTagArm64PortableTest
} else if runtime.GOARCH == "amd64" {
return prysmBnTagAmd64PortableTest
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
} else {
if runtime.GOARCH == "arm64" {
return prysmTagArm64ModernTest
} else if runtime.GOARCH == "amd64" {
return prysmBnTagAmd64ModernTest
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
}
}

// Get the container tag for the Prysm VC based on the current architecture
func getPrysmVcProdTag() string {
missingFeatures := sys.GetMissingModernCpuFeatures()
if len(missingFeatures) > 0 {
if runtime.GOARCH == "arm64" {
return prysmTagArm64PortableProd
} else if runtime.GOARCH == "amd64" {
return prysmVcTagAmd64PortableProd
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
} else {
if runtime.GOARCH == "arm64" {
return prysmTagArm64ModernProd
} else if runtime.GOARCH == "amd64" {
return prysmVcTagAmd64ModernProd
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
}
}

// Get the container tag for the Prysm VC based on the current architecture
func getPrysmVcTestTag() string {
missingFeatures := sys.GetMissingModernCpuFeatures()
if len(missingFeatures) > 0 {
if runtime.GOARCH == "arm64" {
return prysmTagArm64PortableTest
} else if runtime.GOARCH == "amd64" {
return prysmVcTagAmd64PortableTest
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
} else {
if runtime.GOARCH == "arm64" {
return prysmTagArm64ModernTest
} else if runtime.GOARCH == "amd64" {
return prysmVcTagAmd64ModernTest
} else {
panic(fmt.Sprintf("Prysm doesn't support architecture %s", runtime.GOARCH))
}
}
}

// Get the parameters for this config
func (cfg *PrysmConfig) GetParameters() []*config.Parameter {
return []*config.Parameter{
Expand Down
4 changes: 2 additions & 2 deletions shared/services/config/teku-config.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import (
)

const (
tekuTagTest string = "consensys/teku:23.10.0"
tekuTagProd string = "consensys/teku:23.10.0"
tekuTagTest string = "consensys/teku:23.11.0"
tekuTagProd string = "consensys/teku:23.11.0"
defaultTekuMaxPeers uint16 = 100
)

Expand Down
2 changes: 1 addition & 1 deletion shared/version.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package shared

const RocketPoolVersion string = "1.11.0"
const RocketPoolVersion string = "1.11.1"

const Logo string = `______ _ _ ______ _
| ___ \ | | | | | ___ \ | |
Expand Down