Skip to content
Snippets Groups Projects
Commit 4249248e authored by Éloïs's avatar Éloïs
Browse files

Resolve "Get ParamsAppliedAtGenesis values from json genesis conf" (!96)

* fix(binary):  get ParamsAppliedAtGenesis values from json genesis conf
parent d785ae97
No related branches found
No related tags found
1 merge request!96fix(binary): get ParamsAppliedAtGenesis values from json genesis conf
{
"first_ud": 1000,
"first_ud_reeval": 100,
"genesis_parameters": {
"genesis_certs_expire_on": 100000,
"genesis_certs_min_received": 2,
"genesis_memberships_expire_on": 100000,
"genesis_smith_certs_expire_on": 100000,
"genesis_smith_certs_min_received": 2,
"genesis_smith_memberships_expire_on": 100000
},
"identities": {
"Alice": {
"balance": 1000,
......
{
"first_ud": 1000,
"first_ud_reeval": 100,
"genesis_parameters": {
"genesis_certs_expire_on": 100000,
"genesis_certs_min_received": 2,
"genesis_memberships_expire_on": 100000,
"genesis_smith_certs_expire_on": 100000,
"genesis_smith_certs_min_received": 2,
"genesis_smith_memberships_expire_on": 100000
},
"identities": {
"Alice": {
"balance": 1000,
......
......@@ -96,14 +96,6 @@ pub fn development_chain_spec() -> Result<ChainSpec, String> {
)
},
Some(get_authority_keys_from_seed("Alice").encode()),
Some(super::gen_genesis_data::ParamsAppliedAtGenesis {
genesis_certs_expire_on: 100_000,
genesis_certs_min_received: 2,
genesis_memberships_expire_on: 100_000,
genesis_smith_certs_expire_on: 100_000,
genesis_smith_certs_min_received: 2,
genesis_smith_memberships_expire_on: 100_000,
}),
)
} else {
Ok(ChainSpec::from_genesis(
......@@ -191,14 +183,6 @@ pub fn gen_live_conf() -> Result<ChainSpec, String> {
)
},
None,
Some(super::gen_genesis_data::ParamsAppliedAtGenesis {
genesis_certs_expire_on: 2_102_400,
genesis_certs_min_received: 3,
genesis_memberships_expire_on: 1_051_200,
genesis_smith_certs_expire_on: 2_102_400,
genesis_smith_certs_min_received: 3,
genesis_smith_memberships_expire_on: 1_051_200,
}),
)
}
......
......@@ -41,7 +41,7 @@ pub struct GenesisData<Parameters: DeserializeOwned, SessionKeys: Decode> {
pub technical_committee_members: Vec<AccountId>,
}
#[derive(Default)]
#[derive(Default, Deserialize, Serialize)]
pub struct ParamsAppliedAtGenesis {
pub genesis_certs_expire_on: u32,
pub genesis_certs_min_received: u32,
......@@ -55,6 +55,7 @@ pub struct ParamsAppliedAtGenesis {
struct GenesisConfig<Parameters> {
first_ud: u64,
first_ud_reeval: u32,
genesis_parameters: ParamsAppliedAtGenesis,
identities: BTreeMap<String, Idty>,
#[serde(default)]
parameters: Parameters,
......@@ -87,22 +88,12 @@ struct SmithData {
pub fn generate_genesis_data<CS, P, SK, F>(
f: F,
maybe_force_authority: Option<Vec<u8>>,
params_applied_at_genesis: Option<ParamsAppliedAtGenesis>,
) -> Result<CS, String>
where
P: Default + DeserializeOwned,
SK: Decode,
F: Fn(GenesisData<P, SK>) -> CS,
{
let ParamsAppliedAtGenesis {
genesis_certs_expire_on,
genesis_certs_min_received,
genesis_memberships_expire_on,
genesis_smith_certs_expire_on,
genesis_smith_certs_min_received,
genesis_smith_memberships_expire_on,
} = params_applied_at_genesis.unwrap_or_default();
let genesis_timestamp: u64 =
if let Ok(genesis_timestamp) = std::env::var("DUNITER_GENESIS_TIMESTAMP") {
genesis_timestamp
......@@ -137,6 +128,15 @@ where
sudo_key,
first_ud,
first_ud_reeval,
genesis_parameters:
ParamsAppliedAtGenesis {
genesis_certs_expire_on,
genesis_certs_min_received,
genesis_memberships_expire_on,
genesis_smith_certs_expire_on,
genesis_smith_certs_min_received,
genesis_smith_memberships_expire_on,
},
parameters,
identities,
smith_identities,
......
{
"first_ud": 10000,
"first_ud_reeval": 100800,
"genesis_parameters": {
"genesis_certs_expire_on": 2102400,
"genesis_certs_min_received": 3,
"genesis_memberships_expire_on": 1051200,
"genesis_smith_certs_expire_on": 2102400,
"genesis_smith_certs_min_received": 3,
"genesis_smith_memberships_expire_on": 1051200
},
"identities": {
"Elois": {
"balance": 10000,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment