use std::path::{Path, PathBuf};
use anyhow::Result;
use clap::Parser;
use risc0_build::BuildStatus;
#[derive(Parser)]
pub struct BuildGuest {
#[arg(long)]
pub manifest_path: PathBuf,
#[arg(long, value_delimiter = ',')]
pub features: Vec<String>,
}
impl BuildGuest {
pub fn run(&self) -> Result<()> {
build(&self.manifest_path, &self.features)?;
Ok(())
}
}
pub(crate) fn build(manifest_path: &Path, features: &[String]) -> Result<BuildStatus> {
let src_dir = std::env::current_dir().unwrap();
risc0_build::docker_build(manifest_path, &src_dir, features)
}