-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docker adapter: Provide better handling of non-unique references #105
Comments
I ran into exactly the same problem only now (4 years later) with Here is the content of `.datalad/environments/alpine/image/manifest.json` I got after `datalad containers-add --url dhub://alpine alpine`[
{
"Config": "af341ccd2df8b0e2d67cf8dd32e087bfda4e5756ebd1c76bbf3efa0dc246590e.json",
"RepoTags": [
"alpine:3.10"
],
"Layers": [
"71dba1fabbde4baabcdebcde4895d3f3887e388b09cef162f8159cf7daffa1b8/layer.tar"
]
},
{
"Config": "43773d1dba76c4d537b494a8454558a41729b92aa2ad0feb23521c3e58cd0440.json",
"RepoTags": [
"alpine:3.6"
],
"Layers": [
"eea126ee9bd5ff1ae7944088f4d6b32abb9874a6b00935646b5526e1b57ceb86/layer.tar"
]
},
{
"Config": "b2aa39c304c27b96c1fef0c06bee651ac9241d49c4fe34381cab8453f9a89c7d.json",
"RepoTags": [
"alpine:latest"
],
"Layers": [
"31f5b0c484b3651f7c883d1be2ef442c2da71d103bc7ab20cd0b1f825e67e4e7/layer.tar"
]
},
{
"Config": "a24bb4013296f61e89ba57005a7b3e52274d8edd3ae2077d04395f806b63d83e.json",
"RepoTags": null,
"Layers": [
"fa27ccac46e9a5b7ff1d188e99763db1a5fb45adb34a917c1c482dfde99ad432/layer.tar"
]
}
]
The reason is that
Implementation could be tested on CI on alpine images by |
@yarikoptic Is the
I don't know what you mean by this. |
I would say full
Something like, "You might want to edit .datalad/config file containing the invocation of docker adapter and specify --repo-tag or --config to disambiguate". |
#202 is about to resolve For the
The test within https://github.com/datalad/datalad-container/pull/202/files#diff-62bc40a7a5373426a633182d1a054499477c5154895e45a0251d3a141a42579fR118 would no longer be able to create a problematic case it is testing unfortunately, but could just simulate by creating a sample The test for this change would be just in that unittest that it would export only the |
Add `--repo-tag` and `--config` to `datalad_container.adapters.docker run`
Issue fixed in |
As I was working on gh-98, I hit into a case where
save
resulted in a multi-image directory thatload
can't handle.To trigger this, set up at least two images so that a reference without a tag will match both.
If we call
save
with the image ID or a tag that narrows things to a single image, things work fine:But if we leave off the tag,
save
will dump everything matched, andload
will rightly complain that the directory doesn't have a unique image ID.The tree output for both these directories is included below. Note the multiple top-level json files.
save
should check that the directory it produces only has one image and abort if it doesn't.tree output
The text was updated successfully, but these errors were encountered: