mirror of
https://github.com/asterinas/asterinas.git
synced 2025-06-23 17:33:23 +00:00
Add OSDK command line interface
This commit is contained in:
committed by
Tate, Hongliang Tian
parent
f2f991b239
commit
3b3d088767
27
osdk/src/commands/check.rs
Normal file
27
osdk/src/commands/check.rs
Normal file
@ -0,0 +1,27 @@
|
||||
// SPDX-License-Identifier: MPL-2.0
|
||||
|
||||
use std::process;
|
||||
|
||||
use crate::commands::utils::create_target_json;
|
||||
use crate::error::Errno;
|
||||
use crate::error_msg;
|
||||
use crate::utils::get_cargo_metadata;
|
||||
|
||||
use super::utils::{cargo, COMMON_CARGO_ARGS};
|
||||
|
||||
pub fn execute_check_command() {
|
||||
let target_json_path = {
|
||||
let metadata = get_cargo_metadata(None::<&str>, None::<&[&str]>);
|
||||
let target_directory = metadata.get("target_directory").unwrap().as_str().unwrap();
|
||||
create_target_json(target_directory)
|
||||
};
|
||||
|
||||
let mut command = cargo();
|
||||
command.arg("check").arg("--target").arg(target_json_path);
|
||||
command.args(COMMON_CARGO_ARGS);
|
||||
let status = command.status().unwrap();
|
||||
if !status.success() {
|
||||
error_msg!("Check failed");
|
||||
process::exit(Errno::ExecuteCommand as _);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user