OCI Distribution Conformance Tests

Summary:
1 failed53 skipped
Start time:
Apr 29 06:05:06.315 +0000 UTC
End time:
Apr 29 06:05:08.806 +0000 UTC
Elapsed time:
2.491033205s
Test version:
unknown
Configuration:
OCI_ROOT_URL=https://registry-intl.ap-southeast-1.aliyuncs.com
OCI_NAMESPACE=ocitest/ocitest-docker
OCI_PASSWORD=*****
OCI_USERNAME=*****
OCI_BLOB_DIGEST=sha256:310277bda89b09908114f4f227feada9d53760892069e87a4461ad8c84f2cfbf
OCI_MANIFEST_DIGEST=sha256:d6ac96bbd7878961c998162539fadb50ae830406300f6912e28d8b8bbc8778c3
OCI_TAG_NAME=1.16.1-debian-10-r77

Pull

Setup

+

Populate registry with test blob


+

Populate registry with test layer


+

Populate registry with test manifest


+

Get the name of a tag


+

Get tag name from environment



Pull blobs

+

GET nonexistent blob should result in 404 response


+

GET request to existing blob URL should yield 200



Pull manifests

+

GET nonexistent manifest should return 404


+

GET request to manifest path (digest) should yield 200 response


+

GET request to manifest path (tag) should yield 200 response



Error codes

+

400 response body should contain OCI-conforming JSON message



Teardown

+

Delete config blob created in setup


+

Delete layer blob created in setup


+

Delete manifest created in setup



Push

Blob Upload Streamed

+

PATCH request with blob in body should yield 202 response


+

PUT request to session URL with digest should yield 201 response



Blob Upload Monolithic

+

GET nonexistent blob should result in 404 response


+

POST request with digest and blob should yield a 201


+

GET request to blob URL from prior request should yield 200


+

POST request should yield a session ID


+

PUT upload of a blob should yield a 201 Response


+

GET request to existing blob should yield 200 response


+

PUT upload of a layer blob should yield a 201 Response


+

GET request to existing layer should yield 200 response



Blob Upload Chunked

+

Out-of-order blob upload should return 416


+

PATCH request with first chunk should return 202


+

PUT request with final chunk should return 201



Manifest Upload

+

GET nonexistent manifest should return 404


+

PUT should accept a manifest upload


+

Registry should accept a manifest upload with no layers


Expected
    <string>: 
not to be empty

+

GET request to manifest URL (digest) should yield 200 response



Teardown

+

Delete config blob created in tests


+

Delete layer blob created in setup


+

Delete manifest created in tests



Content Discovery

Setup

+

Populate registry with test blob


+

Populate registry with test layer


+

Populate registry with test tags


+

Populate registry with test tags (no push)



Test content discovery endpoints

+

GET request to list tags should yield 200 response


+

GET number of tags should be limitable by `n` query parameter


+

GET start of tag is set by `last` query parameter



Teardown

+

Delete config blob created in tests


+

Delete layer blob created in setup


+

Delete created manifest & associated tags



Content Management

Setup

+

Populate registry with test config blob


+

Populate registry with test layer


+

Populate registry with test tag


+

Check how many tags there are before anything gets deleted



Manifest delete

+

DELETE request to manifest tag should return 202, unless tag deletion is disallowed (400)


+

DELETE request to manifest (digest) should yield 202 response unless already deleted


+

GET request to deleted manifest URL should yield 404 response, unless delete is disallowed


+

GET request to tags list should reflect manifest deletion



Blob delete

+

DELETE request to blob URL should yield 202 response


+

GET request to deleted blob URL should yield 404 response