You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure DevOps流水线中npmAuthenticate任务间歇性失效求助

Azure Artifacts私有仓库npm ci随机401认证失败问题

我们使用Azure Artifacts私有仓库分发私有npm包,Azure流水线通过npmAuthenticate@0任务对该源进行认证,源信息存储在项目的.npmrc文件中,且项目已拥有Contributor权限。但执行npm ci步骤时会随机失败,报错信息如下:

#17 132.8 npm ERR! code E401
#17 132.8 npm ERR! Incorrect or missing password.

开启诊断输出后发现,不同流水线运行中报错的包各不相同,多数包可正常加载,示例错误如下:

#17 55.03 npm http fetch GET 401 https://***/***/_packaging/***/npm/registry/resolve-from/-/resolve-from-4.0.0.tgz 50860ms attempt #2 (cache skip)

近期变更:将Node从16.14.0升级至20.12.1(包含npm 10.5.0)

已尝试的排查手段:

  • 在项目.npmrc文件中替换为个人token;
  • 验证同一构建代理上存在失败与成功的情况;
  • 回退到Node 16.14.0时npm ci可成功运行;
  • 使用Node 18.20时问题依旧;
  • 搜索Node 18、20版本相关问题但无结果;
  • 发现Node 18.18可正常运行,高于该版本则失效。

流水线与Dockerfile片段

流水线片段

[...]
      - task: npmAuthenticate@0
        inputs:
          workingFile: .npmrc
        displayName: 'NPM Auth'

      - bash: |
          docker build -f ./deployment/ci.Dockerfile -t $(projectName):$(Build.SourceVersion) .
        displayName: 'CI build docker image'
[...]

Dockerfile片段

FROM node:20.12 AS builder

RUN apt-get update && \
    apt-get install -y chromium && \
    wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-5.0.1.3006-linux.zip  -O ~/sonar.zip && \
    unzip ~/sonar.zip -d /opt/sonar && \
    rm ~/sonar.zip
ENV CHROME_BIN=/usr/bin/chromium PATH="/opt/sonar/sonar-scanner-5.0.1.3006-linux/bin:${PATH}"

WORKDIR /build

COPY package.json /build
COPY package-lock.json /build
COPY .npmrc /build
COPY sonar.properties /build

RUN npm -d ci # <-- 报错位置,通常运行时不带-d参数

COPY . /build

RUN npm run build:ci
[...]

内容的提问来源于stack exchange,提问作者jackie.ms

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 13:20:40