Reformatting types to allow queue to be used for import and export.

This commit is contained in:
mike12345567 2022-10-17 19:42:36 +01:00
parent 8003f8b283
commit f795cb0e33
3 changed files with 55 additions and 36 deletions

View File

@ -5,8 +5,9 @@ import { Job } from "bull"
import fs from "fs"
import env from "../../../environment"
export async function init() {
await backups.addAppBackupProcessor(async (job: Job) => {
async function importProcessor(job: Job) {}
async function exportProcessor(job: Job) {
const appId = job.data.appId,
trigger = job.data.trigger,
name = job.data.name
@ -37,5 +38,8 @@ export async function init() {
// clear up the tarball after uploading it
fs.rmSync(tarPath)
})
})
}
export async function init() {
await backups.addAppBackupProcessors(importProcessor, exportProcessor)
}

View File

@ -1,5 +1,5 @@
import { db as dbCore } from "@budibase/backend-core"
import { APP_PREFIX, TABLE_ROW_PREFIX } from "../../../db/utils"
import { TABLE_ROW_PREFIX } from "../../../db/utils"
import { budibaseTempDir } from "../../../utilities/budibaseDir"
import {
DB_EXPORT_FILE,

View File

@ -6,6 +6,11 @@ export enum AppBackupTrigger {
SCHEDULED = "scheduled",
}
export enum AppBackupEventType {
EXPORT = "export",
IMPORT = "import",
}
export interface AppBackup extends Document {
trigger: AppBackupTrigger
name: string
@ -31,12 +36,22 @@ export type AppBackupFetchOpts = {
}
export interface AppBackupQueueData {
trigger: AppBackupTrigger
createdBy?: string
name?: string
eventType: AppBackupEventType
appId: string
export?: {
trigger: AppBackupTrigger
name?: string
createdBy?: string
}
import?: {
backupId: string
}
}
export interface AppBackupMetadata extends AppBackupQueueData {
export interface AppBackupMetadata {
appId: string
trigger: AppBackupTrigger
name?: string
createdBy?: string
createdAt: string
}