Uploaded image for project: 'Artifactory Binary Repository'
  1. Artifactory Binary Repository
  2. RTFACT-11942

Upon using virtual repository and disabling the "Store artifacts locally" in an aggragated remote repo, npm install fails for scope packages

    Details

    • Type: Bug
    • Status: Open
    • Priority: High
    • Resolution: Unresolved
    • Affects Version/s: 4.5.2, 4.9.1, 5.3.0
    • Fix Version/s: None
    • Component/s: NPM
    • Labels:
      None

      Description

      Steps to reproduce:

      1. Create a remote repository that points to the official npm registry.
      2. Disable in the repository the store artifacts locally
      3. Create virtual repository that will aggregate the remote repository from step 1.
      4. Configure .npmrc to use with scope packages.
      5. clean your npm cache with npm cache clean (check if the /Users/

      {username}

      /.npm is empty)
      6. Run npm i @websdk/nap --verbose
      7. You will see the following:

      npm info attempt registry request try #1 at 11:07:38 AM
      npm http request GET http://alexei.artifactoryonline.com/alexei/api/npm/npm-virtual/@websdk%2frhumb
      npm http 500 http://alexei.artifactoryonline.com/alexei/api/npm/npm-virtual/@websdk%2frhumb
      npm verb headers { 'content-type': 'application/json',
      npm verb headers   date: 'Sun, 17 Jul 2016 08:07:39 GMT',
      npm verb headers   server: 'Artifactory/4.9.0',
      npm verb headers   'x-artifactory-id': 'aoltrial5c.prod-use1.jfrog.local-alexei',
      npm verb headers   'x-node': 'nginx-shared2c.prod-use1',
      npm verb headers   'transfer-encoding': 'chunked',
      npm verb headers   connection: 'keep-alive' }
      npm info retry will retry, error on last attempt: Error: Registry returned 500 for GET on http://alexei.artifactoryonline.com/alexei/api/npm/npm-virtual/@websdk%2frhumb
      npm info attempt registry request try #2 at 11:07:49 AM
      npm http request GET http://alexei.artifactoryonline.com/alexei/api/npm/npm-virtual/@websdk%2frhumb
      npm http 404 http://alexei.artifactoryonline.com/alexei/api/npm/npm-virtual/@websdk%2frhumb
      npm verb headers { 'content-type': 'application/json',
      npm verb headers   date: 'Sun, 17 Jul 2016 08:07:49 GMT',
      npm verb headers   server: 'Artifactory/4.9.0',
      npm verb headers   'x-artifactory-id': 'aoltrial5c.prod-use1.jfrog.local-alexei',
      npm verb headers   'x-node': 'nginx-shared2c.prod-use1',
      npm verb headers   'transfer-encoding': 'chunked',
      npm verb headers   connection: 'keep-alive' }
      npm verb stack Error: 404 Not Found: alexei
      npm verb stack     at makeError (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/request.js:264:12)
      npm verb stack     at CachingRegistryClient.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/request.js:250:14)
      npm verb stack     at Request._callback (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/request.js:172:14)
      npm verb stack     at Request.self.callback (/usr/local/lib/node_modules/npm/node_modules/request/request.js:199:22)
      npm verb stack     at emitTwo (events.js:87:13)
      npm verb stack     at Request.emit (events.js:172:7)
      npm verb stack     at Request.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/request/request.js:1036:10)
      npm verb stack     at emitOne (events.js:82:20)
      npm verb stack     at Request.emit (events.js:169:7)
      npm verb stack     at IncomingMessage.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/request/request.js:963:12)
      npm verb statusCode 404
      npm verb pkgid alexei
      npm verb cwd /Users/alexeiv/Documents/temp/npm/test/user
      npm ERR! Darwin 15.2.0
      npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "i" "@websdk/nap" "--verbose"
      npm ERR! node v4.4.2
      npm ERR! npm  v3.8.6
      npm ERR! code E404
      
      npm ERR! 404 Not Found: alexei
      npm ERR! 404 
      npm ERR! 404  'alexei' is not in the npm registry.
      npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
      npm ERR! 404 It was specified as a dependency of '@websdk/nap'
      npm ERR! 404 
      npm ERR! 404 Note that you can also install from a
      npm ERR! 404 tarball, folder, http url, or git url.
      npm verb exit [ 1, true ]
      
      2016-07-17 07:21:18,749 [http-nio-8082-exec-7] [ERROR] (o.a.r.c.e.GlobalExceptionMapper:48) - null
      java.lang.NullPointerException: null
      	at org.artifactory.addon.npm.repo.NpmRemoteRepoHandler.getPackageMetadata(NpmRemoteRepoHandler.java:129) ~[artifactory-addon-npm-4.9.0.jar:na]
      	at org.artifactory.addon.npm.repo.merge.NpmPackageMetadataMerger.merge(NpmPackageMetadataMerger.java:77) ~[artifactory-addon-npm-4.9.0.jar:na]
      	at org.artifactory.addon.npm.repo.merge.NpmMetadataMerger.getMergedResult(NpmMetadataMerger.java:65) ~[artifactory-addon-npm-4.9.0.jar:na]
      	at org.artifactory.addon.npm.repo.NpmVirtualRepoHandler.getPackageMetadata(NpmVirtualRepoHandler.java:72) ~[artifactory-addon-npm-4.9.0.jar:na]
      	at org.jfrog.repomd.npm.rest.NpmSubResource.packageInfo(NpmSubResource.java:40) ~[npm-4.3.0.jar:na]
      	at sun.reflect.GeneratedMethodAccessor1578.invoke(Unknown Source) ~[na:na]
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_74]
      	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_74]
      	at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.uri.rules.SubLocatorRule.accept(SubLocatorRule.java:137) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) ~[jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542) [jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473) [jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419) [jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409) [jersey-server-1.19.jar:1.19]
      	at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409) [jersey-servlet-1.19.jar:1.19]
      	at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:558) [jersey-servlet-1.19.jar:1.19]
      	at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733) [jersey-servlet-1.19.jar:1.19]
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) [servlet-api.jar:na]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [catalina.jar:8.0.32]
      	at org.artifactory.webapp.servlet.RepoFilter.execute(RepoFilter.java:200) [artifactory-web-application-4.9.0.jar:na]
      	at org.artifactory.webapp.servlet.RepoFilter.doFilter(RepoFilter.java:91) [artifactory-web-application-4.9.0.jar:na]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [catalina.jar:8.0.32]
      	at org.artifactory.webapp.servlet.AccessFilter.useAuthentication(AccessFilter.java:381) [artifactory-web-application-4.9.0.jar:na]
      	at org.artifactory.webapp.servlet.AccessFilter.authenticateAndExecute(AccessFilter.java:267) [artifactory-web-application-4.9.0.jar:na]
      	at org.artifactory.webapp.servlet.AccessFilter.doFilterInternal(AccessFilter.java:197) [artifactory-web-application-4.9.0.jar:na]
      	at org.artifactory.webapp.servlet.AccessFilter.doFilter(AccessFilter.java:157) [artifactory-web-application-4.9.0.jar:na]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [catalina.jar:8.0.32]
      	at org.artifactory.webapp.servlet.RequestFilter.doFilter(RequestFilter.java:61) [artifactory-web-application-4.9.0.jar:na]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [catalina.jar:8.0.32]
      	at org.artifactory.webapp.servlet.ArtifactoryFilter.doFilter(ArtifactoryFilter.java:111) [artifactory-web-application-4.9.0.jar:na]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) [catalina.jar:8.0.32]
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) [catalina.jar:8.0.32]
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) [catalina.jar:8.0.32]
      	at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:676) [catalina.jar:8.0.32]
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522) [catalina.jar:8.0.32]
      	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095) [tomcat-coyote.jar:8.0.32]
      	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672) [tomcat-coyote.jar:8.0.32]
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500) [tomcat-coyote.jar:8.0.32]
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456) [tomcat-coyote.jar:8.0.32]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_74]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_74]
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.0.32]
      	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_74]
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                alexeiv Alexei Vainshtein
              • Votes:
                5 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated: