> On April 26, 2017, 1:01 p.m., Ilya Pronin wrote: > > We can check if we got a schema 1 manifest by parsing manifest JSON first > > and checking `schemaVersion` field in it as I did here: > > https://reviews.apache.org/r/53850/diff/1#0 Otherwise we may get a cryptic > > error message saying that some fields are missing. What do you think? > > Jie Yu wrote: > Also related to https://reviews.apache.org/r/58725 > > Maybe we should just land Ilya's scheme 2 support? Gilbert, thouughts? > > Gilbert Song wrote: > Thank you guys. > > I think they are separate issues. There is a bug in the check after > reading the docker spec doc: > In https://docs.docker.com/registry/spec/manifest-v2-1/: > ``` > Manifest Type Media Type > manifest “application/vnd.docker.distribution.manifest.v1+json” > signed manifest > “application/vnd.docker.distribution.manifest.v1+prettyjws” > Note that “application/json” will also be accepted for schema 1. > ``` > > The check introduced in r/53848 does not capture the `Note` that > `“application/json” will also be accepted for schema 1`. This supposes to be > the backward compactible note for old registries < 2.3. > > I would +1 to land Ilya's schema 2 support, but it may not catch up with > 1.3 release. Should we land this quick fix first then land the schema 2 > support? > > Chun-Hung Hsiao wrote: > Do you guys prefer adding "application/json" into the integrity check, or > just remove this check?
@Chun, already added in the patch. - Gilbert ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/58747/#review173085 ----------------------------------------------------------- On April 26, 2017, 4:12 p.m., Gilbert Song wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/58747/ > ----------------------------------------------------------- > > (Updated April 26, 2017, 4:12 p.m.) > > > Review request for mesos, Chun-Hung Hsiao, Ilya Pronin, and Jie Yu. > > > Bugs: MESOS-7272 > https://issues.apache.org/jira/browse/MESOS-7272 > > > Repository: mesos > > > Description > ------- > > This check was introduced from this patch: > https://reviews.apache.org/r/53848/ > > The check on registry v2 schema 1 is incorrect. It does not work > for registries that are older version < 2.3, because the ContentType > header may be something like this "application/json; charset=utf-8". > The check missed a note from docker registry spec that > "application/json" will also be accepted for schema 1. > > Depending on the docker registry spec doc, docker support the > following three media type for V2 schema 1 manifest: > 1. application/vnd.docker.distribution.manifest.v1+json > 2. application/vnd.docker.distribution.manifest.v1+prettyjws > 3. application/json > For more details, see: > https://docs.docker.com/registry/spec/manifest-v2-1/ > > > Diffs > ----- > > src/uri/fetchers/docker.cpp 1c6ab929deacfc29aa6b4f1df04c2b9782044a90 > > > Diff: https://reviews.apache.org/r/58747/diff/2/ > > > Testing > ------- > > make check > > > Thanks, > > Gilbert Song > >