mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-12 13:31:10 +00:00
Migration testing CLI (#2447)
* Template * Midway.. * Make all 3 runtimes work * Update node/service/Cargo.toml * undo brach updates * fix with latest version * Update runtime/kusama/src/lib.rs Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com> * Update runtime/rococo/src/lib.rs Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * Final nits * Update runtime/kusama/src/lib.rs Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com> Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com> Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
This commit is contained in:
@@ -46,13 +46,17 @@ pub enum Subcommand {
|
||||
#[structopt(name = "validation-worker", setting = structopt::clap::AppSettings::Hidden)]
|
||||
ValidationWorker(ValidationWorkerCommand),
|
||||
|
||||
/// The custom benchmark subcommmand benchmarking runtime pallets.
|
||||
/// The custom benchmark subcommand benchmarking runtime pallets.
|
||||
#[structopt(
|
||||
name = "benchmark",
|
||||
about = "Benchmark runtime pallets."
|
||||
)]
|
||||
Benchmark(frame_benchmarking_cli::BenchmarkCmd),
|
||||
|
||||
/// Testing subcommand for runtime testing and trying.
|
||||
#[cfg(feature = "try-runtime")]
|
||||
TryRuntime(try_runtime_cli::TryRuntimeCmd),
|
||||
|
||||
/// Key management cli utilities
|
||||
Key(sc_cli::KeySubcommand),
|
||||
}
|
||||
|
||||
@@ -245,7 +245,7 @@ pub fn run() -> Result<()> {
|
||||
|
||||
Ok(runner.async_run(|mut config| {
|
||||
let (client, backend, _, task_manager) = service::new_chain_ops(&mut config, None)?;
|
||||
Ok((cmd.run(client, backend).map_err(Error::SubstrateCli),task_manager))
|
||||
Ok((cmd.run(client, backend).map_err(Error::SubstrateCli), task_manager))
|
||||
})?)
|
||||
},
|
||||
Some(Subcommand::ValidationWorker(cmd)) => {
|
||||
@@ -276,6 +276,31 @@ pub fn run() -> Result<()> {
|
||||
})?)
|
||||
},
|
||||
Some(Subcommand::Key(cmd)) => Ok(cmd.run(&cli)?),
|
||||
#[cfg(feature = "try-runtime")]
|
||||
Some(Subcommand::TryRuntime(cmd)) => {
|
||||
let runner = cli.create_runner(cmd)?;
|
||||
let chain_spec = &runner.config().chain_spec;
|
||||
set_default_ss58_version(chain_spec);
|
||||
|
||||
runner.async_run(|config| {
|
||||
use sc_service::TaskManager;
|
||||
let registry = config.prometheus_config.as_ref().map(|cfg| &cfg.registry);
|
||||
let task_manager = TaskManager::new(
|
||||
config.task_executor.clone(),
|
||||
registry,
|
||||
).map_err(|e| Error::SubstrateService(sc_service::Error::Prometheus(e)))?;
|
||||
|
||||
Ok((
|
||||
cmd.run::<
|
||||
service::kusama_runtime::Block,
|
||||
service::KusamaExecutor,
|
||||
>(config).map_err(Error::SubstrateCli),
|
||||
task_manager
|
||||
))
|
||||
// NOTE: we fetch only the block number from the block type, the chance of disparity
|
||||
// between kusama's and polkadot's block number is small enough to overlook this.
|
||||
})
|
||||
}
|
||||
}?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user