mirror of
https://github.com/vhaudiquet/ecrou.git
synced 2026-11-12 22:22:44 +00:00
92ff76a1b6766eae5cc77799287afbb09b2b326d
The cache-seeding tests seeded entry names under amd64 but resolved the request against the host arch, so on an arm64 host the lookup missed and the tests walked into the network path. Requests now pin arch, matching the seeded names on any host. The tool gate uses find_tool: on macOS the e2fsprogs binaries are keg-only, never on PATH.
ecrou
a small microVM runtime based on libkrun
Try ecrou in the terminal
Installation
ecrou is available as a strictly confined snap:
sudo snap install ecrou
sudo snap connect ecrou:kvm
Usage
$ ecrou run -it ubuntu
root@ecrou-vm-m2glhl:/#
Embed ecrou into your project
ecrou is both a library and a tiny CLI frontend around it. The library is embeddable into any project, allowing to use microVMs easily.
Rust
ecrou is a Rust library, which can just be called:
use ecrou::vm::RunOptions;
use ecrou::NoProgress;
fn main() -> ecrou::Result<std::process::ExitCode> {
let code = ecrou::vm::run(
&RunOptions {
image: "ubuntu:resolute".into(),
command: vec!["uname".into(), "-a".into()],
..RunOptions::default()
},
&NoProgress,
)?;
Ok(std::process::ExitCode::from(code.clamp(0, 255) as u8))
}
Languages
Rust
99.4%
Ruby
0.6%