mirror of
https://github.com/andwati/dokploy.git
synced 2026-11-07 04:22:16 +00:00
Merge pull request #3625 from Dokploy/2842-deployment-stuck-with-remote-server
2842 deployment stuck with remote server
This commit is contained in:
@@ -23,6 +23,8 @@ export const ShowDokployActions = () => {
|
|||||||
|
|
||||||
const { mutateAsync: cleanRedis } = api.settings.cleanRedis.useMutation();
|
const { mutateAsync: cleanRedis } = api.settings.cleanRedis.useMutation();
|
||||||
const { mutateAsync: reloadRedis } = api.settings.reloadRedis.useMutation();
|
const { mutateAsync: reloadRedis } = api.settings.reloadRedis.useMutation();
|
||||||
|
const { mutateAsync: cleanAllDeploymentQueue } =
|
||||||
|
api.settings.cleanAllDeploymentQueue.useMutation();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<DropdownMenu>
|
<DropdownMenu>
|
||||||
@@ -87,6 +89,21 @@ export const ShowDokployActions = () => {
|
|||||||
Clean Redis
|
Clean Redis
|
||||||
</DropdownMenuItem>
|
</DropdownMenuItem>
|
||||||
|
|
||||||
|
<DropdownMenuItem
|
||||||
|
className="cursor-pointer"
|
||||||
|
onClick={async () => {
|
||||||
|
await cleanAllDeploymentQueue()
|
||||||
|
.then(() => {
|
||||||
|
toast.success("Deployment queue cleaned");
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
toast.error("Error cleaning deployment queue");
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
Clean all deployment queue
|
||||||
|
</DropdownMenuItem>
|
||||||
|
|
||||||
<DropdownMenuItem
|
<DropdownMenuItem
|
||||||
className="cursor-pointer"
|
className="cursor-pointer"
|
||||||
onClick={async () => {
|
onClick={async () => {
|
||||||
|
|||||||
@@ -64,6 +64,7 @@ import {
|
|||||||
projects,
|
projects,
|
||||||
server,
|
server,
|
||||||
} from "@/server/db/schema";
|
} from "@/server/db/schema";
|
||||||
|
import { cleanAllDeploymentQueue } from "@/server/queues/queueSetup";
|
||||||
import { removeJob, schedule } from "@/server/utils/backup";
|
import { removeJob, schedule } from "@/server/utils/backup";
|
||||||
import packageInfo from "../../../package.json";
|
import packageInfo from "../../../package.json";
|
||||||
import { appRouter } from "../root";
|
import { appRouter } from "../root";
|
||||||
@@ -115,6 +116,12 @@ export const settingsRouter = createTRPCRouter({
|
|||||||
|
|
||||||
return true;
|
return true;
|
||||||
}),
|
}),
|
||||||
|
cleanAllDeploymentQueue: adminProcedure.mutation(async () => {
|
||||||
|
if (IS_CLOUD) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return cleanAllDeploymentQueue();
|
||||||
|
}),
|
||||||
reloadTraefik: adminProcedure
|
reloadTraefik: adminProcedure
|
||||||
.input(apiServerSchema)
|
.input(apiServerSchema)
|
||||||
.mutation(async ({ input }) => {
|
.mutation(async ({ input }) => {
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import {
|
|||||||
execAsyncRemote,
|
execAsyncRemote,
|
||||||
} from "@dokploy/server/utils/process/execAsync";
|
} from "@dokploy/server/utils/process/execAsync";
|
||||||
import { Queue } from "bullmq";
|
import { Queue } from "bullmq";
|
||||||
|
import { deploymentWorker } from "./deployments-queue";
|
||||||
import { redisConfig } from "./redis-connection";
|
import { redisConfig } from "./redis-connection";
|
||||||
|
|
||||||
const myQueue = new Queue("deployments", {
|
const myQueue = new Queue("deployments", {
|
||||||
@@ -44,6 +45,11 @@ export const cleanQueuesByApplication = async (applicationId: string) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const cleanAllDeploymentQueue = async () => {
|
||||||
|
deploymentWorker.cancelAllJobs("User requested cancellation");
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
|
||||||
export const cleanQueuesByCompose = async (composeId: string) => {
|
export const cleanQueuesByCompose = async (composeId: string) => {
|
||||||
const jobs = await myQueue.getJobs(["waiting", "delayed"]);
|
const jobs = await myQueue.getJobs(["waiting", "delayed"]);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user