Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled
33 lines
928 B
TypeScript
33 lines
928 B
TypeScript
import type { WorkflowHistory, WorkflowPublishHistory } from '@n8n/db';
|
|
import { WorkflowPublishHistoryRepository } from '@n8n/db';
|
|
import { Container } from '@n8n/di';
|
|
|
|
export async function createWorkflowPublishHistoryItem(
|
|
workflowHistory: Pick<WorkflowHistory, 'workflowId' | 'versionId'>,
|
|
data?: Partial<WorkflowPublishHistory>,
|
|
) {
|
|
return await Container.get(WorkflowPublishHistoryRepository).save({
|
|
workflowId: workflowHistory.workflowId,
|
|
versionId: workflowHistory.versionId,
|
|
event: 'activated',
|
|
userId: null,
|
|
...(data ?? {}),
|
|
});
|
|
}
|
|
|
|
export async function createManyWorkflowPublishHistoryItems(
|
|
workflowHistory: WorkflowHistory,
|
|
count: number,
|
|
time?: Date,
|
|
) {
|
|
const baseTime = (time ?? new Date()).valueOf();
|
|
return await Promise.all(
|
|
[...Array(count)].map(
|
|
async (_, i) =>
|
|
await createWorkflowPublishHistoryItem(workflowHistory, {
|
|
createdAt: new Date(baseTime + i),
|
|
}),
|
|
),
|
|
);
|
|
}
|