extern crate discloud_rs;
use std::env;
use discloud_rs::AppStartError;
use dotenvy::dotenv;
#[tokio::main]
async fn main() {
dotenv().unwrap();
let client = discloud_rs::Discloud::new(&env::var("DISCLOUD_TOKEN").unwrap());
let apps = client.get_all_apps().await.unwrap();
println!("All apps fetched: {apps:?}");
match apps.first() {
Some(app) => {
match app.start(&client).await {
Ok(_) => println!("Started app: {app:#?}"),
Err(error) => match error {
AppStartError::AlreadyOnline => println!("App already online"),
AppStartError::Other(e) => println!("Other error: {e:#?}"),
},
};
}
None => {
println!("No app to start");
}
}
}