Only use authenticated endpoints during EE integration testing (#3253)
## Issue Addressed Failures in our CI integration tests for Geth. ## Proposed Changes Only connect to the authenticated execution endpoints during execution tests. This is necessary now that it is impossible to connect to the `engine` api on an unauthenticated endpoint. See https://github.com/ethereum/go-ethereum/pull/24997 ## Additional Info As these tests break semi-regularly, I have kept logs enabled to ease future debugging. I've also updated the Nethermind tests, although these weren't broken. This should future-proof us if Nethermind decides to follow suit with Geth
This commit is contained in:
parent
cfd26d25e0
commit
9c429d0764
@ -22,7 +22,6 @@ pub struct ExecutionEngine<E> {
|
|||||||
engine: E,
|
engine: E,
|
||||||
#[allow(dead_code)]
|
#[allow(dead_code)]
|
||||||
datadir: TempDir,
|
datadir: TempDir,
|
||||||
http_port: u16,
|
|
||||||
http_auth_port: u16,
|
http_auth_port: u16,
|
||||||
child: Child,
|
child: Child,
|
||||||
}
|
}
|
||||||
@ -46,16 +45,11 @@ impl<E: GenericExecutionEngine> ExecutionEngine<E> {
|
|||||||
Self {
|
Self {
|
||||||
engine,
|
engine,
|
||||||
datadir,
|
datadir,
|
||||||
http_port,
|
|
||||||
http_auth_port,
|
http_auth_port,
|
||||||
child,
|
child,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn http_url(&self) -> SensitiveUrl {
|
|
||||||
SensitiveUrl::parse(&format!("http://127.0.0.1:{}", self.http_port)).unwrap()
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn http_auth_url(&self) -> SensitiveUrl {
|
pub fn http_auth_url(&self) -> SensitiveUrl {
|
||||||
SensitiveUrl::parse(&format!("http://127.0.0.1:{}", self.http_auth_port)).unwrap()
|
SensitiveUrl::parse(&format!("http://127.0.0.1:{}", self.http_auth_port)).unwrap()
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,7 @@ use nethermind::NethermindEngine;
|
|||||||
use test_rig::TestRig;
|
use test_rig::TestRig;
|
||||||
|
|
||||||
/// Set to `false` to send logs to the console during tests. Logs are useful when debugging.
|
/// Set to `false` to send logs to the console during tests. Logs are useful when debugging.
|
||||||
const SUPPRESS_LOGS: bool = true;
|
const SUPPRESS_LOGS: bool = false;
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
if cfg!(windows) {
|
if cfg!(windows) {
|
||||||
|
@ -75,7 +75,7 @@ impl GenericExecutionEngine for NethermindEngine {
|
|||||||
|
|
||||||
fn start_client(
|
fn start_client(
|
||||||
datadir: &TempDir,
|
datadir: &TempDir,
|
||||||
http_port: u16,
|
_http_port: u16,
|
||||||
http_auth_port: u16,
|
http_auth_port: u16,
|
||||||
jwt_secret_path: PathBuf,
|
jwt_secret_path: PathBuf,
|
||||||
) -> Child {
|
) -> Child {
|
||||||
@ -89,11 +89,14 @@ impl GenericExecutionEngine for NethermindEngine {
|
|||||||
.arg("--Merge.TerminalTotalDifficulty")
|
.arg("--Merge.TerminalTotalDifficulty")
|
||||||
.arg("0")
|
.arg("0")
|
||||||
.arg("--JsonRpc.AdditionalRpcUrls")
|
.arg("--JsonRpc.AdditionalRpcUrls")
|
||||||
.arg(format!("http://localhost:{}|http;ws|net;eth;subscribe;engine;web3;client|no-auth,http://localhost:{}|http;ws|net;eth;subscribe;engine;web3;client", http_port, http_auth_port))
|
.arg(format!(
|
||||||
|
"http://localhost:{}|http;ws|net;eth;subscribe;engine;web3;client",
|
||||||
|
http_auth_port
|
||||||
|
))
|
||||||
.arg("--JsonRpc.EnabledModules")
|
.arg("--JsonRpc.EnabledModules")
|
||||||
.arg("net,eth,subscribe,web3,admin,engine")
|
.arg("net,eth,subscribe,web3,admin,engine")
|
||||||
.arg("--JsonRpc.Port")
|
.arg("--JsonRpc.Port")
|
||||||
.arg(http_port.to_string())
|
.arg(http_auth_port.to_string())
|
||||||
.arg("--Network.DiscoveryPort")
|
.arg("--Network.DiscoveryPort")
|
||||||
.arg(network_port.to_string())
|
.arg(network_port.to_string())
|
||||||
.arg("--Network.P2PPort")
|
.arg("--Network.P2PPort")
|
||||||
|
@ -68,7 +68,7 @@ impl<E: GenericExecutionEngine> TestRig<E> {
|
|||||||
|
|
||||||
let ee_b = {
|
let ee_b = {
|
||||||
let execution_engine = ExecutionEngine::new(generic_engine);
|
let execution_engine = ExecutionEngine::new(generic_engine);
|
||||||
let urls = vec![execution_engine.http_url()];
|
let urls = vec![execution_engine.http_auth_url()];
|
||||||
|
|
||||||
let config = execution_layer::Config {
|
let config = execution_layer::Config {
|
||||||
execution_endpoints: urls,
|
execution_endpoints: urls,
|
||||||
|
Loading…
Reference in New Issue
Block a user