Compare commits

..
Author SHA1 Message Date
KarrixLee 3ed9729960 chore: version to 2.3.0 2025-08-21 18:37:30 +08:00
KarrixLee 9147ddd2e1 tweak machine display 2025-08-21 04:09:03 +08:00
KarrixLee 4c4fcc09c0 small tweak 2025-08-21 03:50:43 +08:00
KarrixLee dee5c9e071 refactor: improve snapshot fetching and UI adjustments
- Introduced centralized snapshot fetching utilities in snapshot-utils.js, including a fallback for ComfyUI version retrieval.
- Updated machine-manager.js to utilize the new snapshot fetching methods, enhancing error handling and code clarity.
- Adjusted index.js to streamline snapshot fetching during workflow deployment.
- Made minor UI adjustments in workflow-list.js for better layout consistency.

These changes enhance the application's robustness in handling snapshots and improve overall user experience.
2025-08-21 03:44:11 +08:00
KarrixLee 0539464d62 add: blacklist node 2025-08-21 03:04:12 +08:00
KarrixLee e5d3f66296 add error 2025-08-21 02:57:14 +08:00
KarrixLee 8962549393 add: create machine from local 2025-08-21 02:50:43 +08:00
KarrixLee 1a78c04cba can sync machine 2025-08-21 02:29:41 +08:00
KarrixLee 4fdfe7c18a compare list 2025-08-21 01:53:13 +08:00
KarrixLee 19e175c571 fetch docker steps in backend 2025-08-20 23:30:02 +08:00
KarrixLee de5a1791d4 remove unused code 2025-08-19 22:40:02 +08:00
KarrixLee ab265cf3ec add: machine id when create 2025-08-19 21:57:34 +08:00
KarrixLee 1a8519b5d4 refactor: enhance machine management UI and functionality
- Removed console error logs for improved user experience during initialization.
- Updated the display styles for "No machine found" and error messages to enhance visual clarity.
- Added buttons for adding and updating machines directly from the error and no machine states.
- Implemented a dialog for adding and updating machine IDs, improving user interaction.
- Adjusted the machine addition process to show loading states and ensure proper DOM updates.

These changes significantly improve the usability and functionality of the machine management feature.
2025-08-19 21:08:45 +08:00
KarrixLee 10b84ab722 initt: add machine management functionality
- Implemented a new endpoint in custom_routes.py to retrieve machine details by ID.
- Introduced machine-manager.js to handle machine data fetching, display, and local storage management.
- Updated index.js to initialize the machine manager and display machine information in the UI.
- Adjusted workflow-list.js to modify the layout for better integration with the new machine management features.

These changes enhance the application's capability to manage and display serverless machine information effectively.
2025-08-19 20:49:57 +08:00
6 changed files with 192 additions and 962 deletions
-8
View File
@@ -672,14 +672,6 @@ async def comfy_deploy_run(request):
return web.json_response(res, status=status)
@server.PromptServer.instance.routes.post("/comfyui-deploy/interrupt")
async def interrupt_prompt(request):
data = await request.json()
prompt_id = data.get("prompt_id")
await update_run(prompt_id, Status.CANCELLED)
return web.json_response({"message": "Prompt interrupted"}, status=200)
async def stream_prompt(data, token):
# In older version, we use workflow_api, but this has inputs already swapped in nextjs frontend, which is tricky
workflow_api = data.get("workflow_api_raw")
-1
View File
@@ -18,7 +18,6 @@ class Status(Enum):
SUCCESS = "success"
FAILED = "failed"
UPLOADING = "uploading"
CANCELLED = "cancelled"
class StreamingPrompt(BaseModel):
+1 -1
View File
@@ -1,7 +1,7 @@
[project]
name = "comfyui-deploy"
description = "Open source comfyui deployment platform, a vercel for generative workflow infra."
version = "2.3.3"
version = "2.3.0"
license = { file = "LICENSE" }
dependencies = ["aiofiles", "pydantic", "opencv-python", "imageio-ffmpeg", "tabulate", "brotli"]
+188 -919
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1475,7 +1475,7 @@ window.applySyncChanges = async function (machineId) {
// Close the dialog
closeSyncDialog();
if (response.id) {
if (response.ok) {
window.app.extensionManager.toast.add({
severity: "success",
summary: "Machine updated successfully",
+2 -32
View File
@@ -49,7 +49,6 @@ async function fetchWorkflows(getData, offset = 0, limit = 20, search = "") {
function createWorkflowItem(workflow, getTimeAgo, getData) {
const li = document.createElement("li");
let loadingToast = null;
li.style.cssText = `
border-bottom: 1px solid #444;
background: transparent;
@@ -75,7 +74,7 @@ function createWorkflowItem(workflow, getTimeAgo, getData) {
}
// Show loading toast
loadingToast = window.app.extensionManager.toast.add({
const loadingToast = window.app.extensionManager.toast.add({
severity: "info",
summary: "Loading workflow...",
detail: `Loading "${workflow.name}"`,
@@ -109,33 +108,6 @@ function createWorkflowItem(workflow, getTimeAgo, getData) {
// Load the workflow
window.app.loadGraphData(latestVersion.workflow);
// Wait a bit for the graph to fully load before checking for ComfyDeploy node
await new Promise((resolve) => setTimeout(resolve, 100));
// Check if ComfyDeploy node exists, if not add it back
const graph = window.app.graph;
let deployMeta = graph.findNodesByType("ComfyDeploy");
if (deployMeta.length === 0) {
// Add ComfyDeploy node with workflow metadata
graph.beforeChange();
const node = LiteGraph.createNode("ComfyDeploy");
node.configure({
widgets_values: [
workflow.name, // workflow_name
workflow.id, // workflow_id
latestVersion.version, // version
],
});
node.pos = [0, 0];
graph.add(node);
graph.afterChange();
console.log(
`Added ComfyDeploy node with: name="${workflow.name}", id="${workflow.id}", version="${latestVersion.version}"`
);
}
// Show success toast
window.app.extensionManager.toast.add({
severity: "success",
@@ -155,9 +127,7 @@ function createWorkflowItem(workflow, getTimeAgo, getData) {
life: 5000,
});
} finally {
if (loadingToast) {
loadingToast.close();
}
loadingToast.close();
}
});