我遵循了将Angular应用程序部署到ADO管道的官方教程,这是我的yaml。
# Node.js with Angular
# Build a Node.js project that uses Angular.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript
trigger:
- main
pool:
vmImage: ubuntu-latest
steps:
- task: NodeTool@0
inputs:
versionSpec: '18.x'
displayName: 'Install Node.js'
- task: npmAuthenticate@0
inputs:
workingFile: '.npmrc'
- script: |
npm install -g @angular/cli
npm install
ng build --prod
displayName: 'npm install and build'
字符串
但是管道在npm install时失败,并出现以下错误:
npm ERR! code E401
npm ERR! Unable to authenticate, your authentication token seems to be invalid.
型
应用程序在本地运行,但在管道中失败。对于上下文,应用程序使用来自外部组织的提要的库,并且在本地,我将我的凭据放在用户目录中的. npmrc和项目目录中的注册表中。
我试过将.npmrc与repo根目录中使用的注册表放在一起,我也试过使用我的用户.npmrc并将其保存在一个变量中,然后将其回显到yaml文件中的.npmrc中,但上述方法都没有帮助我解决这个问题。
1条答案
按热度按时间rdrgkggo1#
在运行
npm install
之前需要进行身份验证。确保在此之前将此步骤添加到管道中。
Azure项目凭据提供程序:
此提供程序是手动处理
.npmrc
文件的更好替代方案。字符串
其他一些我过去遇到过的需要仔细检查的小事情:
确保根目录中的
.npmrc
文件使用正确的语法正确引用提要URL。