30 lines
569 B
Rust
30 lines
569 B
Rust
|
use crate::definition::Project;
|
||
|
use actix::prelude::*;
|
||
|
use runner::Manager;
|
||
|
|
||
|
mod definition;
|
||
|
mod job;
|
||
|
mod runner;
|
||
|
|
||
|
#[actix_rt::main]
|
||
|
async fn main() {
|
||
|
let project = Project::from_str(
|
||
|
r#"
|
||
|
components:
|
||
|
- name: ls
|
||
|
commands:
|
||
|
- ls
|
||
|
- name: currentdir
|
||
|
commands:
|
||
|
- pwd
|
||
|
"#,
|
||
|
);
|
||
|
let jobs = project.get_by_name("ls").unwrap();
|
||
|
let manager = Manager::new().start();
|
||
|
manager.do_send(jobs);
|
||
|
|
||
|
actix_rt::signal::ctrl_c()
|
||
|
.await
|
||
|
.expect("failed to listen for event");
|
||
|
}
|