mirror of
https://github.com/paradigmxyz/reth.git
synced 2026-04-30 03:01:58 -04:00
fix: propagate --sequencer-headers to SequencerClient (#16474)
This commit is contained in:
@@ -314,20 +314,22 @@ pub struct OpEthApiBuilder<NetworkT = Optimism> {
|
||||
/// Sequencer client, configured to forward submitted transactions to sequencer of given OP
|
||||
/// network.
|
||||
sequencer_url: Option<String>,
|
||||
/// Headers to use for the sequencer client requests.
|
||||
sequencer_headers: Vec<String>,
|
||||
/// Marker for network types.
|
||||
_nt: PhantomData<NetworkT>,
|
||||
}
|
||||
|
||||
impl<NetworkT> Default for OpEthApiBuilder<NetworkT> {
|
||||
fn default() -> Self {
|
||||
Self { sequencer_url: None, _nt: PhantomData }
|
||||
Self { sequencer_url: None, sequencer_headers: Vec::new(), _nt: PhantomData }
|
||||
}
|
||||
}
|
||||
|
||||
impl<NetworkT> OpEthApiBuilder<NetworkT> {
|
||||
/// Creates a [`OpEthApiBuilder`] instance from core components.
|
||||
pub const fn new() -> Self {
|
||||
Self { sequencer_url: None, _nt: PhantomData }
|
||||
Self { sequencer_url: None, sequencer_headers: Vec::new(), _nt: PhantomData }
|
||||
}
|
||||
|
||||
/// With a [`SequencerClient`].
|
||||
@@ -335,6 +337,12 @@ impl<NetworkT> OpEthApiBuilder<NetworkT> {
|
||||
self.sequencer_url = sequencer_url;
|
||||
self
|
||||
}
|
||||
|
||||
/// With headers to use for the sequencer client requests.
|
||||
pub fn with_sequencer_headers(mut self, sequencer_headers: Vec<String>) -> Self {
|
||||
self.sequencer_headers = sequencer_headers;
|
||||
self
|
||||
}
|
||||
}
|
||||
|
||||
impl<N, NetworkT> EthApiBuilder<N> for OpEthApiBuilder<NetworkT>
|
||||
@@ -346,7 +354,7 @@ where
|
||||
type EthApi = OpEthApi<N, NetworkT>;
|
||||
|
||||
async fn build_eth_api(self, ctx: EthApiCtx<'_, N>) -> eyre::Result<Self::EthApi> {
|
||||
let Self { sequencer_url, .. } = self;
|
||||
let Self { sequencer_url, sequencer_headers, .. } = self;
|
||||
let eth_api = reth_rpc::EthApiBuilder::new(
|
||||
ctx.components.provider().clone(),
|
||||
ctx.components.pool().clone(),
|
||||
@@ -365,7 +373,7 @@ where
|
||||
|
||||
let sequencer_client = if let Some(url) = sequencer_url {
|
||||
Some(
|
||||
SequencerClient::new(&url)
|
||||
SequencerClient::new_with_headers(&url, sequencer_headers)
|
||||
.await
|
||||
.wrap_err_with(|| "Failed to init sequencer client with: {url}")?,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user