diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 3b82e2c..91d2760 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -84,9 +84,10 @@ jobs: set -e NEXUS_URL="http://nexus.yunhaixingtong.com:8081/repository/front-hosted/${ZIP_FILE}" # -f:HTTP >=400 时 curl 以非零退出,仓库不存在/认证失败必须让 job 变红,否则建档的是不存在的 URL + # NEXUS_URL 是脚本内赋值的 shell 变量(未 export),裸 -e NEXUS_URL 取不到值会传空,必须显式展开传入 docker rm -f frontcurl 2>/dev/null || true docker run -d --name frontcurl --network infra-infra-net -w /w \ - -e NEXUS_USER -e NEXUS_PASSWORD -e ZIP_FILE -e NEXUS_URL node:20 sleep 300 + -e NEXUS_USER -e NEXUS_PASSWORD -e ZIP_FILE -e "NEXUS_URL=${NEXUS_URL}" node:20 sleep 300 docker cp "${ZIP_FILE}" frontcurl:/w/ docker exec frontcurl sh -c 'curl -sSf -X PUT -u "${NEXUS_USER}:${NEXUS_PASSWORD}" --upload-file "/w/${ZIP_FILE}" "${NEXUS_URL}"' docker rm -f frontcurl