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

multi-arch tags can be pulled but not returned in tag list api

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Resolution: Deferred
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Location:
      External

      Description

      • Problem description:  Artifacgtory does not treat fat manifest ( list.manifest.json ) as a real tag. Although we support pulling multi-arch images. A multi-arch tag is not listed as docker image in UI and the REST API does not return that tag version.

       

                 It's a different behavior than docker hub

      • What is the expected behavior?  

      docker tag list API should return the multi-arch tag versions

      • Steps to reproduce: 
      1. create new tags
        docker tag s390x/busybox:1.33 artifactory.jfrog.io/multiarchexample:1.33-s390x
        docker tag busybox:1.33 artifactory.jfrog.io/multiarchexample:1.33-amd64
      1. push images
        docker push artifactory.jfrog.io/multiarchexample:1.33-s390x
        docker push artifactory.jfrog.io/multiarchexample:1.33-amd64
      1. create multi-arch list manifest.yml file that looks like this:
        image: artifactory.jfrog.io/multiarchexample:1.33
        tags:
      1. now execute the manifest tool (1.3)to push it to artifactory 
        manifest-tool push from-spec manifest.yml

      Run API to get list of tags:

      curl -X GET \
      http://  artifactory.jfrog.io artifactory/api/docker/new-docker-local/v2/multiarchexample/tags/list \
      -H 'Authorization: Basic ...' \
      -H 'Cache-Control: no-cache' \
      -H 'Postman-Token: ...'

      you will see

      "1.33-amd64",
      "1.33-linux-amd64",
      "1.33-linux-s390x",
      "1.33-s390x",
      "latest-linux-amd64",
      "latest-linux-s390x"

      The expectation is that 1.33 should also be in the list.

      In UI, you can see there's only list.manifest.json under version 1.33 as it's a multi-arch version

      1. pulling the version is fine
        docker pull gpgtest.jfrog.io/paul-docker/multiarchexample:1.33
      1. tag API against docker hub shows the following versions:
        latest
        1.33
        1.33-amd64
        1.33-s390x

              

        Attachments

          Activity

              People

              Assignee:
              Unassigned
              Reporter:
              paulp Paul Pan
              Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Sync Status

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