diff --git a/cli/src/cmd/forge/script/broadcast.rs b/cli/src/cmd/forge/script/broadcast.rs index 462f3d72e849f..b0f4d9068c35d 100644 --- a/cli/src/cmd/forge/script/broadcast.rs +++ b/cli/src/cmd/forge/script/broadcast.rs @@ -113,8 +113,12 @@ impl ScriptArgs { TypedTransaction::Eip1559(ref mut inner) => { let eip1559_fees = eip1559_fees.expect("Could not get eip1559 fee estimation."); + if let Some(priority_gas_price) = self.priority_gas_price { + inner.max_priority_fee_per_gas = Some(priority_gas_price); + } else { + inner.max_priority_fee_per_gas = Some(eip1559_fees.1); + } inner.max_fee_per_gas = Some(eip1559_fees.0); - inner.max_priority_fee_per_gas = Some(eip1559_fees.1); } } } diff --git a/cli/src/cmd/forge/script/mod.rs b/cli/src/cmd/forge/script/mod.rs index a780e36b7658e..ba6c6ad113fcf 100644 --- a/cli/src/cmd/forge/script/mod.rs +++ b/cli/src/cmd/forge/script/mod.rs @@ -116,6 +116,15 @@ pub struct ScriptArgs { )] pub sig: String, + /// Max priority fee per gas for EIP1559 transactions. + #[clap( + long, + env = "ETH_PRIORITY_GAS_PRICE", + value_parser = parse_ether_value, + value_name = "PRICE" + )] + pub priority_gas_price: Option, + /// Use legacy transactions instead of EIP1559 ones. /// /// This is auto-enabled for common networks without EIP1559.