{"record":{"id":"d54d1e9b2ca43f0b","repo":"rancher/rancher","slug":"unable-to-fetch-the-manifest-blob-of-s-w","errorCode":null,"errorMessage":"unable to fetch the manifest blob of %s: %w","messagePattern":"unable to fetch the manifest blob of (.+?): %w","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/catalogv2/oci/client.go","lineNumber":167,"sourceCode":"\n\t\t\t\treturn oras.SkipNode\n\t\t\t},\n\t\t},\n\t})\n\tif err != nil {\n\t\treturn \"\", fmt.Errorf(\"unable to oras copy the remote oci artifact %s: %w\", ociURL, err)\n\t}\n\n\t// Helm codebase sets oci artifacts manifest mediatype as ocispecv1.MediaTypeImageManifest\n\t// https://github.com/oras-project/oras-go/blob/v1/pkg/content/manifest.go#L89C22-L89C44 referenced by helm codebase\n\tif manifest.MediaType != ocispecv1.MediaTypeImageManifest {\n\t\treturn \"\", fmt.Errorf(\"the oci artifact %s is not a helm chart. The OCI URL must contain only helm charts\", ociURL)\n\t}\n\n\t// Fetch the manifest blob of the oci artifact\n\tmanifestblob, err := content.FetchAll(ctx, memoryStore, manifest)\n\tif err != nil {\n\t\treturn \"\", fmt.Errorf(\"unable to fetch the manifest blob of %s: %w\", ociURL, err)\n\t}\n\tvar manifestJSON ocispecv1.Manifest\n\terr = json.Unmarshal(manifestblob, &manifestJSON)\n\tif err != nil {\n\t\treturn \"\", fmt.Errorf(\"unable to unmarshal manifest blob of %s: %w\", ociURL, err)\n\t}\n\n\t// Create a temp file to store the helm chart tar\n\ttempFile, err := os.CreateTemp(\"\", \"helm-\")\n\tif err != nil {\n\t\treturn \"\", fmt.Errorf(\"unable to create temp file for storing the oci artifact\")\n\t}\n\n\t// Checking if the OCI artifact is of type helm config ?\n\tif manifestJSON.ArtifactType == helmregistry.ConfigMediaType || manifestJSON.Config.MediaType == helmregistry.ConfigMediaType {\n\t\t// find the layer of helm chart type and fetch it\n\t\tfor _, layer := range manifestJSON.Layers {\n\t\t\tif layer.MediaType == helmregistry.ChartLayerMediaType {","sourceCodeStart":149,"sourceCodeEnd":185,"githubUrl":"https://github.com/rancher/rancher/blob/932558d4e68565aff2d2f36e89ec4a391b06e7c5/pkg/catalogv2/oci/client.go#L149-L185","documentation":"Error \"unable to fetch the manifest blob of %s: %w\" thrown in rancher/rancher.","triggerScenarios":"Thrown at pkg/catalogv2/oci/client.go:167 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"932558d4e68565aff2d2f36e89ec4a391b06e7c5","analyzedAt":"2026-08-16T04:37:02.125Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}