Skip to main content

Crate ironflow_store

Crate ironflow_store 

Source
Expand description

§ironflow-store

Storage abstraction for the ironflow workflow engine. This crate provides the RunStore trait and data entities for persisting workflow runs and steps.

§Implementations

StoreFeatureDescription
InMemoryStorestore-memory (default)In-process, no external dependencies.
PostgresStorestore-postgresProduction-ready with SELECT FOR UPDATE SKIP LOCKED.

§Quick start

use ironflow_store::prelude::*;
use serde_json::json;

let store = InMemoryStore::new();

let run = store.create_run(NewRun {
    workflow_name: "deploy".to_string(),
    trigger: TriggerKind::Manual,
    payload: json!({}),
    max_retries: 3,
}).await?;

println!("Run {} is {:?}", run.id, run.status);

Re-exports§

pub use entities as models;

Modules§

api_key_store
The ApiKeyStore trait – async storage abstraction for API keys.
entities
Store entities — data models split by domain.
error
Storage error types.
memory
In-memory RunStore implementation for development and testing.
prelude
Convenience re-exports for common usage.
store
The RunStore trait — async storage abstraction for runs and steps.
user_store
The UserStore trait — async storage abstraction for users.