Some checks failed
Run Check Script / check (pull_request) Failing after 1m21s
51 lines
1.3 KiB
Rust
51 lines
1.3 KiB
Rust
use harmony::{
|
|
inventory::Inventory,
|
|
modules::{
|
|
application::{
|
|
ApplicationScore, RustWebFramework, RustWebapp,
|
|
features::{PackagingDeployment, rhob_monitoring::Monitoring},
|
|
},
|
|
monitoring::alert_channel::discord_alert_channel::DiscordWebhook,
|
|
},
|
|
topology::K8sAnywhereTopology,
|
|
};
|
|
use harmony_macros::hurl;
|
|
use std::{path::PathBuf, sync::Arc};
|
|
|
|
#[tokio::main]
|
|
async fn main() {
|
|
let application = Arc::new(RustWebapp {
|
|
name: "tryrust".to_string(),
|
|
project_root: PathBuf::from(".."),
|
|
framework: Some(RustWebFramework::Leptos),
|
|
service_port: 8080,
|
|
});
|
|
|
|
let discord_webhook = DiscordWebhook {
|
|
name: "harmony_demo".to_string(),
|
|
url: hurl!("http://not_a_url.com"),
|
|
};
|
|
|
|
let app = ApplicationScore {
|
|
features: vec![
|
|
Box::new(PackagingDeployment {
|
|
application: application.clone(),
|
|
}),
|
|
Box::new(Monitoring {
|
|
application: application.clone(),
|
|
alert_receiver: vec![Box::new(discord_webhook)],
|
|
}),
|
|
],
|
|
application,
|
|
};
|
|
|
|
harmony_cli::run(
|
|
Inventory::autoload(),
|
|
K8sAnywhereTopology::from_env(),
|
|
vec![Box::new(app)],
|
|
None,
|
|
)
|
|
.await
|
|
.unwrap();
|
|
}
|