Skip to content

Show artifact type when pushing files #1061

@qweeah

Description

@qweeah

What is the version of your ORAS CLI

1.0.1

What would you like to be added?

When #1009 completes, by default oras push will build an image manifest with artifactType set to --artifact-type. If the flag is not provided, the artifact type will be default application/vnd.unknown.artifact.v1.

When using --image-spec v1.0, the artifact type will be shown in the status of config blob 44136fa355b3

$ oras push localhost:5000/test:push foo -v --disable-path-validation --image-spec v1.0
Preparing foo
Uploading fcde2b2edba5 foo
Uploading 44136fa355b3 application/vnd.unknown.artifact.v1
Uploaded  fcde2b2edba5 foo
Uploaded  44136fa355b3 application/vnd.unknown.artifact.v1
Uploading 89773cad25ff application/vnd.oci.image.manifest.v1+json
Uploaded  89773cad25ff application/vnd.oci.image.manifest.v1+json
Pushed [registry] localhost:5000/test:push
Digest: sha256:89773cad25ffb86bf3c5a535e772ca2bd6a9f81389f598666ca70caceac5a790

When --image-spec is not provided or set to v1.1, the output of oras push doesn't mentioned the used artifact type.

$ oras push localhost:5000/test:push foo -v --disable-path-validation --image-spec v1.1
Preparing foo
Uploading fcde2b2edba5 foo
Uploading 44136fa355b3 application/vnd.oci.empty.v1+json
Uploaded  fcde2b2edba5 foo
Uploaded  44136fa355b3 application/vnd.oci.empty.v1+json
Uploading d7216194f529 application/vnd.oci.image.manifest.v1+json
Uploaded  d7216194f529 application/vnd.oci.image.manifest.v1+json
Pushed [registry] localhost:5000/test:push
Digest: sha256:d7216194f52907f710f123086ea4b1bc91e0664146ac64b205560680ba4cc6bd

When --image-spec is not provided or set to v1.1, the output of oras push should contain which artifact type is used to pack the manifest, below are some suggested changes.

$ # side by side with manifest media type
$ oras push localhost:5000/test:push foo -v --disable-path-validation
Preparing foo
Uploading fcde2b2edba5 foo
Uploading 44136fa355b3 application/vnd.oci.empty.v1+json
Uploaded  fcde2b2edba5 foo
Uploaded  44136fa355b3 application/vnd.oci.empty.v1+json
Uploading d7216194f529 application/vnd.oci.image.manifest.v1+json(application/vnd.unknown.artifact.v1)
Uploaded  d7216194f529 application/vnd.oci.image.manifest.v1+json(application/vnd.unknown.artifact.v1)
Pushed [registry] localhost:5000/test:push
Digest: sha256:d7216194f52907f710f123086ea4b1bc91e0664146ac64b205560680ba4cc6bd

Or

$ # in the pushing summary below digest of manifest
$ oras push localhost:5000/test:push foo -v --disable-path-validation
Preparing foo
Uploading fcde2b2edba5 foo
Uploading 44136fa355b3 application/vnd.oci.empty.v1+json
Uploaded  fcde2b2edba5 foo
Uploaded  44136fa355b3 application/vnd.oci.empty.v1+json
Uploading d7216194f529 application/vnd.oci.image.manifest.v1+json
Uploaded  d7216194f529 application/vnd.oci.image.manifest.v1+json
Pushed [registry] localhost:5000/test:push
Digest: sha256:d7216194f52907f710f123086ea4b1bc91e0664146ac64b205560680ba4cc6bd
Artifact Type: application/vnd.unknown.artifact.v1

Or

$ # print when packing the manifest
$ oras push localhost:5000/test:push foo -v --disable-path-validation
Preparing foo
Preparing d7216194f529(application/vnd.unknown.artifact.v1)
Uploading fcde2b2edba5 foo
Uploading 44136fa355b3 application/vnd.oci.empty.v1+json
Uploaded  fcde2b2edba5 foo
Uploaded  44136fa355b3 application/vnd.oci.empty.v1+json
Uploading d7216194f529 application/vnd.oci.image.manifest.v1+json
Uploaded  d7216194f529 application/vnd.oci.image.manifest.v1+json
Pushed [registry] localhost:5000/test:push
Digest: sha256:d7216194f52907f710f123086ea4b1bc91e0664146ac64b205560680ba4cc6bd

Are you willing to submit PRs to contribute to this feature?

  • Yes, I am willing to implement it.

Metadata

Metadata

Labels

enhancementNew feature or requestquestionFurther information is requestedspec requiredIssues that require specifications

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions