mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-29 11:27:58 +00:00
667ee95f5d
* Add some chainspec tests and make sure we validate it. * Manual implementation of Extension + Forks definitions. * Move chain spec to separate crate. * Allow using ChainSpec with extensions. * Renames. * Implement Extension derive. * Implement Extension for Forks. * Support specifying fork blocks. * make for_blocks work * Support forks correctly. * Add a bunch of docs. * Make fork blocks optional. * Add missing docs. * Fix build. * Use struct for check_block params. * Fix tests? * Clean up.
50 lines
1.1 KiB
Rust
50 lines
1.1 KiB
Rust
use clap::{App, load_yaml};
|
|
|
|
use node_cli::chain_spec::{self, AccountId};
|
|
use substrate_service::chain_ops::build_spec;
|
|
|
|
fn genesis_constructor() -> chain_spec::GenesisConfig {
|
|
let yaml = load_yaml!("./cli.yml");
|
|
let matches = App::from_yaml(yaml).get_matches();
|
|
let authorities = matches.values_of("initial_authority_seed")
|
|
.unwrap()
|
|
.map(chain_spec::get_authority_keys_from_seed)
|
|
.collect();
|
|
|
|
let endowed_accounts = matches.values_of("endowed_account_seed")
|
|
.unwrap()
|
|
.map(chain_spec::get_from_seed::<AccountId>)
|
|
.collect();
|
|
|
|
let sudo_key_seed = matches.value_of("sudo_key_seed").unwrap();
|
|
let sudo_key = chain_spec::get_from_seed::<AccountId>(sudo_key_seed);
|
|
|
|
let enable_println = true;
|
|
|
|
chain_spec::testnet_genesis(
|
|
authorities,
|
|
sudo_key.into(),
|
|
Some(endowed_accounts),
|
|
enable_println,
|
|
)
|
|
}
|
|
|
|
fn generate_chain_spec() -> String {
|
|
let chain_spec = chain_spec::ChainSpec::from_genesis(
|
|
"Custom",
|
|
"custom",
|
|
genesis_constructor,
|
|
vec![],
|
|
None,
|
|
None,
|
|
None,
|
|
Default::default(),
|
|
);
|
|
build_spec(chain_spec, false).unwrap()
|
|
}
|
|
|
|
fn main() {
|
|
let json = generate_chain_spec();
|
|
println!("{}", json);
|
|
}
|