feat: seed default plugins/pipelines, auto-enqueue jobs on asset ingest
- Migration seeds metadata_extractor, sidecar_sync, no_op plugins - Pipelines: extract_metadata → metadata_extractor, sync_sidecar → sidecar_sync - Worker reacts to AssetIngested → enqueues ExtractMetadata job - Worker reacts to SidecarSyncRequested → enqueues SyncSidecar job - Closes the ingest-to-processing loop end-to-end
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
use application::processing::{ExecutePipelineHandler, ProcessNextJobHandler};
|
||||
use application::processing::{EnqueueJobHandler, ExecutePipelineHandler, ProcessNextJobHandler};
|
||||
use domain::ports::{EventPublisher, PluginRegistry};
|
||||
use std::sync::Arc;
|
||||
|
||||
@@ -20,3 +20,10 @@ pub fn build_process_next_handler(
|
||||
|
||||
ProcessNextJobHandler::new(repos.job.clone(), execute_pipeline)
|
||||
}
|
||||
|
||||
pub fn build_enqueue_handler(
|
||||
repos: &Repos,
|
||||
event_pub: Arc<dyn EventPublisher>,
|
||||
) -> EnqueueJobHandler {
|
||||
EnqueueJobHandler::new(repos.job.clone(), event_pub)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user