Struct captain_workflow_manager::Scheduler [−][src]
pub struct Scheduler<ExB: ExecutorBuilder> { /* fields omitted */ }
Expand description
The entry point of the crate, implementing the job scheduling logic
Example
use captain_workflow_manager::{executor, Scheduler};
let executor = executor::SlurmExecutorBuilder { max_jobs: 10_000 };
let scheduler = Scheduler::new(executor);
scheduler.run(some_jobs)?;
Implementations
Creates a new scheduler objects, with the provided ExecutorBuilder
Executor builders can be found in the executor
module, or custom ones can be implemented.
Run each job in final_job_units
and its transitive dependencies.
A job won’t be run if its output file is already present. (Currently no finer dependency freshness management is attempted.) Moreover, dependencies of such jobs won’t be run either.