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

DevPi - Different scopes cause 404 errors

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Done
    • Priority: 1 - Blocker
    • Resolution: Not a Bug
    • Affects Version/s: 6.12.2, 6.13.1
    • Fix Version/s: None
    • Component/s: PyPI
    • Labels:
      None
    • Severity:
      Critical

      Description

      Symptoms: Some packages work in DevPi remote repositories, while others fail with 404 errors.

      It looks like there is a problem with handling mixed package scopes in DevPi repositories.

      Public DevPi Example (Visit the URL in a browser) - https://m.devpi.net/carljm/dev/+simple/example/

      carljm/dev example-1.0.tar.gz <- Works
      root/pypi example-0.1.0.tar.gz <- 404 Not Found

      Artifactory is appending on the "root/pypi" to the download path, when it should not:

      http://artifactory.com:8081/artifactory/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz#sha256=f5873e6ec841776497c0d42a5153f84c2f12fa68ea4d77be1467e8b9a9ffc3bb

      VS

      http://pat.vm:8081/artifactory/api/pypi/devpi-test/packages/+f/a8f/f8d23246e26cb/example-1.0.tar.gz#sha256=a8ff8d23246e26cb6e60d7d25f659249020cd6c18235d187ffc065d1a6b06123

      This is a problem because most DevPi repositories will mix their scopes. Artifactory needs to support this otherwise most DevPi packages cannot be downloaded.

      Steps to reproduce:

      1. Set up a remote PyPi repository to the public m.devpi.net repository, and use the custom "carljim/dev" scope
      2. Attempt to download the "example" 0.1.0 package, not the latest 1.0 package:

      pip install example==0.1.0
      Looking in indexes: http://localhost:8081/artifactory/api/pypi/devpi-test/simple
      Collecting example==0.1.0
      HTTP error 404 while getting http://localhost:8081/artifactory/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz#sha256=f5873e6ec841776497c0d42a5153f84c2f12fa68ea4d77be1467e8b9a9ffc3bb (from http://localhost:8081/artifactory/api/pypi/devpi-test/simple/example/)
      Could not install requirement example==0.1.0 from http://localhost:8081/artifactory/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz#sha256=f5873e6ec841776497c0d42a5153f84c2f12fa68ea4d77be1467e8b9a9ffc3bb because of error 404 Client Error: Not Found for url: http://localhost:8081/artifactory/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz
      Could not install requirement example==0.1.0 from http://localhost:8081/artifactory/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz#sha256=f5873e6ec841776497c0d42a5153f84c2f12fa68ea4d77be1467e8b9a9ffc3bb because of HTTP error 404 Client Error: Not Found for url: http://localhost:8081/artifactory/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz for URL http://localhost:8081/artifactory/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz#sha256=f5873e6ec841776497c0d42a5153f84c2f12fa68ea4d77be1467e8b9a9ffc3bb (from http://localhost:8081/artifactory/api/pypi/devpi-test/simple/example/)

       

      20191017190118|770|REQUEST|127.0.0.1|admin|GET|/api/pypi/devpi-test/packages/root/pypi/+f/f58/73e6ec8417764/example-0.1.0.tar.gz|HTTP/1.1|404|0

        Attachments

          Activity

            People

            Assignee:
            Unassigned
            Reporter:
            patrickr Patrick Russell
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Sync Status

                Connection: RTFACT Sync
                RTMID-20381 -
                SYNCHRONIZED
                • Last Sync Date: