diff --git a/node/src/chain_spec/g1.rs b/node/src/chain_spec/g1.rs index 49ef60461c4feb9a10cb9dd2a6f0af36a58a7b8e..b57431297c932a04895ec50135c70ed5e1bdbb77 100644 --- a/node/src/chain_spec/g1.rs +++ b/node/src/chain_spec/g1.rs @@ -110,7 +110,7 @@ fn genesis_data_to_g1_genesis_conf( initial_monetary_mass, memberships, parameters: _, - common_parameters: _, + common_parameters, session_keys_map, initial_smiths, sudo_key, @@ -154,7 +154,7 @@ fn genesis_data_to_g1_genesis_conf( name, owner_key, status, - expires_on, + expires_on: _, revokes_on, }| GenesisIdty { index: idty_index, @@ -168,11 +168,9 @@ fn genesis_data_to_g1_genesis_conf( IdtyStatus::Unconfirmed | IdtyStatus::Unvalidated => { panic!("Unconfirmed or Unvalidated identity in genesis") } - IdtyStatus::Member => expires_on.expect("must have expires_on set"), - IdtyStatus::Revoked => 0, - IdtyStatus::NotMember => { - revokes_on.expect("must have revokes_on set") - } + IdtyStatus::Member => 0, + IdtyStatus::Revoked => common_parameters.as_ref().expect("must have common_parameters").identity_deletion_period, + IdtyStatus::NotMember => revokes_on.expect("must have revokes_on set"), }, status, }, diff --git a/node/src/chain_spec/gdev.rs b/node/src/chain_spec/gdev.rs index 57a3e530613fd7dfc3ddf8d88160759711dc4427..c69f6101d5866226261e83dd237e12483fa3d01b 100644 --- a/node/src/chain_spec/gdev.rs +++ b/node/src/chain_spec/gdev.rs @@ -81,6 +81,7 @@ fn get_parameters(parameters_from_file: &Option<GenesisParameters>) -> CommonPar identity_change_owner_key_period: parameters::ChangeOwnerKeyPeriod::get(), identity_idty_creation_period: parameters_from_file.idty_creation_period, identity_autorevocation_period: parameters::AutorevocationPeriod::get(), + identity_deletion_period: parameters::DeletionPeriod::get(), membership_membership_period: parameters_from_file.membership_period, membership_membership_renewal_period: parameters_from_file.membership_renewal_period, cert_max_by_issuer: parameters_from_file.cert_max_by_issuer, @@ -233,7 +234,7 @@ fn genesis_data_to_gdev_genesis_conf( initial_monetary_mass, memberships, parameters, - common_parameters: _, + common_parameters, session_keys_map, initial_smiths, sudo_key, @@ -280,7 +281,7 @@ fn genesis_data_to_gdev_genesis_conf( name, owner_key, status, - expires_on, + expires_on: _, revokes_on, }| GenesisIdty { index: idty_index, @@ -292,13 +293,11 @@ fn genesis_data_to_gdev_genesis_conf( owner_key, next_scheduled: match status { IdtyStatus::Unconfirmed | IdtyStatus::Unvalidated => { - panic!("Unconfirmed or Unvalidated identity in genesis") - } - IdtyStatus::Member => expires_on.expect("must have expires_on set"), - IdtyStatus::Revoked => 0, - IdtyStatus::NotMember => { - revokes_on.expect("must have revokes_on set") + panic!("Unconfirmed or Unvalidated or Revoked identity in genesis") } + IdtyStatus::Member => 0, + IdtyStatus::Revoked => common_parameters.as_ref().expect("must have common_parameters").identity_deletion_period, + IdtyStatus::NotMember => revokes_on.expect("must have revokes_on set"), }, status, }, diff --git a/node/src/chain_spec/gen_genesis_data.rs b/node/src/chain_spec/gen_genesis_data.rs index 72a7a0dc628f0c7cde1d23d459eb923cce2e3e45..f9ca6f0ab8919e116eda85d595a63c6c9818e405 100644 --- a/node/src/chain_spec/gen_genesis_data.rs +++ b/node/src/chain_spec/gen_genesis_data.rs @@ -1759,7 +1759,14 @@ where initial_authorities, initial_monetary_mass: initial_identities_len as u64 * initial_idty_balance, memberships: (1..=initial_identities.len()) - .map(|i| (i as u32, MembershipData { expire_on: 0 })) + .map(|i| { + ( + i as u32, + MembershipData { + expire_on: common_parameters.membership_membership_period, + }, + ) + }) .collect(), parameters, common_parameters: None, @@ -1935,6 +1942,7 @@ pub struct CommonParameters { pub identity_change_owner_key_period: u32, pub identity_idty_creation_period: u32, pub identity_autorevocation_period: u32, + pub identity_deletion_period: u32, pub membership_membership_period: u32, pub membership_membership_renewal_period: u32, pub cert_cert_period: u32, diff --git a/node/src/chain_spec/gtest.rs b/node/src/chain_spec/gtest.rs index 5ff7083f4d68a446f7d0c3a2a0a13875fc93970e..93d6c7fcc48ee0ea60d5e226975ace8eeec37702 100644 --- a/node/src/chain_spec/gtest.rs +++ b/node/src/chain_spec/gtest.rs @@ -242,7 +242,7 @@ fn genesis_data_to_gtest_genesis_conf( initial_monetary_mass, memberships, parameters: _, - common_parameters: _, + common_parameters, session_keys_map, initial_smiths, sudo_key, @@ -286,7 +286,7 @@ fn genesis_data_to_gtest_genesis_conf( name, owner_key, status, - expires_on, + expires_on: _, revokes_on, }| GenesisIdty { index: idty_index, @@ -300,11 +300,9 @@ fn genesis_data_to_gtest_genesis_conf( IdtyStatus::Unconfirmed | IdtyStatus::Unvalidated => { panic!("Unconfirmed or Unvalidated identity in genesis") } - IdtyStatus::Member => expires_on.expect("must have expires_on set"), - IdtyStatus::Revoked => 0, - IdtyStatus::NotMember => { - revokes_on.expect("must have revokes_on set") - } + IdtyStatus::Member => 0, + IdtyStatus::Revoked => common_parameters.as_ref().expect("must have common_parameters").identity_deletion_period, + IdtyStatus::NotMember => revokes_on.expect("must have revokes_on set"), }, status, }, diff --git a/runtime/common/src/pallets_config.rs b/runtime/common/src/pallets_config.rs index 84e76ba23ff95f5532b39e01b7006aa03b9803b9..bafaafaea9250a16a86ec54b815b11d05b176710 100644 --- a/runtime/common/src/pallets_config.rs +++ b/runtime/common/src/pallets_config.rs @@ -459,7 +459,6 @@ macro_rules! pallets_config { parameter_types! { pub const ValidationPeriod: BlockNumber = 2 * MONTHS; - pub const DeletionPeriod: BlockNumber = 10 * YEARS; } impl pallet_identity::Config for Runtime { type AccountLinker = Account; diff --git a/runtime/g1/src/parameters.rs b/runtime/g1/src/parameters.rs index ba67b5a11d6852b354a3d676310414464468ad26..3f7f9a42c0147dbb1b9012e485fb674b52d690da 100644 --- a/runtime/g1/src/parameters.rs +++ b/runtime/g1/src/parameters.rs @@ -106,6 +106,7 @@ parameter_types! { pub const IdtyCreationPeriod: BlockNumber = MONTHS; pub const ValidationPeriod: BlockNumber = YEARS; pub const AutorevocationPeriod: BlockNumber = YEARS; + pub const DeletionPeriod: BlockNumber = 10 * YEARS; } // Membership diff --git a/runtime/gdev/src/parameters.rs b/runtime/gdev/src/parameters.rs index 1d95aeb66ebad8ace544571dd47d90f4d0a03122..f264767fee23c8bffb2f3b172d4023679b4db843 100644 --- a/runtime/gdev/src/parameters.rs +++ b/runtime/gdev/src/parameters.rs @@ -86,6 +86,7 @@ parameter_types! { frame_support::parameter_types! { pub const ChangeOwnerKeyPeriod: BlockNumber = 7 * DAYS; pub const AutorevocationPeriod: BlockNumber = YEARS; + pub const DeletionPeriod: BlockNumber = 10 * YEARS; } // Membership diff --git a/runtime/gtest/src/parameters.rs b/runtime/gtest/src/parameters.rs index 6539fa51d5b8b7708a5e329c2682df51eeed9fc0..b94568810faed47a9b4e20a6cd4ab5c2fd9238eb 100644 --- a/runtime/gtest/src/parameters.rs +++ b/runtime/gtest/src/parameters.rs @@ -99,6 +99,7 @@ parameter_types! { pub const ConfirmPeriod: BlockNumber = DAYS; pub const IdtyCreationPeriod: BlockNumber = DAYS; pub const AutorevocationPeriod: BlockNumber = YEARS; + pub const DeletionPeriod: BlockNumber = 10 * YEARS; } // Membership