Azure管道的PowerShell任务无法加载专用npm包

Azure管道的PowerShell任务无法加载专用npm包,powershell,azure-pipelines,Powershell,Azure Pipelines,我们有一个PowerShell任务(“2.*”),它通过try catch运行npm install,以启用失败时重试。但是,当从该任务运行时,npm安装失败,因为它无法使用自定义npm包访问专用提要 npm ERR! code E401 npm ERR! Unable to authenticate, need: Bearer authorization_uri=https://login.windows.net/d2...b7, Basic realm="https://pkgsprodcu

我们有一个PowerShell任务(“2.*”),它通过try catch运行
npm install
,以启用失败时重试。但是,当从该任务运行时,npm安装失败,因为它无法使用自定义npm包访问专用提要

npm ERR! code E401
npm ERR! Unable to authenticate, need: Bearer authorization_uri=https://login.windows.net/d2...b7, Basic realm="https://pkgsprodcus1.pkgs.visualstudio.com/", TFS-Federated
作业通过启用脚本访问OAuth令牌,但这似乎不适用于PS任务。

我们如何才能使
npm安装
在PS任务中运行以安装w/o
E401

恐怕当您将
npm安装
目标锁定到azure devops提要注册表时,
$(System.Accesstoken)
此处不可用

我们提供一个名为的任务。在powershell中运行
npm install
之前,为什么不直接使用此任务进行授权?换句话说,将授权放在一个单独的任务中,只需在powershell脚本中执行
npm安装

通过添加以下脚本,只需配置一个
.npmrc
,它与
package.json
处于相同的路径级别:

registry=https://pkgs.dev.azure.com/{org}/{project name}/_packaging/{feed name}/npm/registry/
always-auth=true
当您以azure devops订阅源注册表为目标进行npm安装时,此处的
$(System.Accesstoken)
恐怕不可用

我们提供一个名为的任务。在powershell中运行
npm install
之前,为什么不直接使用此任务进行授权?换句话说,将授权放在一个单独的任务中,只需在powershell脚本中执行
npm安装

通过添加以下脚本,只需配置一个
.npmrc
,它与
package.json
处于相同的路径级别:

registry=https://pkgs.dev.azure.com/{org}/{project name}/_packaging/{feed name}/npm/registry/
always-auth=true