diff --git a/packages/backend-core/src/events/publishers/backup.ts b/packages/backend-core/src/events/publishers/backup.ts index 0fc81da259..4a68364016 100644 --- a/packages/backend-core/src/events/publishers/backup.ts +++ b/packages/backend-core/src/events/publishers/backup.ts @@ -1,12 +1,34 @@ -import { AppBackup, AppBackupRestoreEvent, Event } from "@budibase/types" +import { + AppBackup, + AppBackupRestoreEvent, + AppBackupTriggeredEvent, + AppBackupTrigger, + AppBackupType, + Event, +} from "@budibase/types" import { publishEvent } from "../events" export async function appBackupRestored(backup: AppBackup) { const properties: AppBackupRestoreEvent = { appId: backup.appId, - backupName: backup.name!, + restoreId: backup._id!, backupCreatedAt: backup.timestamp, } await publishEvent(Event.APP_BACKUP_RESTORED, properties) } + +export async function appBackupTriggered( + appId: string, + backupId: string, + type: AppBackupType, + trigger: AppBackupTrigger +) { + const properties: AppBackupTriggeredEvent = { + appId: appId, + backupId, + type, + trigger, + } + await publishEvent(Event.APP_BACKUP_TRIGGERED, properties) +} diff --git a/packages/types/src/sdk/events/backup.ts b/packages/types/src/sdk/events/backup.ts index 8d3e2b1afa..1dddc109cc 100644 --- a/packages/types/src/sdk/events/backup.ts +++ b/packages/types/src/sdk/events/backup.ts @@ -1,7 +1,15 @@ import { BaseEvent } from "./event" +import { AppBackupTrigger, AppBackupType } from "../../documents" export interface AppBackupRestoreEvent extends BaseEvent { appId: string - backupName: string + restoreId: string backupCreatedAt: string } + +export interface AppBackupTriggeredEvent extends BaseEvent { + backupId: string + appId: string + trigger: AppBackupTrigger + type: AppBackupType +} diff --git a/packages/types/src/sdk/events/event.ts b/packages/types/src/sdk/events/event.ts index 71caf2bf96..10c5dfc6b0 100644 --- a/packages/types/src/sdk/events/event.ts +++ b/packages/types/src/sdk/events/event.ts @@ -171,6 +171,7 @@ export enum Event { // BACKUP APP_BACKUP_RESTORED = "app:backup:restored", + APP_BACKUP_TRIGGERED = "app:backup:triggered", } // properties added at the final stage of the event pipeline