





















@@ -62,7 +62,6 @@ echo "Current beta dist-tag: ${current_beta_version:-<missing>}"
6262echo "Resolved release channel: ${release_channel}"
6363echo "Resolved publish tag: ${publish_tag}"
6464echo "Resolved mirror dist-tags: ${mirror_dist_tags_csv:-<none>}"
65-echo "Publish auth: GitHub OIDC trusted publishing"
6665echo "Mirror dist-tag auth source: ${mirror_auth_source}"
6766echo "Mirror dist-tag auth requirement: ${mirror_auth_requirement}"
6867@@ -75,6 +74,13 @@ case "${mirror_auth_source}" in
7574 mirror_auth_token="${NPM_TOKEN:-}"
7675 ;;
7776esac
77+publish_auth_token="${mirror_auth_token}"
78+publish_auth_source="${mirror_auth_source}"
79+if [[ -n "${publish_auth_token}" ]]; then
80+echo "Publish auth: ${publish_auth_source} with provenance"
81+else
82+echo "Publish auth: GitHub OIDC trusted publishing"
83+fi
78847985if [[ "${mirror_auth_requirement}" == "required" && -z "${mirror_auth_token}" ]]; then
8086echo "npm dist-tag mirroring requires explicit npm auth via NODE_AUTH_TOKEN or NPM_TOKEN." >&2
@@ -92,11 +98,22 @@ fi
92989399(
94100cd "${package_dir}"
95-"${publish_cmd[@]}"
101+ cleanup_files=()
102+trap 'rm -f "${cleanup_files[@]}"' EXIT
103+ publish_userconfig=""
104+if [[ -n "${publish_auth_token}" ]]; then
105+ publish_userconfig="$(mktemp)"
106+ cleanup_files+=("${publish_userconfig}")
107+ chmod 0600 "${publish_userconfig}"
108+printf '%s\n' "//registry.npmjs.org/:_authToken=${publish_auth_token}" > "${publish_userconfig}"
109+ NPM_CONFIG_USERCONFIG="${publish_userconfig}" "${publish_cmd[@]}"
110+else
111+"${publish_cmd[@]}"
112+fi
9611397114if [[ -n "${mirror_dist_tags_csv}" ]]; then
98115 mirror_userconfig="$(mktemp)"
99-trap 'rm -f "${mirror_userconfig}"' EXIT
116+cleanup_files+=("${mirror_userconfig}")
100117 chmod 0600 "${mirror_userconfig}"
101118printf '%s\n' "//registry.npmjs.org/:_authToken=${mirror_auth_token}" > "${mirror_userconfig}"
102119此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。