UNPKG

n8n

Version:

n8n Workflow Automation Tool

39 lines (38 loc) 2.42 kB
import { Logger } from '@n8n/backend-common'; import { WorkflowsConfig } from '@n8n/config'; import { WorkflowPublicationOutboxRepository, WorkflowPublicationReason, WorkflowPublicationTriggerStatusRepository, WorkflowRepository } from '@n8n/db'; import { ActiveWorkflowTriggers, ErrorReporter, InstanceSettings, Tracing } from 'n8n-core'; import { EventService } from '../../events/event.service'; import { NonWebhookTriggerRegistrar } from '../../workflows/triggers/non-webhook-trigger-registrar'; import { PublishedWorkflowTriggerDeactivator } from './published-workflow-trigger-deactivator'; import { WorkflowPublicationLifecycleLock } from './workflow-publication-lifecycle-lock'; import { WorkflowPublicationOutboxConsumer } from './workflow-publication-outbox-consumer'; export declare class WorkflowPublicationReconciler { private readonly workflowsConfig; private readonly triggerStatusRepository; private readonly outboxRepository; private readonly nonWebhookTriggerRegistrar; private readonly outboxConsumer; private readonly instanceSettings; private readonly errorReporter; private readonly tracing; private readonly eventService; private readonly lifecycleLock; private readonly workflowRepository; private readonly activeWorkflowTriggers; private readonly publishedWorkflowTriggerDeactivator; private reconcileInterval; private isShuttingDown; private readonly logger; constructor(logger: Logger, workflowsConfig: WorkflowsConfig, triggerStatusRepository: WorkflowPublicationTriggerStatusRepository, outboxRepository: WorkflowPublicationOutboxRepository, nonWebhookTriggerRegistrar: NonWebhookTriggerRegistrar, outboxConsumer: WorkflowPublicationOutboxConsumer, instanceSettings: InstanceSettings, errorReporter: ErrorReporter, tracing: Tracing, eventService: EventService, lifecycleLock: WorkflowPublicationLifecycleLock, workflowRepository: WorkflowRepository, activeWorkflowTriggers: ActiveWorkflowTriggers, publishedWorkflowTriggerDeactivator: PublishedWorkflowTriggerDeactivator); init(): void; startReconciler(): void; shutdown(): void; reconcile(reason: WorkflowPublicationReason): Promise<void>; reconcileOnLeaderTakeover(): Promise<void>; private findSurplusWorkflowIds; private removeGhostTriggers; private findMissingActiveWorkflows; private republishWorkflows; private groupByWorkflow; }