conduit_cli/core/engine/manager/
mod.rs1mod add;
2pub mod export;
3mod init;
4mod install_loader;
5mod start;
6
7use crate::core::engine::ConduitContext;
8use crate::core::engine::resolver::Resolver;
9use crate::core::engine::workflow::Workflow;
10use std::{path::PathBuf, sync::Arc};
11
12pub struct ProjectManager {
13 pub ctx: Arc<ConduitContext>,
14 pub resolver: Resolver,
15 pub project_root: PathBuf,
16 pub workflow: Workflow,
17}
18
19impl ProjectManager {
20 pub fn new(ctx: Arc<ConduitContext>, project_root: PathBuf) -> Self {
21 let resolver = Resolver::new(ctx.api.clone());
22 let workflow = Workflow::new(ctx.clone(), project_root.clone());
23
24 Self {
25 ctx,
26 resolver,
27 project_root,
28 workflow,
29 }
30 }
31}