fix(deploy): correct import API path + show actual error on failure
- /api/private/migrate/import → /api/private/deployment/migrate/import - replace -sf with -s + HTTP status check to surface real error message Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
这个提交包含在:
父节点
4b41b0bdbe
当前提交
54f4d2a06f
@ -800,11 +800,16 @@ print(json.dumps(resp['data']))
|
|||||||
ok "租户数据已从公有平台导出"
|
ok "租户数据已从公有平台导出"
|
||||||
|
|
||||||
printf ' 正在导入租户数据到私有部署 ...\n'
|
printf ' 正在导入租户数据到私有部署 ...\n'
|
||||||
_IMPORT_RESP=$(printf '%s' "$_EXPORT_DATA" | curl -sf --max-time 30 -X POST \
|
_IMPORT_RESP=$(printf '%s' "$_EXPORT_DATA" | curl -s --max-time 30 -X POST \
|
||||||
-H "Content-Type: application/json" \
|
-H "Content-Type: application/json" \
|
||||||
--data-binary @- \
|
--data-binary @- \
|
||||||
"http://127.0.0.1/api/private/migrate/import") \
|
-w "\n__HTTP_STATUS__:%{http_code}" \
|
||||||
|| fail "导入失败:私有平台 import API 返回错误"
|
"http://127.0.0.1/api/private/deployment/migrate/import")
|
||||||
|
_IMPORT_STATUS=$(printf '%s' "$_IMPORT_RESP" | grep -o '__HTTP_STATUS__:[0-9]*' | cut -d: -f2)
|
||||||
|
_IMPORT_BODY=$(printf '%s' "$_IMPORT_RESP" | sed 's/__HTTP_STATUS__:[0-9]*//')
|
||||||
|
if [ "${_IMPORT_STATUS}" != "200" ]; then
|
||||||
|
fail "导入失败(HTTP ${_IMPORT_STATUS}): $(printf '%s' "$_IMPORT_BODY" | python3 -c "import json,sys; d=json.load(sys.stdin); print(d.get('message','unknown'))" 2>/dev/null || printf '%s' "$_IMPORT_BODY")"
|
||||||
|
fi
|
||||||
|
|
||||||
# 从导出数据中提取租户信息用于最终汇总
|
# 从导出数据中提取租户信息用于最终汇总
|
||||||
_TENANT_INFO=$(printf '%s' "$_EXPORT_DATA" | python3 -c "
|
_TENANT_INFO=$(printf '%s' "$_EXPORT_DATA" | python3 -c "
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户