diff --git a/polkadot/Cargo.lock b/polkadot/Cargo.lock index 51842a24c2..995711faba 100644 --- a/polkadot/Cargo.lock +++ b/polkadot/Cargo.lock @@ -7919,6 +7919,7 @@ dependencies = [ "pallet-membership", "pallet-mmr", "pallet-mmr-primitives", + "pallet-multisig", "pallet-offences", "pallet-proxy", "pallet-session", diff --git a/polkadot/runtime/rococo/Cargo.toml b/polkadot/runtime/rococo/Cargo.toml index 240627987f..6ad3d89a6d 100644 --- a/polkadot/runtime/rococo/Cargo.toml +++ b/polkadot/runtime/rococo/Cargo.toml @@ -44,6 +44,7 @@ pallet-indices = { git = "https://github.com/paritytech/substrate", branch = "ma pallet-membership = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-mmr = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-mmr-primitives = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-multisig = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-session = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } @@ -150,6 +151,7 @@ std = [ "xcm-builder/std", "pallet-xcm/std", "log/std", + "pallet-multisig/std", ] # When enabled, the runtime API will not be build. # @@ -173,6 +175,7 @@ runtime-benchmarks = [ "pallet-timestamp/runtime-benchmarks", "pallet-xcm/runtime-benchmarks", "xcm-builder/runtime-benchmarks", + "pallet-multisig/runtime-benchmarks", "frame-benchmarking", "hex-literal" ] @@ -197,4 +200,5 @@ try-runtime = [ "pallet-timestamp/try-runtime", "pallet-transaction-payment/try-runtime", "runtime-common/try-runtime", + "pallet-multisig/try-runtime", ] diff --git a/polkadot/runtime/rococo/src/lib.rs b/polkadot/runtime/rococo/src/lib.rs index 3cb61efd3c..99a8b33a7b 100644 --- a/polkadot/runtime/rococo/src/lib.rs +++ b/polkadot/runtime/rococo/src/lib.rs @@ -251,9 +251,11 @@ construct_runtime! { Utility: pallet_utility::{Pallet, Call, Event} = 90, Proxy: pallet_proxy::{Pallet, Call, Storage, Event} = 91, + Multisig: pallet_multisig::{Pallet, Call, Storage, Event}, // Pallet for sending XCM. XcmPallet: pallet_xcm::{Pallet, Call, Storage, Event, Origin} = 99, + } } @@ -1082,7 +1084,7 @@ impl InstanceFilter for ProxyType { Call::Auctions { .. } | Call::Crowdloan { .. } | Call::Registrar { .. } | - Call::Slots { .. } + Call::Multisig(..) | Call::Slots { .. } ), } } @@ -1139,6 +1141,24 @@ impl pallet_membership::Config for Runtime { type WeightInfo = (); } +parameter_types! { + // One storage item; key size is 32; value is size 4+4+16+32 bytes = 56 bytes. + pub const DepositBase: Balance = deposit(1, 88); + // Additional storage item size of 32 bytes. + pub const DepositFactor: Balance = deposit(0, 32); + pub const MaxSignatories: u16 = 100; +} + +impl pallet_multisig::Config for Runtime { + type Event = Event; + type Call = Call; + type Currency = Balances; + type DepositBase = DepositBase; + type DepositFactor = DepositFactor; + type MaxSignatories = MaxSignatories; + type WeightInfo = (); +} + #[cfg(not(feature = "disable-runtime-api"))] sp_api::impl_runtime_apis! { impl sp_api::Core for Runtime {