Recently my Azure DevOps build pipeline failed because Azure is using npm 8.x, which will have issue for angular projects when running `
npm install`. This is a known issue which can be solved by using `
--legacy-peer-deps` or `
--force` for the `
npm install` command. However, Azure DevOps's npm task does not take parameters by default. Let's see how we can use these parameters in Azure DevOps.
Old YAML file
- task: Npm@1 displayName: 'npm install' inputs: workingDir: '$(System.DefaultWorkingDirectory)/src/Web/work996' command: 'install'
It produces error:
To solve this issue. We need to use custom command for the npm task.
- task: Npm@1 displayName: 'npm install with legacy-peer-deps' inputs: workingDir: '$(System.DefaultWorkingDirectory)/src/Web/work996' command: 'custom' customCommand: 'install --legacy-peer-deps'
Now the build will work fine.
Thanks for the tip!