lightspeed/integration/jobs

Background-job integration patterns for ecosystem compatibility (M26).

Types

One job integration pattern.

pub type Pattern {
  Pattern(
    name: String,
    backend: QueueBackend,
    retry_policy: RetryPolicy,
    tenant_partitioned: Bool,
    dead_letter_enabled: Bool,
  )
}

Constructors

  • Pattern(
      name: String,
      backend: QueueBackend,
      retry_policy: RetryPolicy,
      tenant_partitioned: Bool,
      dead_letter_enabled: Bool,
    )

Queue backend profile.

pub type QueueBackend {
  GleamWorkerPool(pool_size: Int)
  ObanBridge(module: String)
  MixedQueue(primary: String, fallback: String)
}

Constructors

  • GleamWorkerPool(pool_size: Int)
  • ObanBridge(module: String)
  • MixedQueue(primary: String, fallback: String)

Retry/timeout policy for one job class.

pub type RetryPolicy {
  RetryPolicy(
    max_attempts: Int,
    base_backoff_ms: Int,
    timeout_ms: Int,
  )
}

Constructors

  • RetryPolicy(
      max_attempts: Int,
      base_backoff_ms: Int,
      timeout_ms: Int,
    )

Values

pub fn backend(pattern: Pattern) -> QueueBackend

Pattern backend.

pub fn backend_label(backend: QueueBackend) -> String

Stable backend label.

pub fn critical_path_pattern() -> Pattern

Critical-path integration pattern.

pub fn local_dev_pattern() -> Pattern

Local development integration pattern.

pub fn mixed_runtime_pattern() -> Pattern

Mixed-runtime integration pattern.

pub fn name(pattern: Pattern) -> String

Pattern name.

pub fn signature(pattern: Pattern) -> String

Stable pattern signature.

pub fn valid(pattern: Pattern) -> Bool

Validate job integration constraints.

Search Document