Skip to main content

assay_workflow/
workers.rs

1//! Worker registry methods.
2
3use anyhow::Result;
4
5use crate::ctx::{WorkflowCtx, timestamp_now};
6use crate::store::WorkflowStore;
7use crate::types::*;
8
9impl<S: WorkflowStore> WorkflowCtx<S> {
10    pub async fn register_worker(&self, worker: &WorkflowWorker) -> Result<()> {
11        self.store.register_worker(worker).await
12    }
13
14    pub async fn heartbeat_worker(&self, id: &str) -> Result<()> {
15        self.store.heartbeat_worker(id, timestamp_now()).await
16    }
17
18    pub async fn list_workers(&self, namespace: &str) -> Result<Vec<WorkflowWorker>> {
19        self.store.list_workers(namespace).await
20    }
21}