From 20635885fe211b05b2eaf32337463dd912c22c8c Mon Sep 17 00:00:00 2001 From: Alistair Singh Date: Fri, 17 Jan 2025 01:40:45 +0200 Subject: [PATCH] add governance update 2025 --- control/preimage/src/main.rs | 40 +++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/control/preimage/src/main.rs b/control/preimage/src/main.rs index 49ec9d12b9..7b1333a52f 100644 --- a/control/preimage/src/main.rs +++ b/control/preimage/src/main.rs @@ -55,10 +55,12 @@ pub enum Command { ForceCheckpoint(ForceCheckpointArgs), /// Set the checkpoint for the beacon light client HaltBridge(HaltBridgeArgs), - /// Treasury proposal - TreasuryProposal2024(TreasuryProposal2024Args), /// Register Ether RegisterEther(RegisterEtherArgs), + /// Treasury proposal + TreasuryProposal2024(TreasuryProposal2024Args), + /// Governance update 202501 + GovUpdate202501(GovUpdate202501Args), } #[derive(Debug, Args)] @@ -220,6 +222,14 @@ pub struct TreasuryProposal2024Args { beneficiary: FixedBytes<32>, } +#[derive(Debug, Args)] +pub struct GovUpdate202501Args { + #[command(flatten)] + pricing_parameters: PricingParametersArgs, + #[command(flatten)] + register_ether: RegisterEtherArgs, +} + #[derive(Debug, Args)] pub struct RegisterEtherArgs { /// The minimum balance of the Ether asset that users are allowed to hold @@ -436,11 +446,35 @@ async fn run() -> Result<(), Box> { utility_force_batch(vec![call1, call2]) } } - Command::TreasuryProposal2024(params) => treasury_commands::treasury_proposal(¶ms), Command::RegisterEther(params) => { let (register_ether_call, set_ether_metadata_call) = commands::register_ether(¶ms); send_xcm_asset_hub(&context, vec![register_ether_call, set_ether_metadata_call]).await? } + Command::TreasuryProposal2024(params) => treasury_commands::treasury_proposal(¶ms), + Command::GovUpdate202501(GovUpdate202501Args { + pricing_parameters, + register_ether, + }) => { + let (set_pricing_parameters, set_ethereum_fee) = + commands::pricing_parameters(&context, pricing_parameters).await?; + + let bh_set_pricing_call = + send_xcm_bridge_hub(&context, vec![set_pricing_parameters]).await?; + + let ah_set_pricing_call = send_xcm_asset_hub(&context, vec![set_ethereum_fee]).await?; + + let (register_ether_call, set_ether_metadata_call) = + commands::register_ether(®ister_ether); + let ah_register_ether_call = + send_xcm_asset_hub(&context, vec![register_ether_call, set_ether_metadata_call]) + .await?; + + utility_force_batch(vec![ + bh_set_pricing_call, + ah_set_pricing_call, + ah_register_ether_call, + ]) + } }; #[cfg(any(feature = "westend", feature = "paseo"))]