2024-08-25 22:13:50 +02:00
|
|
|
use cli::Cli;
|
2024-08-24 15:40:44 +02:00
|
|
|
use cuddle_state::Cuddle;
|
2024-08-23 23:22:35 +02:00
|
|
|
|
2024-08-25 22:13:50 +02:00
|
|
|
mod cli;
|
2024-08-24 15:40:44 +02:00
|
|
|
mod cuddle_state;
|
2024-08-24 00:45:16 +02:00
|
|
|
mod plan;
|
|
|
|
mod project;
|
2024-08-24 14:55:26 +02:00
|
|
|
mod schema_validator;
|
|
|
|
mod state;
|
2024-08-23 21:51:42 +02:00
|
|
|
|
|
|
|
#[tokio::main]
|
|
|
|
async fn main() -> anyhow::Result<()> {
|
|
|
|
dotenv::dotenv().ok();
|
|
|
|
tracing_subscriber::fmt::init();
|
|
|
|
|
2024-08-24 15:40:44 +02:00
|
|
|
let cuddle = Cuddle::default()
|
2024-08-24 00:45:16 +02:00
|
|
|
.prepare_project()
|
|
|
|
.await?
|
|
|
|
.prepare_plan()
|
2024-08-24 14:55:26 +02:00
|
|
|
.await?
|
|
|
|
.build_state()
|
2024-08-24 00:45:16 +02:00
|
|
|
.await?;
|
2024-08-23 23:21:53 +02:00
|
|
|
|
2024-08-24 15:40:44 +02:00
|
|
|
Cli::new(cuddle).setup().await?.execute().await?;
|
|
|
|
|
2024-08-23 23:21:53 +02:00
|
|
|
Ok(())
|
|
|
|
}
|