From bb793a41fc0a04168cfd4e499341c992d62283d7 Mon Sep 17 00:00:00 2001 From: jialin Date: Fri, 19 Dec 2025 14:54:47 +0800 Subject: [PATCH] fix: entrypoint do not display in edit --- src/pages/backends/components/add-modal.tsx | 27 +++++++++++-------- .../components/version-info-modal.tsx | 1 + src/pages/backends/config/index.ts | 3 +++ src/pages/backends/config/schema/create.json | 8 ++++++ .../config/schema/update-builtin.json | 4 +++ .../backends/config/schema/update-custom.json | 4 +++ src/pages/backends/forms/version-info.tsx | 10 +++++++ src/pages/backends/forms/versions-config.tsx | 2 ++ 8 files changed, 48 insertions(+), 11 deletions(-) diff --git a/src/pages/backends/components/add-modal.tsx b/src/pages/backends/components/add-modal.tsx index 0e14bce0..0b82f6e5 100644 --- a/src/pages/backends/components/add-modal.tsx +++ b/src/pages/backends/components/add-modal.tsx @@ -51,6 +51,13 @@ const AddModal: React.FC = (props) => { const [yamlContent, setYamlContent] = useState(''); const [formContent, setFormContent] = useState({} as FormData); + const versionFields = [ + 'image_name', + 'run_command', + 'custom_framework', + 'entrypoint' + ]; + // remove '-custom' suffix from version_no in currentData, when action is EDIT const genertateCurrentVersionData = (values: ListItem): ListItem => { const data = { ...values }; @@ -82,10 +89,7 @@ const AddModal: React.FC = (props) => { (acc: Record, curr) => { if (curr.version_no) { acc[curr.version_no] = { - custom_framework: curr.custom_framework, - image_name: curr.image_name, - run_command: curr.run_command, - entrypoint: curr.entrypoint + ..._.pick(curr, versionFields) }; } return acc; @@ -111,10 +115,8 @@ const AddModal: React.FC = (props) => { const versionConfigs = Object.keys(values.version_configs || {}).map( (key: string) => ({ version_no: key, - image_name: values.version_configs?.[key]?.image_name, - run_command: values.version_configs?.[key]?.run_command, - custom_framework: values.version_configs?.[key]?.custom_framework, - is_default: key === values.default_version + is_default: key === values.default_version, + ..._.pick(values.version_configs?.[key], versionFields) }) ); @@ -123,12 +125,15 @@ const AddModal: React.FC = (props) => { values.built_in_version_configs || {} ).map((key) => ({ version_no: key, - image_name: values.built_in_version_configs?.[key]?.image_name, - run_command: values.built_in_version_configs?.[key]?.run_command, is_default: key === values.default_version, built_in_frameworks: values.built_in_version_configs?.[key]?.built_in_frameworks || [], - is_built_in: true + is_built_in: true, + ..._.pick(values.built_in_version_configs?.[key], [ + 'image_name', + 'run_command', + 'entrypoint' + ]) })); return { diff --git a/src/pages/backends/components/version-info-modal.tsx b/src/pages/backends/components/version-info-modal.tsx index 5b9ed9c8..b3d0fc0b 100644 --- a/src/pages/backends/components/version-info-modal.tsx +++ b/src/pages/backends/components/version-info-modal.tsx @@ -43,6 +43,7 @@ const VersionInfoModal: React.FC = ({ version_no: key, image_name: value.image_name, run_command: value.run_command, + entrypoint: value.entrypoint, is_default: key === currentData.default_version, availableFrameworks: [ ...(value.built_in_frameworks || []), diff --git a/src/pages/backends/config/index.ts b/src/pages/backends/config/index.ts index 506e8318..ffef4265 100644 --- a/src/pages/backends/config/index.ts +++ b/src/pages/backends/config/index.ts @@ -199,6 +199,7 @@ export const yamlTemplate = `# ---------------------------------------- # version_configs: # - image_name: required # - run_command: optional +# - entrypoint: optional # - custom_framework: # - optional # - choose from: ${Object.values(GPUDriverMap).join(', ')}, CPU @@ -214,9 +215,11 @@ version_configs: v0.11.0: image_name: lm/vllm:latest run_command: vllm serve {{model_path}} --port {{port}} --host {{worker_ip}} --served-model-name {{model_name}} + entrypoint: "/bin/sh -c" custom_framework: cuda v0.10.0: image_name: lm/vllm:test + entrypoint: run_command: custom_framework: `; diff --git a/src/pages/backends/config/schema/create.json b/src/pages/backends/config/schema/create.json index 911bb59a..195e0884 100644 --- a/src/pages/backends/config/schema/create.json +++ b/src/pages/backends/config/schema/create.json @@ -48,6 +48,10 @@ "type": ["string", "null"], "description": "start command" }, + "entrypoint": { + "type": "string", + "description": "Override the default ENTRYPOINT of the image" + }, "custom_framework": { "type": ["string", "null"], "description": "custom framework" @@ -74,6 +78,10 @@ "type": ["string", "null"], "description": "start command" }, + "entrypoint": { + "type": "string", + "description": "Override the default ENTRYPOINT of the image" + }, "custom_framework": { "type": ["string", "null"], "description": "custom framework" diff --git a/src/pages/backends/config/schema/update-builtin.json b/src/pages/backends/config/schema/update-builtin.json index c5741411..1680e9a0 100644 --- a/src/pages/backends/config/schema/update-builtin.json +++ b/src/pages/backends/config/schema/update-builtin.json @@ -34,6 +34,10 @@ "type": ["string", "null"], "description": "start command" }, + "entrypoint": { + "type": "string", + "description": "Override the default ENTRYPOINT of the image" + }, "custom_framework": { "type": ["string", "null"], "description": "custom framework" diff --git a/src/pages/backends/config/schema/update-custom.json b/src/pages/backends/config/schema/update-custom.json index 528d3d39..d63ea9e7 100644 --- a/src/pages/backends/config/schema/update-custom.json +++ b/src/pages/backends/config/schema/update-custom.json @@ -38,6 +38,10 @@ "type": ["string", "null"], "description": "start command" }, + "entrypoint": { + "type": "string", + "description": "Override the default ENTRYPOINT of the image" + }, "custom_framework": { "type": ["string", "null"], "description": "custom framework" diff --git a/src/pages/backends/forms/version-info.tsx b/src/pages/backends/forms/version-info.tsx index b52f0025..0e46adb7 100644 --- a/src/pages/backends/forms/version-info.tsx +++ b/src/pages/backends/forms/version-info.tsx @@ -112,6 +112,16 @@ export const VersionItem: React.FC = ({ data }) => { )} + {data.entrypoint && ( + + + {intl.formatMessage({ id: 'backend.replaceEntrypoint' })}: + + + {data.entrypoint} + + + )} {data.run_command && ( diff --git a/src/pages/backends/forms/versions-config.tsx b/src/pages/backends/forms/versions-config.tsx index 734d5c81..eeabcf1c 100644 --- a/src/pages/backends/forms/versions-config.tsx +++ b/src/pages/backends/forms/versions-config.tsx @@ -73,6 +73,7 @@ const VersionsForm: React.FC = ({ version_no: '', image_name: '', run_command: '', + entrypoint: '', isBuiltin: false, is_default: false } @@ -99,6 +100,7 @@ const VersionsForm: React.FC = ({ version_no: '', image_name: '', run_command: '', + entrypoint: '', isBuiltin: false, is_default: false };