The home for Hyperlane core contracts, sdk packages, and other infrastructure
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
hyperlane-monorepo/rust/agents/relayer/src/main.rs

35 lines
866 B

//! The relayer forwards signed updates from the home to chain to replicas
//!
//! At a regular interval, the relayer polls Home for signed updates and
//! submits them as updates with a pending timelock on the replica.
#![forbid(unsafe_code)]
#![warn(missing_docs)]
#![warn(unused_extern_crates)]
mod relayer;
mod settings;
use color_eyre::Result;
use optics_base::agent::OpticsAgent;
use crate::{relayer::Relayer, settings::RelayerSettings as Settings};
async fn _main() -> Result<()> {
color_eyre::install()?;
let settings = Settings::new()?;
settings.base.tracing.start_tracing()?;
let agent = Relayer::from_settings(settings).await?;
agent.run_all().await?;
Ok(())
}
fn main() -> Result<()> {
tokio::runtime::Builder::new_current_thread()
.enable_all()
.build()
.unwrap()
.block_on(_main())
}