mirror of
https://github.com/containers/youki
synced 2024-06-10 00:36:16 +02:00
Clippy & Formatting
This commit is contained in:
parent
9c3a4706e8
commit
5951d0ca86
|
@ -415,7 +415,7 @@ pub fn container_init_process(
|
|||
}
|
||||
|
||||
if proc.args().is_some() {
|
||||
Executor::new().exec(spec)
|
||||
Executor::default().exec(spec)
|
||||
} else {
|
||||
bail!("on non-Windows, at least one process arg entry is required")
|
||||
}
|
||||
|
|
|
@ -15,9 +15,9 @@ impl ExecHandler for DefaultExecHandler {
|
|||
.process()
|
||||
.as_ref()
|
||||
.and_then(|p| p.args().as_ref())
|
||||
.unwrap_or_else(|| &EMPTY);
|
||||
.unwrap_or(&EMPTY);
|
||||
|
||||
if args.len() == 0 {
|
||||
if args.is_empty() {
|
||||
bail!("at least one process arg must be specified")
|
||||
}
|
||||
|
||||
|
@ -43,4 +43,3 @@ impl ExecHandler for DefaultExecHandler {
|
|||
"default"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
use anyhow::{Result, Context};
|
||||
use anyhow::{Context, Result};
|
||||
use oci_spec::runtime::Spec;
|
||||
|
||||
use self::{default::DefaultExecHandler};
|
||||
use self::default::DefaultExecHandler;
|
||||
#[cfg(feature = "wasm-wasmer")]
|
||||
use self::{wasmer::WasmerExecHandler};
|
||||
use self::wasmer::WasmerExecHandler;
|
||||
|
||||
pub mod default;
|
||||
#[cfg(feature = "wasm-wasmer")]
|
||||
|
@ -24,22 +24,30 @@ pub struct Executor {
|
|||
}
|
||||
|
||||
impl Executor {
|
||||
pub fn new() -> Self {
|
||||
let mut handlers: Vec<Box<dyn ExecHandler>> = Vec::new();
|
||||
#[cfg(feature = "wasm-wasmer")]
|
||||
handlers.push(Box::new(WasmerExecHandler{}));
|
||||
handlers.push(Box::new(DefaultExecHandler{}));
|
||||
|
||||
Self { handlers }
|
||||
}
|
||||
|
||||
pub fn exec(&self, spec: &Spec) -> Result<()> {
|
||||
for handler in &self.handlers {
|
||||
if handler.can_handle(spec).with_context(|| format!("handler {} failed on selection",handler.name() ))? {
|
||||
handler.exec(spec).with_context(||format!("handler {} failed on exec", handler.name()))?;
|
||||
if handler
|
||||
.can_handle(spec)
|
||||
.with_context(|| format!("handler {} failed on selection", handler.name()))?
|
||||
{
|
||||
handler
|
||||
.exec(spec)
|
||||
.with_context(|| format!("handler {} failed on exec", handler.name()))?;
|
||||
}
|
||||
}
|
||||
|
||||
unreachable!("no suitable execution handler has been registered");
|
||||
}
|
||||
}
|
||||
|
||||
impl Default for Executor {
|
||||
fn default() -> Self {
|
||||
let handlers: Vec<Box<dyn ExecHandler>> = vec![
|
||||
#[cfg(feature = "wasm-wasmer")]
|
||||
Box::new(WasmerExecHandler {}),
|
||||
Box::new(DefaultExecHandler {}),
|
||||
];
|
||||
|
||||
Self { handlers }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,20 +12,18 @@ impl ExecHandler for WasmerExecHandler {
|
|||
log::debug!("Executing workload with wasmer handler");
|
||||
let process = spec.process().as_ref();
|
||||
|
||||
let args = process
|
||||
.and_then(|p| p.args().as_ref())
|
||||
.unwrap_or_else(|| &EMPTY);
|
||||
let args = process.and_then(|p| p.args().as_ref()).unwrap_or(&EMPTY);
|
||||
let env = process
|
||||
.and_then(|p| p.env().as_ref())
|
||||
.unwrap_or_else(|| &EMPTY)
|
||||
.into_iter()
|
||||
.unwrap_or(&EMPTY)
|
||||
.iter()
|
||||
.filter_map(|e| {
|
||||
e.split_once("=")
|
||||
.filter(|kv| !kv.0.contains('\u{0}') && !kv.1.contains('\u{0}'))
|
||||
.map(|kv| (kv.0.trim(), kv.1.trim()))
|
||||
});
|
||||
|
||||
if args.len() == 0 {
|
||||
if args.is_empty() {
|
||||
bail!("at least one process arg must be specified")
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue