huskies: merge 1061
This commit is contained in:
+24
-21
@@ -274,34 +274,37 @@ async fn main() -> Result<(), std::io::Error> {
|
||||
let matrix_shutdown_tx_for_rebuild = Arc::clone(&bot_ctxs.matrix_shutdown_tx);
|
||||
|
||||
// Shared rate-limit retry timer store.
|
||||
let timer_store = std::sync::Arc::new(crate::service::timer::TimerStore::load(
|
||||
startup_root
|
||||
.as_ref()
|
||||
.map(|r| r.join(".huskies").join("timers.json"))
|
||||
.unwrap_or_else(|| std::path::PathBuf::from("/tmp/huskies-timers.json")),
|
||||
));
|
||||
let timer_store = {
|
||||
let pool = crate::db::get_shared_pool().expect("db pool must be initialised before stores");
|
||||
std::sync::Arc::new(
|
||||
crate::service::timer::TimerStore::from_pool(pool.clone())
|
||||
.await
|
||||
.expect("failed to load timer store from db"),
|
||||
)
|
||||
};
|
||||
let timer_store_for_tick = Arc::clone(&timer_store);
|
||||
let timer_store_for_bot = Arc::clone(&timer_store);
|
||||
|
||||
// Event-based pipeline trigger store.
|
||||
let event_trigger_store = std::sync::Arc::new(
|
||||
crate::service::event_triggers::store::EventTriggerStore::load(
|
||||
startup_root
|
||||
.as_ref()
|
||||
.map(|r| r.join(".huskies").join("event_triggers.json"))
|
||||
.unwrap_or_else(|| std::path::PathBuf::from("/tmp/huskies-event-triggers.json")),
|
||||
),
|
||||
);
|
||||
let event_trigger_store = {
|
||||
let pool = crate::db::get_shared_pool().expect("db pool must be initialised before stores");
|
||||
std::sync::Arc::new(
|
||||
crate::service::event_triggers::store::EventTriggerStore::from_pool(pool.clone())
|
||||
.await
|
||||
.expect("failed to load event trigger store from db"),
|
||||
)
|
||||
};
|
||||
let event_trigger_store_for_subscriber = Arc::clone(&event_trigger_store);
|
||||
|
||||
// Generic scheduled-timer store for the `schedule_timer` MCP tool.
|
||||
let scheduled_timer_store =
|
||||
std::sync::Arc::new(crate::service::timer::ScheduledTimerStore::load(
|
||||
startup_root
|
||||
.as_ref()
|
||||
.map(|r| r.join(".huskies").join("scheduled_timers.json"))
|
||||
.unwrap_or_else(|| std::path::PathBuf::from("/tmp/huskies-scheduled-timers.json")),
|
||||
));
|
||||
let scheduled_timer_store = {
|
||||
let pool = crate::db::get_shared_pool().expect("db pool must be initialised before stores");
|
||||
std::sync::Arc::new(
|
||||
crate::service::timer::ScheduledTimerStore::from_pool(pool.clone())
|
||||
.await
|
||||
.expect("failed to load scheduled timer store from db"),
|
||||
)
|
||||
};
|
||||
let scheduled_timer_store_for_tick = Arc::clone(&scheduled_timer_store);
|
||||
|
||||
let ctx = AppContext {
|
||||
|
||||
Reference in New Issue
Block a user