mirror of
https://github.com/Dokploy/dokploy.git
synced 2026-07-05 22:15:22 +02:00
feat: enhance rollback functionality with UI updates and database schema changes
- Updated Tailwind configuration for responsive design. - Modified the ShowDeployments component to include rollback settings and actions. - Introduced a new "rollback" table in the database schema with foreign key relationships. - Updated deployment and application schemas to support rollback features. - Added rollback mutation to the API for initiating rollbacks.
This commit is contained in:
@@ -65,7 +65,11 @@ export const deploymentRouter = createTRPCRouter({
|
||||
const deploymentsList = await db.query.deployments.findMany({
|
||||
where: eq(deployments[`${input.type}Id`], input.id),
|
||||
orderBy: desc(deployments.createdAt),
|
||||
with: {
|
||||
rollback: true,
|
||||
},
|
||||
});
|
||||
|
||||
return deploymentsList;
|
||||
}),
|
||||
});
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
|
||||
import { apiFindOneRollback, rollbacks } from "@/server/db/schema";
|
||||
import { apiFindOneRollback } from "@/server/db/schema";
|
||||
import { removeRollbackById, rollback } from "@dokploy/server";
|
||||
import { TRPCError } from "@trpc/server";
|
||||
import { eq, desc } from "drizzle-orm";
|
||||
import { db } from "@/server/db";
|
||||
import { z } from "zod";
|
||||
// import { eq, desc } from "drizzle-orm";
|
||||
// import { db } from "@/server/db";
|
||||
// import { z } from "zod";
|
||||
|
||||
export const rollbackRouter = createTRPCRouter({
|
||||
delete: protectedProcedure
|
||||
@@ -23,26 +23,26 @@ export const rollbackRouter = createTRPCRouter({
|
||||
});
|
||||
}
|
||||
}),
|
||||
all: protectedProcedure
|
||||
.input(
|
||||
z.object({
|
||||
applicationId: z.string(),
|
||||
}),
|
||||
)
|
||||
.query(async ({ input }) => {
|
||||
try {
|
||||
return await db.query.rollbacks.findMany({
|
||||
where: eq(rollbacks.applicationId, input.applicationId),
|
||||
orderBy: desc(rollbacks.createdAt),
|
||||
});
|
||||
} catch (error) {
|
||||
throw new TRPCError({
|
||||
code: "BAD_REQUEST",
|
||||
message: "Error input: Fetching rollbacks",
|
||||
cause: error,
|
||||
});
|
||||
}
|
||||
}),
|
||||
// all: protectedProcedure
|
||||
// .input(
|
||||
// z.object({
|
||||
// applicationId: z.string(),
|
||||
// }),
|
||||
// )
|
||||
// .query(async ({ input }) => {
|
||||
// try {
|
||||
// return await db.query.rollbacks.findMany({
|
||||
// where: eq(rollbacks.applicationId, input.applicationId),
|
||||
// orderBy: desc(rollbacks.createdAt),
|
||||
// });
|
||||
// } catch (error) {
|
||||
// throw new TRPCError({
|
||||
// code: "BAD_REQUEST",
|
||||
// message: "Error input: Fetching rollbacks",
|
||||
// cause: error,
|
||||
// });
|
||||
// }
|
||||
// }),
|
||||
rollback: protectedProcedure
|
||||
.input(apiFindOneRollback)
|
||||
.mutation(async ({ input }) => {
|
||||
|
||||
Reference in New Issue
Block a user