fix: FRAMEWORK vllm_bi150_r2r4 + image-verify CI (I8–I12)
All checks were successful
Docker Build / docker (push) Successful in 20m36s

This commit is contained in:
Victor Cao
2026-10-13 15:15:16 +08:00
parent fc15b61c81
commit 4c271270d4
12 changed files with 249 additions and 45 deletions

View File

@@ -24,7 +24,7 @@ jobs:
echo "GPU_TYPE=${GPU_TYPE:-}"
echo "TASK_TYPE=${TASK_TYPE:-}"
if [ -z "${FRAMEWORK:-}" ] || [ "${FRAMEWORK}" = "vllm_fix_tokenizer" ]; then
echo "FRAMEWORK 无效。本仓使用 vllm_0_17_0_corex_4_4_0。"
echo "FRAMEWORK 无效。本仓使用 vllm_bi150_r2r4。"
exit 1
fi
if [ "${GPU_TYPE:-}" != "Iluvatar_bi-150" ]; then
@@ -32,8 +32,52 @@ jobs:
exit 1
fi
IMAGE_NAME="$(echo "${{ gitea.repository }}" | tr '[:upper:]' '[:lower:]' | tr '_' '-')"
IMAGE_TAG="${{ gitea.ref_name }}"
echo "FRAMEWORK=${FRAMEWORK}" >> "$GITEA_ENV"
echo "GPU_TYPE=${GPU_TYPE}" >> "$GITEA_ENV"
echo "TASK_TYPE=${TASK_TYPE:-}" >> "$GITEA_ENV"
echo "IMAGE_NAME=${IMAGE_NAME}" >> "$GITEA_ENV"
echo "IMAGE_TAG=${{ gitea.ref_name }}" >> "$GITEA_ENV"
echo "IMAGE_TAG=${IMAGE_TAG}" >> "$GITEA_ENV"
if [ -n "${DOCKER_REGISTRY:-}" ] && [ -n "${DOCKER_USERNAME:-}" ]; then
echo "IMAGE=${DOCKER_REGISTRY}/${DOCKER_USERNAME}/${IMAGE_NAME}:${IMAGE_TAG}" >> "$GITEA_ENV"
fi
# FIXED_TOKEN 由 Runner 注入,不写进仓库,也不打印。
- name: Validate Image Verify Metadata
run: |
if [ -z "${FIXED_TOKEN:-}" ]; then
echo "FIXED_TOKEN is not configured on runner"
exit 1
fi
if ! response="$(curl --silent --show-error --location --get \
'https://modelhub.org.cn/adminApi/image-verify/validate' \
--header "Xc-Token: ${FIXED_TOKEN}" \
--data-urlencode "gpuType=${GPU_TYPE:-}" \
--data-urlencode "taskType=${TASK_TYPE:-}")"; then
echo "调用 image-verify validate 失败"
exit 1
fi
VALIDATE_RESPONSE="$response" python3 - <<'PY'
import json
import os
import sys
raw = os.environ.get("VALIDATE_RESPONSE", "")
try:
body = json.loads(raw)
except json.JSONDecodeError:
print("image-verify validate 返回的不是合法 JSON")
print(raw)
sys.exit(1)
if body.get("code") == 0 and body.get("data") is True:
print("image-verify 元数据校验通过")
sys.exit(0)
print(f"image-verify 元数据校验失败: {body.get('message') or '未知错误'}")
print(raw)
sys.exit(1)
PY
- name: Build image
run: |
@@ -45,12 +89,40 @@ jobs:
run: |
if [ -z "${DOCKER_REGISTRY:-}" ] || [ -z "${DOCKER_USERNAME:-}" ] || [ -z "${DOCKER_PASSWORD:-}" ]; then
echo "未配置 DOCKER_REGISTRY、DOCKER_USERNAME 或 DOCKER_PASSWORD。"
echo "本次为 build-only,不登录仓库,不推送镜像。"
echo "本次为 build-only,不登录仓库,不推送镜像,随后也不注册 image-verify。"
echo "PUSHED=0" >> "$GITEA_ENV"
exit 0
fi
remote="${DOCKER_REGISTRY}/${DOCKER_USERNAME}/${IMAGE_NAME}:${IMAGE_TAG}"
echo "推送目标: ${remote}"
echo "推送目标: ${IMAGE}"
echo "$DOCKER_PASSWORD" | docker login "$DOCKER_REGISTRY" -u "$DOCKER_USERNAME" --password-stdin
docker tag "${IMAGE_NAME}:${IMAGE_TAG}" "$remote"
docker push "$remote"
echo "推送完成: ${remote}"
docker tag "${IMAGE_NAME}:${IMAGE_TAG}" "$IMAGE"
docker push "$IMAGE"
echo "PUSHED=1" >> "$GITEA_ENV"
echo "推送完成: ${IMAGE}"
# 只有真的推成功才注册,build-only 没有可用的 imageUrl。
- name: Notify Image Verify
run: |
if [ "${PUSHED:-0}" != "1" ]; then
echo "镜像未推送,跳过 image-verify 注册。"
exit 0
fi
if [ -z "${FIXED_TOKEN:-}" ]; then
echo "FIXED_TOKEN is not configured on runner"
exit 1
fi
echo "注册 image-verify: ${IMAGE}"
curl --silent --show-error --fail-with-body --location --request POST \
'https://modelhub.org.cn//adminApi/image-verify' \
--header "Xc-Token: ${FIXED_TOKEN}" \
--header 'Content-Type: application/json' \
--data-raw "{
\"framework\": \"${FRAMEWORK}\",
\"gpuType\": \"${GPU_TYPE}\",
\"imageUrl\": \"${IMAGE}\",
\"taskType\": \"${TASK_TYPE}\",
\"createBy\": \"${{ gitea.actor }}\",
\"repoUrl\": \"${{ gitea.server_url }}/${{ gitea.repository }}\",
\"tag\": \"${{ gitea.ref_name }}\"
}"
echo "image-verify 注册请求已完成。适配下拉是否出现本引擎由人核对。"

View File

@@ -1,3 +1,3 @@
GPU_TYPE=Iluvatar_bi-150
FRAMEWORK=vllm_0_17_0_corex_4_4_0
FRAMEWORK=vllm_bi150_r2r4
TASK_TYPE=text-generation