Skip to content

Harbor cosign signature manifest is not saved as artifact accessory after replication #19788

@karaguo

Description

@karaguo

We notice a flaky issue happening at our harbor instances that:

After a replication job, the destination registry UI, one artifact shows no cosign signature, while at the source registry it has the signature.

To check the artifact item in db, I got no accessory associated with the artifact by

curl -skL https://admin:<omitted>@<omitted>/api/v2.0/projects/library/repositories/<omitted>/artifacts/<omitted>?with_accessory=true&with_signature=true

However, crane manifest shows that the signature manifest is in harbor storage.

crane manifest <host>/<artifact>:sha256-<digest>.sig  | jq .
{
  "schemaVersion": 2,
  "mediaType": "application/vnd.oci.image.manifest.v1+json",
  "config": {
    "mediaType": "application/vnd.docker.container.image.v1+json",
    "size": 233,
    "digest": "sha256:<omitted>"
  },
  "layers": [
    {
      "mediaType": "application/vnd.dev.cosign.simplesigning.v1+json",
      "size": 276,
      "digest": "sha256:<omitted>",
      "annotations": {
        "dev.cosignproject.cosign/signature": "<omitted>,
        "dev.sigstore.cosign/certificate": "-----BEGIN CERTIFICATE-----<omitted>-----END CERTIFICATE-----\n",
        "dev.sigstore.cosign/chain": ""
      }
    }
  ],
  "annotations": {...}
}

Any thought on why the flake happens?

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions