Aller au contenu
English

RunSchedulesOptions

import type { RunSchedulesOptions } from "@elie-laloum/outpost";
  • queueRequis
    TaskQueue
    File qui reçoit un job de déclencheur par créneau ; partagez-la entre les réplicas du planificateur pour qu’ils convergent vers le même job.
  • schedulesRequis
    readonly TriggerSchedule[]
    Au moins une planification, chacune avec un nom unique.
  • signalRequis
    AbortSignal
    Arrête toutes les planifications ; runSchedules() se résout alors.
  • maxLateMsOptionnel
    number | undefined
    Retard maximal après un créneau pour qu’il soit encore publié, y compris au démarrage ; 60000 par défaut. Seul le dernier créneau de cette fenêtre est publié ; une valeur négative ou non entière rejette.
  • onErrorOptionnel
    ((error: unknown, failure: ScheduleFailure) => void) | undefined
    Reçoit chaque échec de publication avec sa planification et son créneau, et la planification continue ; sans lui, le premier échec arrête toutes les planifications et rejette runSchedules(). Les erreurs levées par le callback sont ignorées.
export interface RunSchedulesOptions {
  readonly queue: TaskQueue;
  readonly schedules: readonly TriggerSchedule[];
  readonly signal: AbortSignal;
  /** Latest publication accepted for a slot, including after a restart; defaults to 60 seconds. */
  readonly maxLateMs?: number;
  /** Receives publication failures; without it, the first failure rejects `runSchedules()`. */
  readonly onError?: (error: unknown, failure: ScheduleFailure) => void;
}