Skip to content

Commit aba95b9

Browse files
TerryHowemattfarina
authored andcommittedJan 1, 2025

File tree

3 files changed

+23
-4
lines changed

3 files changed

+23
-4
lines changed
 

‎pkg/registry/client.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -415,7 +415,7 @@ func (c *Client) Pull(ref string, options ...PullOption) (*PullResult, error) {
415415
}
416416
registryStore := content.Registry{Resolver: remotesResolver}
417417

418-
manifest, err := oras.Copy(ctx(c.out, c.debug), registryStore, parsedRef.OrasReference.String(), memoryStore, "",
418+
manifest, err := oras.Copy(ctx(c.out, c.debug), registryStore, parsedRef.String(), memoryStore, "",
419419
oras.WithPullEmptyNameAllowed(),
420420
oras.WithAllowedMediaTypes(allowedMediaTypes),
421421
oras.WithLayerDescriptors(func(l []ocispec.Descriptor) {
@@ -477,7 +477,7 @@ func (c *Client) Pull(ref string, options ...PullOption) (*PullResult, error) {
477477
},
478478
Chart: &DescriptorPullSummaryWithMeta{},
479479
Prov: &DescriptorPullSummary{},
480-
Ref: parsedRef.OrasReference.String(),
480+
Ref: parsedRef.String(),
481481
}
482482
var getManifestErr error
483483
if _, manifestData, ok := memoryStore.Get(manifest); !ok {
@@ -648,7 +648,7 @@ func (c *Client) Push(data []byte, ref string, options ...PushOption) (*PushResu
648648
return nil, err
649649
}
650650

651-
if err := memoryStore.StoreManifest(parsedRef.OrasReference.String(), manifest, manifestData); err != nil {
651+
if err := memoryStore.StoreManifest(parsedRef.String(), manifest, manifestData); err != nil {
652652
return nil, err
653653
}
654654

@@ -678,7 +678,7 @@ func (c *Client) Push(data []byte, ref string, options ...PushOption) (*PushResu
678678
},
679679
Chart: chartSummary,
680680
Prov: &descriptorPushSummary{}, // prevent nil references
681-
Ref: parsedRef.OrasReference.String(),
681+
Ref: parsedRef.String(),
682682
}
683683
if operation.provData != nil {
684684
result.Prov = &descriptorPushSummary{

‎pkg/registry/reference.go

+7
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,10 @@ func NewReference(raw string) (result Reference, err error) {
6969
result.Tag = result.OrasReference.Reference
7070
return result, nil
7171
}
72+
73+
func (r *Reference) String() string {
74+
if r.Tag == "" {
75+
return r.OrasReference.String() + "@" + r.Digest
76+
}
77+
return r.OrasReference.String()
78+
}

‎pkg/registry/reference_test.go

+12
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,18 @@ func verify(t *testing.T, actual Reference, registry, repository, tag, digest st
4040
if digest != actual.Digest {
4141
t.Errorf("Digest expected %v actual %v", digest, actual.Digest)
4242
}
43+
expectedString := registry
44+
if repository != "" {
45+
expectedString = expectedString + "/" + repository
46+
}
47+
if tag != "" {
48+
expectedString = expectedString + ":" + tag
49+
} else {
50+
expectedString = expectedString + "@" + digest
51+
}
52+
if actual.String() != expectedString {
53+
t.Errorf("String expected %s actual %s", expectedString, actual.String())
54+
}
4355
}
4456

4557
func TestNewReference(t *testing.T) {

0 commit comments

Comments
 (0)
Please sign in to comment.