From d234c3950bdfcb9d3acd94f8f7bd6378137ebd1a Mon Sep 17 00:00:00 2001 From: Fredrik Simonsson Date: Tue, 5 Dec 2023 14:42:04 +0900 Subject: [PATCH] Check versions in storage migration --- runtimes/eden/src/migrations.rs | 55 +++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/runtimes/eden/src/migrations.rs b/runtimes/eden/src/migrations.rs index aa4a9121897..b2475bec5d6 100644 --- a/runtimes/eden/src/migrations.rs +++ b/runtimes/eden/src/migrations.rs @@ -102,13 +102,68 @@ where #[cfg(feature = "try-runtime")] fn pre_upgrade() -> Result, TryRuntimeError> { + use frame_support::ensure; + log::info!("Pre upgrade"); + + ensure!( + StorageVersion::get::>() == 0, + TryRuntimeError::Other("preimage storage version is not 0") + ); + ensure!( + StorageVersion::get::>() == 0, + TryRuntimeError::Other("pallet_xcm storage version is not 0") + ); + ensure!( + StorageVersion::get::>() == 0, + TryRuntimeError::Other("pallet_scheduler storage version is not 0") + ); + ensure!( + StorageVersion::get::>() == 0, + TryRuntimeError::Other("pallet_collective storage version is not 0") + ); + ensure!( + StorageVersion::get::>() == 0, + TryRuntimeError::Other("pallet_membership storage version is not 0") + ); + ensure!( + StorageVersion::get::>() == 0, + TryRuntimeError::Other("pallet_balances storage version is not 0") + ); + Ok(vec![]) } #[cfg(feature = "try-runtime")] fn post_upgrade(_state: Vec) -> Result<(), TryRuntimeError> { + use frame_support::ensure; + log::info!("Post upgrade {_state:?}"); + ensure!( + StorageVersion::get::>() == 1, + TryRuntimeError::Other("preimage post upgrade storage version is not 1") + ); + ensure!( + StorageVersion::get::>() == 1, + TryRuntimeError::Other("pallet_xcm post upgrade storage version is not 1") + ); + ensure!( + StorageVersion::get::>() == 4, + TryRuntimeError::Other("pallet_scheduler post upgrade storage version is not 4") + ); + ensure!( + StorageVersion::get::>() == 4, + TryRuntimeError::Other("pallet_collective post upgrade storage version is not 4") + ); + ensure!( + StorageVersion::get::>() == 4, + TryRuntimeError::Other("pallet_membership post upgrade storage version is not 4") + ); + ensure!( + StorageVersion::get::>() == 1, + TryRuntimeError::Other("pallet_balances post upgrade storage version is not 1") + ); + Ok(()) } }