From ac5aba2aa91185ed5ae58c265803fbf4620016cd Mon Sep 17 00:00:00 2001 From: Nick Kao <45542006+NicholasKao1029@users.noreply.github.com> Date: Fri, 26 Jan 2024 18:21:15 -0800 Subject: [PATCH] model volume rename, env for flyio, public and private volumes tested tgt, everything is a public model (#3) --- builder/modal-builder/.env.example | 1 + builder/modal-builder/src/main.py | 5 +- web/bun.lockb | Bin 500505 -> 500865 bytes web/drizzle/0044_panoramic_mister_fear.sql | 1 + web/drizzle/meta/0044_snapshot.json | 1289 ++++++++++++++++++++ web/drizzle/meta/_journal.json | 7 + web/src/components/ModelList.tsx | 2 +- web/src/db/schema.ts | 2 +- web/src/server/curdModel.ts | 8 +- 9 files changed, 1306 insertions(+), 9 deletions(-) create mode 100644 web/drizzle/0044_panoramic_mister_fear.sql create mode 100644 web/drizzle/meta/0044_snapshot.json diff --git a/builder/modal-builder/.env.example b/builder/modal-builder/.env.example index 16d715c..dc4da08 100644 --- a/builder/modal-builder/.env.example +++ b/builder/modal-builder/.env.example @@ -5,3 +5,4 @@ CIVITAI_API_KEY= # On production set to False DEPLOY_TEST_FLAG=True CIVITAI_API_KEY= +PUBLIC_MODEL_VOLUME_NAME= diff --git a/builder/modal-builder/src/main.py b/builder/modal-builder/src/main.py index f486b56..3381573 100644 --- a/builder/modal-builder/src/main.py +++ b/builder/modal-builder/src/main.py @@ -47,7 +47,8 @@ machine_id_websocket_dict = {} machine_id_status = {} fly_instance_id = os.environ.get('FLY_ALLOC_ID', 'local').split('-')[0] -civitai_api_key = os.environ.get('FLY_ALLOC_ID', 'local').split('-')[0] +civitai_api_key = os.environ.get('FLY_ALLOC_ID', 'local') +public_model_volume_name = os.environ.get('PUBLIC_MODEL_VOLUME_NAME', 'local') class FlyReplayMiddleware(BaseHTTPMiddleware): @@ -388,7 +389,7 @@ async def build_logic(item: Item): "name": item.name, "deploy_test": os.environ.get("DEPLOY_TEST_FLAG", "False"), "gpu": item.gpu, - "public_model_volume": "model-store", + "public_model_volume": public_model_volume_name, "private_model_volume": item.model_volume_name, "pip": list(pip_modules) } diff --git a/web/bun.lockb b/web/bun.lockb index 9f144a978c784656ffedac9df4551c5907b5f7a0..c3594d80015954ad5eff3d8b385b850265593498 100755 GIT binary patch delta 19969 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

)6_>zy|f?tn=2o14qHXLmdVEep^+h{jI8yvr$sj zZ8H55gq+qauYZXZ|5uA)3^I&r??Klz9I}*fFm!P`w%VOx#&&wl>@X)IwD=c-*Q zdrf7+t{Sbn5qiho$rbBERqvQ9c(fOhkVZUcl3`Y6@@;G#YZBB zl%htgJsQ!WbL!4oe-xtV(AiOH9ow<@aXWPX|0C2XvX%@*Idh);W3%bj4{oYnwO=J$ zf7!nE;~H)Ahg_r1fa&lx1kACw{3l??#TXxK3z*;hY|9QFuD52{JidNRI-6+UMEWfGtsugs>w#sFA=PUEQ2fwtd49XSu)t`nt6;&LI+?YpbYLL!=-M# z0+W(Ob~p5!iWtTyvcYKYCmRhG13d(GB3{EB`lX=hCmW-f$1sKh1_*QMI1KCx*;ukv zuA{YHTO(6Y%>&Wf_YkeGMO4=Y7{sSlJN>1|xW!tN;K2 diff --git a/web/drizzle/0044_panoramic_mister_fear.sql b/web/drizzle/0044_panoramic_mister_fear.sql new file mode 100644 index 0000000..d475606 --- /dev/null +++ b/web/drizzle/0044_panoramic_mister_fear.sql @@ -0,0 +1 @@ +ALTER TABLE "comfyui_deploy"."models" ALTER COLUMN "is_public" SET DEFAULT true; \ No newline at end of file diff --git a/web/drizzle/meta/0044_snapshot.json b/web/drizzle/meta/0044_snapshot.json new file mode 100644 index 0000000..09e6cc6 --- /dev/null +++ b/web/drizzle/meta/0044_snapshot.json @@ -0,0 +1,1289 @@ +{ + "id": "9328bbb1-3335-46cb-a005-c00f9959ab4b", + "prevId": "dd44755e-6a0d-4259-a920-c907b5edf078", + "version": "5", + "dialect": "pg", + "tables": { + "api_keys": { + "name": "api_keys", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "key": { + "name": "key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "revoked": { + "name": "revoked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "api_keys_user_id_users_id_fk": { + "name": "api_keys_user_id_users_id_fk", + "tableFrom": "api_keys", + "tableTo": "users", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "api_keys_key_unique": { + "name": "api_keys_key_unique", + "nullsNotDistinct": false, + "columns": [ + "key" + ] + } + } + }, + "auth_requests": { + "name": "auth_requests", + "schema": "comfyui_deploy", + "columns": { + "request_id": { + "name": "request_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "api_hash": { + "name": "api_hash", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "expired_date": { + "name": "expired_date", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "deployments": { + "name": "deployments", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workflow_version_id": { + "name": "workflow_version_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "machine_id": { + "name": "machine_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "share_slug": { + "name": "share_slug", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "showcase_media": { + "name": "showcase_media", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "environment": { + "name": "environment", + "type": "deployment_environment", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "deployments_user_id_users_id_fk": { + "name": "deployments_user_id_users_id_fk", + "tableFrom": "deployments", + "tableTo": "users", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "deployments_workflow_version_id_workflow_versions_id_fk": { + "name": "deployments_workflow_version_id_workflow_versions_id_fk", + "tableFrom": "deployments", + "tableTo": "workflow_versions", + "columnsFrom": [ + "workflow_version_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "no action", + "onUpdate": "no action" + }, + "deployments_workflow_id_workflows_id_fk": { + "name": "deployments_workflow_id_workflows_id_fk", + "tableFrom": "deployments", + "tableTo": "workflows", + "columnsFrom": [ + "workflow_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "deployments_machine_id_machines_id_fk": { + "name": "deployments_machine_id_machines_id_fk", + "tableFrom": "deployments", + "tableTo": "machines", + "columnsFrom": [ + "machine_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "no action", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "deployments_share_slug_unique": { + "name": "deployments_share_slug_unique", + "nullsNotDistinct": false, + "columns": [ + "share_slug" + ] + } + } + }, + "machines": { + "name": "machines", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "endpoint": { + "name": "endpoint", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "disabled": { + "name": "disabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "auth_token": { + "name": "auth_token", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "type": { + "name": "type", + "type": "machine_type", + "primaryKey": false, + "notNull": true, + "default": "'classic'" + }, + "status": { + "name": "status", + "type": "machine_status", + "primaryKey": false, + "notNull": true, + "default": "'ready'" + }, + "snapshot": { + "name": "snapshot", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "models": { + "name": "models", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "gpu": { + "name": "gpu", + "type": "machine_gpu", + "primaryKey": false, + "notNull": false + }, + "build_machine_instance_id": { + "name": "build_machine_instance_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "build_log": { + "name": "build_log", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": {}, + "foreignKeys": { + "machines_user_id_users_id_fk": { + "name": "machines_user_id_users_id_fk", + "tableFrom": "machines", + "tableTo": "users", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "models": { + "name": "models", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "user_volume_id": { + "name": "user_volume_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "model_name": { + "name": "model_name", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "folder_path": { + "name": "folder_path", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "civitai_id": { + "name": "civitai_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "civitai_version_id": { + "name": "civitai_version_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "civitai_url": { + "name": "civitai_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "civitai_download_url": { + "name": "civitai_download_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "civitai_model_response": { + "name": "civitai_model_response", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "hf_url": { + "name": "hf_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "s3_url": { + "name": "s3_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "client_url": { + "name": "client_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "is_public": { + "name": "is_public", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "status": { + "name": "status", + "type": "resource_upload", + "primaryKey": false, + "notNull": true, + "default": "'started'" + }, + "upload_machine_id": { + "name": "upload_machine_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "upload_type": { + "name": "upload_type", + "type": "model_upload_type", + "primaryKey": false, + "notNull": true + }, + "model_type": { + "name": "model_type", + "type": "model_type", + "primaryKey": false, + "notNull": true, + "default": "'checkpoint'" + }, + "error_log": { + "name": "error_log", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "models_user_id_users_id_fk": { + "name": "models_user_id_users_id_fk", + "tableFrom": "models", + "tableTo": "users", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "no action", + "onUpdate": "no action" + }, + "models_user_volume_id_user_volume_id_fk": { + "name": "models_user_volume_id_user_volume_id_fk", + "tableFrom": "models", + "tableTo": "user_volume", + "columnsFrom": [ + "user_volume_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "subscription_status": { + "name": "subscription_status", + "schema": "comfyui_deploy", + "columns": { + "stripe_customer_id": { + "name": "stripe_customer_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "plan": { + "name": "plan", + "type": "subscription_plan", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "subscription_plan_status", + "primaryKey": false, + "notNull": true + }, + "subscription_id": { + "name": "subscription_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "subscription_item_plan_id": { + "name": "subscription_item_plan_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "subscription_item_api_id": { + "name": "subscription_item_api_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "cancel_at_period_end": { + "name": "cancel_at_period_end", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "user_usage": { + "name": "user_usage", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "usage_time": { + "name": "usage_time", + "type": "real", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "ended_at": { + "name": "ended_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "user_usage_user_id_users_id_fk": { + "name": "user_usage_user_id_users_id_fk", + "tableFrom": "user_usage", + "tableTo": "users", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "user_volume": { + "name": "user_volume", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "volume_name": { + "name": "volume_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "disabled": { + "name": "disabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + } + }, + "indexes": {}, + "foreignKeys": { + "user_volume_user_id_users_id_fk": { + "name": "user_volume_user_id_users_id_fk", + "tableFrom": "user_volume", + "tableTo": "users", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "no action", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "users": { + "name": "users", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "username": { + "name": "username", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "workflow_run_outputs": { + "name": "workflow_run_outputs", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "run_id": { + "name": "run_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "data": { + "name": "data", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "workflow_run_outputs_run_id_workflow_runs_id_fk": { + "name": "workflow_run_outputs_run_id_workflow_runs_id_fk", + "tableFrom": "workflow_run_outputs", + "tableTo": "workflow_runs", + "columnsFrom": [ + "run_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "workflow_runs": { + "name": "workflow_runs", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "workflow_version_id": { + "name": "workflow_version_id", + "type": "uuid", + "primaryKey": false, + "notNull": false + }, + "workflow_inputs": { + "name": "workflow_inputs", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "workflow_id": { + "name": "workflow_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "machine_id": { + "name": "machine_id", + "type": "uuid", + "primaryKey": false, + "notNull": false + }, + "origin": { + "name": "origin", + "type": "workflow_run_origin", + "primaryKey": false, + "notNull": true, + "default": "'api'" + }, + "status": { + "name": "status", + "type": "workflow_run_status", + "primaryKey": false, + "notNull": true, + "default": "'not-started'" + }, + "ended_at": { + "name": "ended_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "started_at": { + "name": "started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "gpu": { + "name": "gpu", + "type": "machine_gpu", + "primaryKey": false, + "notNull": false + }, + "machine_type": { + "name": "machine_type", + "type": "machine_type", + "primaryKey": false, + "notNull": false + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": {}, + "foreignKeys": { + "workflow_runs_workflow_version_id_workflow_versions_id_fk": { + "name": "workflow_runs_workflow_version_id_workflow_versions_id_fk", + "tableFrom": "workflow_runs", + "tableTo": "workflow_versions", + "columnsFrom": [ + "workflow_version_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + }, + "workflow_runs_workflow_id_workflows_id_fk": { + "name": "workflow_runs_workflow_id_workflows_id_fk", + "tableFrom": "workflow_runs", + "tableTo": "workflows", + "columnsFrom": [ + "workflow_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_runs_machine_id_machines_id_fk": { + "name": "workflow_runs_machine_id_machines_id_fk", + "tableFrom": "workflow_runs", + "tableTo": "machines", + "columnsFrom": [ + "machine_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "workflows": { + "name": "workflows", + "schema": "comfyui_deploy", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "org_id": { + "name": "org_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "workflows_user_id_users_id_fk": { + "name": "workflows_user_id_users_id_fk", + "tableFrom": "workflows", + "tableTo": "users", + "columnsFrom": [ + "user_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + }, + "workflow_versions": { + "name": "workflow_versions", + "schema": "comfyui_deploy", + "columns": { + "workflow_id": { + "name": "workflow_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "workflow": { + "name": "workflow", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "workflow_api": { + "name": "workflow_api", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "version": { + "name": "version", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "snapshot": { + "name": "snapshot", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "workflow_versions_workflow_id_workflows_id_fk": { + "name": "workflow_versions_workflow_id_workflows_id_fk", + "tableFrom": "workflow_versions", + "tableTo": "workflows", + "columnsFrom": [ + "workflow_id" + ], + "columnsTo": [ + "id" + ], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {} + } + }, + "enums": { + "deployment_environment": { + "name": "deployment_environment", + "values": { + "staging": "staging", + "production": "production", + "public-share": "public-share" + } + }, + "machine_gpu": { + "name": "machine_gpu", + "values": { + "T4": "T4", + "A10G": "A10G", + "A100": "A100" + } + }, + "machine_status": { + "name": "machine_status", + "values": { + "ready": "ready", + "building": "building", + "error": "error" + } + }, + "machine_type": { + "name": "machine_type", + "values": { + "classic": "classic", + "runpod-serverless": "runpod-serverless", + "modal-serverless": "modal-serverless", + "comfy-deploy-serverless": "comfy-deploy-serverless" + } + }, + "model_type": { + "name": "model_type", + "values": { + "checkpoint": "checkpoint", + "lora": "lora", + "embedding": "embedding", + "vae": "vae" + } + }, + "model_upload_type": { + "name": "model_upload_type", + "values": { + "civitai": "civitai", + "huggingface": "huggingface", + "other": "other" + } + }, + "resource_upload": { + "name": "resource_upload", + "values": { + "started": "started", + "success": "success", + "failed": "failed" + } + }, + "subscription_plan": { + "name": "subscription_plan", + "values": { + "basic": "basic", + "pro": "pro", + "enterprise": "enterprise" + } + }, + "subscription_plan_status": { + "name": "subscription_plan_status", + "values": { + "active": "active", + "deleted": "deleted", + "paused": "paused" + } + }, + "workflow_run_origin": { + "name": "workflow_run_origin", + "values": { + "manual": "manual", + "api": "api", + "public-share": "public-share" + } + }, + "workflow_run_status": { + "name": "workflow_run_status", + "values": { + "not-started": "not-started", + "running": "running", + "uploading": "uploading", + "success": "success", + "failed": "failed" + } + } + }, + "schemas": { + "comfyui_deploy": "comfyui_deploy" + }, + "_meta": { + "schemas": {}, + "tables": {}, + "columns": {} + } +} \ No newline at end of file diff --git a/web/drizzle/meta/_journal.json b/web/drizzle/meta/_journal.json index 7202d4f..5786536 100644 --- a/web/drizzle/meta/_journal.json +++ b/web/drizzle/meta/_journal.json @@ -309,6 +309,13 @@ "when": 1706241449348, "tag": "0043_wealthy_nicolaos", "breakpoints": true + }, + { + "idx": 44, + "version": "5", + "when": 1706317908300, + "tag": "0044_panoramic_mister_fear", + "breakpoints": true } ] } \ No newline at end of file diff --git a/web/src/components/ModelList.tsx b/web/src/components/ModelList.tsx index b68a367..fdfecc5 100644 --- a/web/src/components/ModelList.tsx +++ b/web/src/components/ModelList.tsx @@ -90,7 +90,7 @@ export const columns: ColumnDef[] = [ {model.is_public - ? Public + ? <> : Private} ); diff --git a/web/src/db/schema.ts b/web/src/db/schema.ts index ce95630..827953e 100644 --- a/web/src/db/schema.ts +++ b/web/src/db/schema.ts @@ -414,7 +414,7 @@ export const modelTable = dbSchema.table("models", { s3_url: text("s3_url"), user_url: text("client_url"), - is_public: boolean("is_public").notNull().default(false), + is_public: boolean("is_public").notNull().default(true), status: resourceUpload("status").notNull().default("started"), upload_machine_id: text("upload_machine_id"), // TODO: review if actually needed upload_type: modelUploadType("upload_type").notNull(), diff --git a/web/src/server/curdModel.ts b/web/src/server/curdModel.ts index cd22d16..314ae64 100644 --- a/web/src/server/curdModel.ts +++ b/web/src/server/curdModel.ts @@ -90,11 +90,10 @@ export async function addModelVolume() { .values({ user_id: userId, org_id: orgId, - volume_name: `checkpoints_${userId}`, - // created_at and updated_at will be set to current timestamp by default - disabled: false, // Default value + volume_name: `models_${orgId ? orgId: userId}`, // if orgid is avalible use as part of the volume name + disabled: false, }) - .returning(); // Returns the inserted row + .returning(); return insertedVolume; } @@ -121,7 +120,6 @@ export const addCivitaiModel = withServerPromise( const civitaiModelRes = await fetch(url) .then((x) => x.json()) .then((a) => { - console.log(a); return CivitaiModelResponse.parse(a); });