Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 6.10.0
    • Component/s: None
    • Labels:
      None

      Description

      Resolving from a Virtual repository that contains repositories with exclude pattern that match the target artifact will fail after the first time getting rejected due to exclude pattern.

      RepositoryServiceImpl:getResourceStreamHandle will throw an exception when the exclude pattern matches.

      this ticket is child of RTFACT-15697, apparently this problem emerge on other package managers. 

      Steps to reproduce on docker quoted from RTFACT-15697

      Currently, if you have an exclude pattern for an image/artifact in a local repo, and trying to pull from a virtual that aggregates the local repo, trying to resolve the artifact from the virtual will fail with a 404 due to the exclude pattern in the local repository. It will not continue to try resolving from other repositories aggregated in the virtual. To reproduce:
      -create local docker repository, deploy busybox image to it
      -create remote docker repository pointing to docker.io, and cache busybox 
      -add an exclude pattern for the local docker repo (**/**) so that pulling buxybox will fail
      -create a virtual docker repository, aggregating the local and remote
      -delete any local busybox layers with docker rmi -f docker rmi $(docker images -q)
      -try pulling busybox from the virtual, and see that the pull fails at the local repository due to the exclude pattern, and doesn't continue searching through the remote:

      docker pull mill.jfrog.team:12197/busybox

      Using default tag: latest

      latest: Pulling from busybox

      90e01955edcd: Pulling fs layer

      error pulling image configuration: unknown blob

      2018-01-19 08:55:11,052 [http-nio-8081-exec-11] [ERROR] (o.j.r.d.v.r.h.DockerV2LocalRepoHandler:532) - Error calculating manifest digest: 'Unauthorized: The repository 'docker-local' rejected the artifact 'docker-local:nginx/latest/manifest.json' due to its include/exclude pattern settings.'

       

      Requirements:

      Artifactory should keep resolving artifacts even after being rejected by exclude pattern.  

        Attachments

          Activity

            People

            Assignee:
            barh Bar Haim
            Reporter:
            barh Bar Haim
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: