Add Docker source plugin
This is for pulling binaries from Docker registries such as <https://hub.docker.com>. It adds an external dependency on the 'requests' library. The source is working fine against Docker Hub itself, and comes with an integration test. A Docker Registry is basically a content-addressed blob store, and we take advantage of this to verify cached data. If the manifest file is saved but its content does not match its digest, we raise an error like this: Manifest /home/sam/cache/buildstream/sources/docker/sha256:4b8ffaaa896d40622ac10dc6662204f429f1c8c5714be62a6493a7895f664098.manifest.json is corrupt; Got content hash of sha256:22e88c7d6da9b73fbb515ed6a8f6d133c680527a799e3069ca7ce346d90649b2 Similar checks are done for the blobs (image layers). Only the "Image Manifest V 2, Schema 2" format[1] is supported. This seems to be unsupported by <https://quay.io>, so the plugin doesn't work with that registry at present. I haven't tested with any other Docker Registry instances. 1. https://docs.docker.com/registry/spec/manifest-v2-2/
Loading
Please register or sign in to comment