diff --git a/node/src/chain_spec/g1.rs b/node/src/chain_spec/g1.rs index b84e42225256c6b152a5ae4b5b3c40b80176b4c4..e2fc8361e6167d00b6303b90fc84bd458ab23c24 100644 --- a/node/src/chain_spec/g1.rs +++ b/node/src/chain_spec/g1.rs @@ -147,7 +147,7 @@ fn genesis_data_to_g1_genesis_conf( initial_monetary_mass, memberships, parameters: _, - common_parameters: _, + common_parameters, session_keys_map, initial_smiths, sudo_key, @@ -191,7 +191,7 @@ fn genesis_data_to_g1_genesis_conf( name, owner_key, status, - expires_on, + expires_on: _, revokes_on, }| GenesisIdty { index: idty_index, @@ -205,11 +205,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 5b4a27c1d72bcb0d97dcf28bba5592a0b392c0c0..8f93718175b78b8c57681b3d326a109ef22b118a 100644 --- a/node/src/chain_spec/gdev.rs +++ b/node/src/chain_spec/gdev.rs @@ -79,6 +79,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, @@ -231,7 +232,7 @@ fn genesis_data_to_gdev_genesis_conf( initial_monetary_mass, memberships, parameters, - common_parameters: _, + common_parameters, session_keys_map, initial_smiths, sudo_key, @@ -278,7 +279,7 @@ fn genesis_data_to_gdev_genesis_conf( name, owner_key, status, - expires_on, + expires_on: _, revokes_on, }| GenesisIdty { index: idty_index, @@ -290,13 +291,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 930d5ea75263a8cb3477ad3d0ff66af76d87a41b..c654aa0506554ff272646196c7b8e041e90d0237 100644 --- a/node/src/chain_spec/gtest.rs +++ b/node/src/chain_spec/gtest.rs @@ -241,7 +241,7 @@ fn genesis_data_to_gtest_genesis_conf( initial_monetary_mass, memberships, parameters: _, - common_parameters: _, + common_parameters, session_keys_map, initial_smiths, sudo_key, @@ -285,7 +285,7 @@ fn genesis_data_to_gtest_genesis_conf( name, owner_key, status, - expires_on, + expires_on: _, revokes_on, }| GenesisIdty { index: idty_index, @@ -299,11 +299,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 3b5ae90ba85c60d1ab677e5e3c1014cfceb3e414..0b906cddb07fc0d2d574be2db35a47472e4a1adf 100644 --- a/runtime/common/src/pallets_config.rs +++ b/runtime/common/src/pallets_config.rs @@ -454,7 +454,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 ee768989c40f93e4dcf939b08a1ddc48df4462fa..d787eb5bf38e58c37ed0bc6d078f449c9617d983 100644 --- a/runtime/g1/src/parameters.rs +++ b/runtime/g1/src/parameters.rs @@ -112,6 +112,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 0b7083313bb62d7606d0af4fd06fa1e15085bf81..860d6369627e2a9927bcc90465381060e964daa6 100644 --- a/runtime/gdev/src/parameters.rs +++ b/runtime/gdev/src/parameters.rs @@ -92,6 +92,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 6295b34bc2d3f7f3b45cc2a9de1e147ba943335c..307f59b19733e1ad99bfb62bb656e9dc51bb70f1 100644 --- a/runtime/gtest/src/parameters.rs +++ b/runtime/gtest/src/parameters.rs @@ -105,6 +105,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