Project

Profile

Help

Story #4171

As a user i can configure download of the foreign layers

Added by ipanova@redhat.com about 1 year ago. Updated about 20 hours ago.

Status:
MODIFIED
Priority:
Low
Sprint/Milestone:
-
Start date:
Due date:
% Done:

100%

Platform Release:
Blocks Release:
Backwards Incompatible:
No
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
QA Contact:
Complexity:
Smash Test:
Verified:
No
Verification Required:
No
Sprint:
Sprint 48

Description

Some images like windows base images, contain artifacts whose distribution is restricted by license.
When these images are pushed to a registry, restricted artifacts are skipped/not included by default.

These artifacts are called foreign layers and have "mediaType": "application/vnd.docker.image.rootfs.foreign.diff.tar.gzip"

Remote should have a Boolean "*allow_foreign_layers*" option which would control the download of the foreign layers.

Set to False (default):
Pulp will check the mediatype and simply will skip the foreign layers.
Case: do not sync content which is restricted by a license without explicit acknowledgment in the Remote config
From client side, it will follow the url specified in the details of the layer in the manifest.

Set to True:
Pulp will download the foreign layers by following the url.
Case: due to use case of registries with air gaped network, now it's possible to push to the registry foreign layers, by enabling -allow-nondistributable-artifacts daemon option. From client side, foreign layers are now pulled from the registry if possible, falling back to the URLs in the image manifest otherwise. As far as i know that's done in docker for Windows. Linux version is still ignoring foreign layers during pull.


Related issues

Copied to Container Support - Test #4461: As a user i can configure download of the foreign layers NEW Actions

Associated revisions

Revision 5f230bb2 View on GitHub
Added by jortel@redhat.com 10 months ago

Support include/exclude of foreign layers.
closes #4171

Revision 5f230bb2 View on GitHub
Added by jortel@redhat.com 10 months ago

Support include/exclude of foreign layers.
closes #4171

History

#1 Updated by amacdona@redhat.com about 1 year ago

  • Groomed changed from No to Yes
  • Sprint Candidate changed from No to Yes

With the current implementation of docker sync, we will have to use the skip logic in 2 places. Once for tagged manifests, once for non-tagged manifests.

#2 Updated by jortel@redhat.com 12 months ago

  • Priority changed from Normal to Low
  • Sprint set to Sprint 46

#3 Updated by rchan 11 months ago

  • Sprint changed from Sprint 46 to Sprint 47

#4 Updated by rchan 10 months ago

  • Sprint changed from Sprint 47 to Sprint 48

#5 Updated by jortel@redhat.com 10 months ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to jortel@redhat.com

#6 Updated by jortel@redhat.com 10 months ago

  • Status changed from ASSIGNED to MODIFIED
  • % Done changed from 0 to 100

Applied in changeset commit:pulp_docker|5f230bb22c7abef0ab08459a8d755bcdea210cd7.

#7 Updated by bherring 9 months ago

  • Copied to Test #4461: As a user i can configure download of the foreign layers added

#8 Updated by bmbouter 7 months ago

  • Tags deleted (Pulp 3)

#9 Updated by ipanova@redhat.com about 20 hours ago

  • Project changed from Docker Support to Container Support

Please register to edit this issue

Also available in: Atom PDF