geeklearningio / gl-vsts-tasks-yarn

Yarn Package Manager Visual Studio Team Services Build and Release Management extensions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fails in azure pipelines when using a feed

grendo opened this issue · comments

Hi,
fairly basic example to install a packages fails

UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Failed to find api location for area: npm id

I created the yml via the designer.

Pipeline

resources:

  • repo: self
    fetchDepth: 15

queue:
name: Hosted VS2017

steps:

  • task: geeklearningio.gl-vsts-tasks-yarn.yarn-task.Yarn@2
    displayName: 'Yarn'
    inputs:
    ProjectDirectory: .
    customRegistry: useFeed
    customFeed: '00000000-0000-0000-0000-000000000000'

Log

2018-12-10T01:01:23.6731431Z ==============================================================================
2018-12-10T01:01:23.6731492Z Task         : Yarn task
2018-12-10T01:01:23.6731546Z Description  : Executes Yarn
2018-12-10T01:01:23.6731582Z Version      : 2.7.1003
2018-12-10T01:01:23.6731614Z Author       : Geek Learning
2018-12-10T01:01:23.6732552Z Help         : [More Information](https://github.com/geeklearningio/gl-vsts-tasks-yarn/wiki/Yarn) (Version 2.7.1003).

Dear Angular and Ember CLI users, please check our [known issues](https://github.com/geeklearningio/gl-vsts-tasks-yarn/wiki/Known-Issues)
2018-12-10T01:01:23.6732890Z ==============================================================================
2018-12-10T01:01:24.4604473Z SYSTEMVSSCONNECTION exists true
2018-12-10T01:01:24.6293722Z (node:1300) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Failed to find api location for area: npm id:

ok, I got guid for the feed from going through the visual designer. I have also managed to do a npm task using the same guid with no problem. I did not paste it in the message for security reasons. So if the npm task is working then it seems like a issue with the yarn task ?

I'm seeing the same thing.

I'm currently in the process of migrating from our on prem TFS to Azure DevOps and when I'm creating a new build pipeline my package isn't being published for the same reason above. It looks like its having problems with the artifacts feed

So I just migrated a test build to yaml and I didn't get any issue

resources:
- repo: self
  clean: true
queue:
  name: Shared Windows
steps:
- task: geeklearningio.gl-vsts-tasks-yarn-dev.yarn-installer-task.YarnInstaller@2
  displayName: 'Use Yarn 1.10.x'
  inputs:
    versionSpec: 1.10.x

    checkLatest: true

    includePrerelease: true


- task: geeklearningio.gl-vsts-tasks-yarn-dev.yarn-task.Yarn@2
  displayName: 'No custom package no npmrc'
  inputs:
    ProjectDirectory: src/YarnNoNpmRc


- task: geeklearningio.gl-vsts-tasks-yarn-dev.yarn-task.Yarn@2
  displayName: 'No custom package but .npmrc'
  inputs:
    ProjectDirectory: src/YarnNpmRc


- task: geeklearningio.gl-vsts-tasks-yarn-dev.yarn-task.Yarn@2
  displayName: 'Custom Package in Custom Feed Directly Specified'
  inputs:
    ProjectDirectory: src/YarnCustomPackageNoNpmRc

    customRegistry: useFeed

    customFeed: 'ead7b14e-a830-4f35-9087-f87c338a6bfe'


- task: geeklearningio.gl-vsts-tasks-yarn-dev.yarn-task.Yarn@2
  displayName: 'Custom Package in Custom Feed npmrc'
  inputs:
    ProjectDirectory: src/YarnCustomPackageNpmRc


- task: geeklearningio.gl-vsts-tasks-yarn-dev.yarn-task.Yarn@2
  displayName: 'Yarn licenses generate-disclaimer'
  inputs:
    ProjectDirectory: src/SampleNode

    Arguments: 'licenses generate-disclaimer'

    customRegistry: useFeed

    customFeed: 'ead7b14e-a830-4f35-9087-f87c338a6bfe'

I also tried on Hosted VS2017 without any issues. Would you mind running it with system.debug set to true ?

One thing that may matter here is the .visualstudio.com versus .dev.azure.com registries.
If I have .dev.azure.com in my .npmrc but auth is done via .visualstudio.com it fails.

what are the .dev.azure.com feed?

It is the same thing just renamed when Microsoft renamed VSTS to Azure DevOps.

URLs will change from abc.visualstudio.com to dev.azure.com/abc. We will support redirects from visualstudio.com URLs so there will not be broken links.

I tried changing the .dev.azure.com in the npmrc to .visual studio.com

my yml looks like

  • task: geeklearningio.gl-vsts-tasks-yarn.yarn-task.Yarn@2
    displayName: 'Yarn publish'
    inputs:
    Arguments: publish
    customRegistry: useFeed
    customFeed: $(artifactFeed)

Still get the same error shown below. Did you try a publish in your example, eg " Arguments: publish" ? I could not see one in the sample.

Dear Angular and Ember CLI users, please check our known issues
2018-12-21T00:40:03.0289400Z ==============================================================================
2018-12-21T00:40:04.0977457Z SYSTEMVSSCONNECTION exists true
2018-12-21T00:40:04.4088742Z (node:3528) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Failed to find api location for area: npm id:

Other thing I would say even though the yarn publish failed azure devops did not report it as a error.

I've pushed an update for the new url support. Let me know if it solves your problem.

@sandorfr thank you for this. 2.8.1001 seems to have addressed the issue with loading the private npm registry. 🎉