substrate_manager/ops/substrate_run.rs
1use std::process::Command;
2
3use anyhow::Ok;
4
5use crate::util::{Config, SubstrateResult};
6
7pub struct RunOptions {
8 pub chain: String,
9}
10
11pub fn run(opts: &RunOptions) -> SubstrateResult<()> {
12 let mut args = vec!["+nightly", "run", "--release", "--"];
13 if opts.chain == "dev" {
14 // 'dev' gets special treatment
15 args.push("--dev");
16 } else {
17 args.extend(["--chain", &opts.chain]);
18 }
19 Command::new("cargo")
20 .args(args)
21 .status()?;
22
23 Ok(())
24}