【发布时间】:2023-04-10 12:24:01
【问题描述】:
我们有一个带有自托管构建代理的自托管 Azure DevOps 服务器。代理作为 Windows 服务安装,用户为 NetworkService。
我们的项目包含一个带有公共和私有(自托管存储库)NuGet 包的 .NET 应用程序和一个 Angular WebApplication。
对于 NuGet 存储库,我们配置了全局环境变量 HTTP_PROXY 和 HTTPS_PROXY。 .NET 部分工作正常。
npm install 步骤不适用于错误消息:
npm 错误!无法读取 null 的属性“startsWith”
似乎 npm 不喜欢环境变量中的代理设置,并且 .npmrc 文件中没有代理设置。
我的问题是,如何配置 npm 以使用代理设置?如何为用户 NetworkService 配置 .npmrc 文件?
构建日志包含以下消息:
metrics-registry = "https://registry.npmjs.org/" scope = "" user-agent = "npm/6.14.13 节点/v14.17.0 win32 x64"
;环境配置 userconfig = "E:\Agent_02\_work\3\npm\15146.npmrc"
;内置配置未定义前缀 = "C:\WINDOWS\ServiceProfiles\NetworkService\AppData\Roaming\npm"
;节点 bin 位置 = E:\Program Files\nodejs\node.exe ; cwd = E:\Agent_02_work\3\s\Merida.UI.Web;主页 = C:\WINDOWS\ServiceProfiles\NetworkService ; “npm config ls -l”来显示 所有默认值。
[命令]C:\WINDOWS\system32\cmd.exe /D /S /C ""E:\Program 文件\nodejs\npm.cmd" install" npm 错误!无法读取属性 'startsWith' 为 null
如您所见,该构建从以下路径获取一个 .npmrc 文件:E:\\Agent_02\\_work\\3\\npm\\15146.npmrc。每次构建的文件路径都不一样。
我该如何解决这个问题?
提前致谢
【问题讨论】:
标签: node.js angular npm azure-devops azure-pipelines