diff --git a/apps/dokploy/components/dashboard/database/backups/update-backup.tsx b/apps/dokploy/components/dashboard/database/backups/update-backup.tsx index d3ce1aa1..a57cf01d 100644 --- a/apps/dokploy/components/dashboard/database/backups/update-backup.tsx +++ b/apps/dokploy/components/dashboard/database/backups/update-backup.tsx @@ -221,7 +221,7 @@ export const UpdateBackup = ({ backupId, refetch }: Props) => { databaseType: backup?.backupType === "compose" ? selectedDatabaseType - : backup?.databaseType, + : (backup?.databaseType as DatabaseType), }) .then(async () => { toast.success("Backup Updated"); diff --git a/packages/server/src/db/schema/backups.ts b/packages/server/src/db/schema/backups.ts index 94461043..6dca5caa 100644 --- a/packages/server/src/db/schema/backups.ts +++ b/packages/server/src/db/schema/backups.ts @@ -71,22 +71,25 @@ export const backups = pgTable("backup", { }), userId: text("userId").references(() => users_temp.id), // Only for compose backups - metadata: jsonb("metadata").$type<{ - postgres?: { - databaseUser: string; - }; - mariadb?: { - databaseUser: string; - databasePassword: string; - }; - mongo?: { - databaseUser: string; - databasePassword: string; - }; - mysql?: { - databaseRootPassword: string; - }; - }>(), + metadata: jsonb("metadata").$type< + | { + postgres?: { + databaseUser: string; + }; + mariadb?: { + databaseUser: string; + databasePassword: string; + }; + mongo?: { + databaseUser: string; + databasePassword: string; + }; + mysql?: { + databaseRootPassword: string; + }; + } + | undefined + >(), }); export const backupsRelations = relations(backups, ({ one }) => ({ @@ -134,6 +137,7 @@ const createSchema = createInsertSchema(backups, { mysqlId: z.string().optional(), mongoId: z.string().optional(), userId: z.string().optional(), + metadata: z.object({}).optional(), }); export const apiCreateBackup = createSchema.pick({