use chrono::Utc;
use log::info;
use simple_logger::SimpleLogger;
use tasklet::task::TaskStepStatusOk::Success;
use tasklet::{TaskBuilder, TaskGenerator, TaskScheduler};
#[tokio::main]
async fn main() {
SimpleLogger::new().init().unwrap();
let mut scheduler = TaskScheduler::default(Utc);
scheduler.set_task_gen(TaskGenerator::new("1 * * * * * *", Utc, || {
Some(
TaskBuilder::new(Utc)
.every("0,10,20,30,40,50 * * * * * *")
.description("Generated task")
.repeat(2)
.add_step_default(|| {
info!("[Step 1] This is a generated task!");
Ok(Success)
})
.add_step_default(|| {
info!("[Step 2] This is generated task!");
Ok(Success)
})
.build(),
)
}));
scheduler.run().await;
}