Skip to content

test(importer): unknown manifest and manifest config media types

Related to #621 (closed)

Manual tests:

unknown manifest media type
storage:
  filesystem:
    rootdirectory: registry/datastore/testdata/fixtures/importer/unknown-manifest-mediatype/
$ curl -XPUT -i "http://registry.test:5000/gitlab/v1/import/a-simple/?import_type=pre"
HTTP/1.1 202 Accepted
Date: Wed, 16 Mar 2022 02:59:41 GMT
Content-Length: 0
ERRO[0021] importing repository                          correlation_id=01FY8ANDYWT1M127JT5GQ9WS95 error="1 error occurred:\n\t* pre importing tagged manifests: pre importing manifest: retrieving manifest \"sha256:3742a2977c3f5663dd12ddc406d45ed7cda2760842c9da514c35f9069581e7a2\" from filesystem: errors verifying manifest: unrecognized manifest content type application/foo.bar.manfiest.v1.tar+gzip\n\n" go_version=go1.16.10 version=v3.35.0-gitlab-1-g17784e83
 select name, migration_status, migration_error from repositories where name ='a-simple';

   name   | migration_status  |                                                                                                                   migration_error
----------+-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 a-simple | pre_import_failed | 1 error occurred:                                                                                                                                                                                                                                   +
          |                   |         * pre importing tagged manifests: pre importing manifest: retrieving manifest "sha256:3742a2977c3f5663dd12ddc406d45ed7cda2760842c9da514c35f9069581e7a2" from filesystem: errors verifying manifest: unrecognized manifest content type appli
(1 row)
unknown manifest config media type
storage:
  filesystem:
    rootdirectory: registry/datastore/testdata/fixtures/importer/unknown-manifestconfig-mediatype/
$ curl -XPUT -i "http://registry.test:5000/gitlab/v1/import/a-simple/?import_type=pre"
HTTP/1.1 202 Accepted
Date: Wed, 16 Mar 2022 03:06:37 GMT
Content-Length: 0
INFO[0007] closed connection                             database=registry_dev go_version=go1.16.10 instance_id=6d88fcaa-ccf3-42f0-b709-a31573a3bec5 pid=91997 version=v3.35.0-gitlab-1-g17784e83
ERRO[0007] importing repository                          correlation_id=01FY8B23M5RA5YQAA01CX6FMV7 error="1 error occurred:\n\t* pre importing tagged manifests: pre importing manifest: pre importing manifest: unknown media type: application/foo.bar.container.image.v1+json\n\n" go_version=go1.16.10 version=v3.35.0-gitlab-1-g17784e83
select name, migration_status, migration_error from repositories where name ='a-simple';

   name   | migration_status  |                                                                      migration_error
----------+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------
 a-simple | pre_import_failed | 1 error occurred:                                                                                                                                        +
          |                   |         * pre importing tagged manifests: pre importing manifest: pre importing manifest: unknown media type: application/foo.bar.container.image.v1+json+
          |                   |                                                                                                                                                          +
          |                   |
(1 row)
Edited by Jaime Martinez

Merge request reports