Skip to content

Commit 7d8041a

Browse files
authored
Remove resourcename in extension (#143)
Since there is metadata in extension, resourcename is not needed Signed-off-by: Jian Qiu <jqiu@redhat.com>
1 parent bff262d commit 7d8041a

5 files changed

Lines changed: 9 additions & 116 deletions

File tree

pkg/cloudevents/clients/work/agent/codec/manifestbundle.go

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ func (c *ManifestBundleCodec) Encode(source string, eventType types.CloudEventsT
6363
evt := types.NewEventBuilder(source, eventType).
6464
WithResourceID(string(work.UID)).
6565
WithStatusUpdateSequenceID(sequenceGenerator.Generate().String()).
66-
WithResourceName(work.Name).
6766
WithResourceVersion(resourceVersion).
6867
WithClusterName(work.Namespace).
6968
WithOriginalSource(originalSource).
@@ -113,17 +112,6 @@ func (c *ManifestBundleCodec) Decode(evt *cloudevents.Event) (*workv1.ManifestWo
113112
return nil, fmt.Errorf("failed to get resourceid extension: %v", err)
114113
}
115114

116-
var resourceName string
117-
if v, ok := evtExtensions[types.ExtensionResourceName]; ok {
118-
resourceName, err = cloudeventstypes.ToString(v)
119-
if err != nil {
120-
return nil, fmt.Errorf("failed to get resourcename extension: %v", err)
121-
}
122-
} else {
123-
// fall back to set resourceName to resourceID
124-
resourceName = resourceID
125-
}
126-
127115
resourceVersion, err := cloudeventstypes.ToInteger(evtExtensions[types.ExtensionResourceVersion])
128116
if err != nil {
129117
return nil, fmt.Errorf("failed to get resourceversion extension: %v", err)
@@ -147,7 +135,9 @@ func (c *ManifestBundleCodec) Decode(evt *cloudevents.Event) (*workv1.ManifestWo
147135
}
148136

149137
metaObj.UID = kubetypes.UID(resourceID)
150-
metaObj.Name = resourceName
138+
if len(metaObj.Name) == 0 {
139+
metaObj.Name = resourceID
140+
}
151141
metaObj.Namespace = clusterName
152142
metaObj.ResourceVersion = fmt.Sprintf("%d", resourceVersion)
153143
// if generation is not set, set it the same as resourceVersion

pkg/cloudevents/clients/work/agent/codec/manifestbundle_test.go

Lines changed: 1 addition & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,6 @@ func TestManifestBundleDecode(t *testing.T) {
204204
evt.SetType("io.open-cluster-management.works.v1alpha1.manifestbundles.spec.test")
205205
evt.SetExtension("resourceid", "test")
206206
evt.SetExtension("resourceversion", "13")
207-
evt.SetExtension("resourcename", "work1")
208207
return &evt
209208
}(),
210209
expectedErr: true,
@@ -217,7 +216,6 @@ func TestManifestBundleDecode(t *testing.T) {
217216
evt.SetType("io.open-cluster-management.works.v1alpha1.manifestbundles.spec.test")
218217
evt.SetExtension("resourceid", "test")
219218
evt.SetExtension("resourceversion", "13")
220-
evt.SetExtension("resourcename", "work1")
221219
return &evt
222220
}(),
223221
expectedErr: true,
@@ -231,7 +229,6 @@ func TestManifestBundleDecode(t *testing.T) {
231229
evt.SetExtension("resourceid", "test")
232230
evt.SetExtension("resourceversion", "13")
233231
evt.SetExtension("clustername", "cluster1")
234-
evt.SetExtension("resourcename", "work1")
235232
evt.SetExtension("deletiontimestamp", "1985-04-12T23:20:50.52Z")
236233
return &evt
237234
}(),
@@ -245,7 +242,6 @@ func TestManifestBundleDecode(t *testing.T) {
245242
evt.SetExtension("resourceid", "test")
246243
evt.SetExtension("resourceversion", "13")
247244
evt.SetExtension("clustername", "cluster1")
248-
evt.SetExtension("resourcename", "work1")
249245
if err := evt.SetData(cloudevents.ApplicationJSON, &payload.ManifestBundle{}); err != nil {
250246
t.Fatal(err)
251247
}
@@ -255,30 +251,6 @@ func TestManifestBundleDecode(t *testing.T) {
255251
},
256252
{
257253
name: "decode a cloudevent",
258-
event: func() *cloudevents.Event {
259-
evt := cloudevents.NewEvent()
260-
evt.SetSource("source1")
261-
evt.SetType("io.open-cluster-management.works.v1alpha1.manifestbundles.spec.test")
262-
evt.SetExtension("resourceid", "test")
263-
evt.SetExtension("resourceversion", "13")
264-
evt.SetExtension("clustername", "cluster1")
265-
evt.SetExtension("resourcename", "work1")
266-
if err := evt.SetData(cloudevents.ApplicationJSON, &payload.ManifestBundle{
267-
Manifests: []workv1.Manifest{
268-
{
269-
RawExtension: runtime.RawExtension{
270-
Raw: toConfigMap(t),
271-
},
272-
},
273-
},
274-
}); err != nil {
275-
t.Fatal(err)
276-
}
277-
return &evt
278-
}(),
279-
},
280-
{
281-
name: "decode a cloudevent with empty resourceName",
282254
event: func() *cloudevents.Event {
283255
evt := cloudevents.NewEvent()
284256
evt.SetSource("source1")
@@ -321,7 +293,6 @@ func TestManifestBundleDecode(t *testing.T) {
321293
evt.SetExtension("resourceid", "test")
322294
evt.SetExtension("resourceversion", "13")
323295
evt.SetExtension("clustername", "cluster1")
324-
evt.SetExtension("resourcename", "work1")
325296
evt.SetExtension(types.ExtensionWorkMeta, string(metaJson))
326297
if err := evt.SetData(cloudevents.ApplicationJSON, &payload.ManifestBundle{
327298
Manifests: []workv1.Manifest{
@@ -378,7 +349,7 @@ func TestManifestBundleDecode(t *testing.T) {
378349
if work.ObjectMeta.UID != "test" {
379350
t.Errorf("expected UID to be overridden to 'test', got %s", work.ObjectMeta.UID)
380351
}
381-
if work.ObjectMeta.Name != "work1" {
352+
if work.ObjectMeta.Name != "original-name" {
382353
t.Errorf("expected Name to be overridden to 'work1', got %s", work.ObjectMeta.Name)
383354
}
384355
if work.ObjectMeta.Namespace != "cluster1" {

pkg/cloudevents/clients/work/source/codec/manifestbundle.go

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ func (c *ManifestBundleCodec) Encode(source string, eventType types.CloudEventsT
4444
evt := types.NewEventBuilder(source, eventType).
4545
WithClusterName(work.Namespace).
4646
WithResourceID(string(work.UID)).
47-
WithResourceName(work.Name).
4847
WithResourceVersion(int64(resourceVersion)).
4948
NewEvent()
5049

@@ -91,17 +90,6 @@ func (c *ManifestBundleCodec) Decode(evt *cloudevents.Event) (*workv1.ManifestWo
9190
return nil, fmt.Errorf("failed to get resourceid extension: %v", err)
9291
}
9392

94-
var resourceName string
95-
if v, ok := evtExtensions[types.ExtensionResourceName]; ok {
96-
resourceName, err = cloudeventstypes.ToString(v)
97-
if err != nil {
98-
return nil, fmt.Errorf("failed to get resourcename extension: %v", err)
99-
}
100-
} else {
101-
// fall back to set resourceName to resourceID
102-
resourceName = resourceID
103-
}
104-
10593
resourceVersion, err := cloudeventstypes.ToInteger(evtExtensions[types.ExtensionResourceVersion])
10694
if err != nil {
10795
return nil, fmt.Errorf("failed to get resourceversion extension: %v", err)
@@ -129,7 +117,9 @@ func (c *ManifestBundleCodec) Decode(evt *cloudevents.Event) (*workv1.ManifestWo
129117
}
130118

131119
metaObj.UID = kubetypes.UID(resourceID)
132-
metaObj.Name = resourceName
120+
if len(metaObj.Name) == 0 {
121+
metaObj.Name = resourceID
122+
}
133123
metaObj.ResourceVersion = fmt.Sprintf("%d", resourceVersion)
134124
if metaObj.Annotations == nil {
135125
metaObj.Annotations = map[string]string{}

pkg/cloudevents/clients/work/source/codec/manifestbundle_test.go

Lines changed: 2 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -181,46 +181,6 @@ func TestManifestBundleDecode(t *testing.T) {
181181
}(),
182182
expectedErr: true,
183183
},
184-
{
185-
name: "decode a manifestbundle status cloudevent with unset resourceName",
186-
event: func() *cloudevents.Event {
187-
evt := cloudevents.NewEvent()
188-
evt.SetSource("source1")
189-
evt.SetType("io.open-cluster-management.works.v1alpha1.manifestbundles.status.test")
190-
evt.SetExtension("resourceid", "test")
191-
evt.SetExtension("resourceversion", "13")
192-
evt.SetExtension("sequenceid", "1834773391719010304")
193-
if err := evt.SetData(cloudevents.ApplicationJSON, &payload.ManifestBundleStatus{
194-
Conditions: []metav1.Condition{
195-
{
196-
Type: "Test",
197-
Status: metav1.ConditionTrue,
198-
},
199-
},
200-
}); err != nil {
201-
t.Fatal(err)
202-
}
203-
return &evt
204-
}(),
205-
expectedWork: &workv1.ManifestWork{
206-
ObjectMeta: metav1.ObjectMeta{
207-
UID: kubetypes.UID("test"),
208-
ResourceVersion: "13",
209-
Annotations: map[string]string{
210-
"cloudevents.open-cluster-management.io/sequenceid": "1834773391719010304",
211-
},
212-
Name: "test",
213-
},
214-
Status: workv1.ManifestWorkStatus{
215-
Conditions: []metav1.Condition{
216-
{
217-
Type: "Test",
218-
Status: metav1.ConditionTrue,
219-
},
220-
},
221-
},
222-
},
223-
},
224184
{
225185
name: "decode a manifestbundle status cloudevent",
226186
event: func() *cloudevents.Event {
@@ -229,7 +189,6 @@ func TestManifestBundleDecode(t *testing.T) {
229189
evt.SetType("io.open-cluster-management.works.v1alpha1.manifestbundles.status.test")
230190
evt.SetExtension("resourceid", "test")
231191
evt.SetExtension("resourceversion", "13")
232-
evt.SetExtension("resourcename", "work1")
233192
evt.SetExtension("sequenceid", "1834773391719010304")
234193
if err := evt.SetData(cloudevents.ApplicationJSON, &payload.ManifestBundleStatus{
235194
Conditions: []metav1.Condition{
@@ -250,7 +209,7 @@ func TestManifestBundleDecode(t *testing.T) {
250209
Annotations: map[string]string{
251210
"cloudevents.open-cluster-management.io/sequenceid": "1834773391719010304",
252211
},
253-
Name: "work1",
212+
Name: "test",
254213
},
255214
Status: workv1.ManifestWorkStatus{
256215
Conditions: []metav1.Condition{
@@ -268,7 +227,7 @@ func TestManifestBundleDecode(t *testing.T) {
268227
metaJson, err := json.Marshal(metav1.ObjectMeta{
269228
UID: kubetypes.UID("test"),
270229
ResourceVersion: "13",
271-
Name: "test",
230+
Name: "work1",
272231
Namespace: "cluster1",
273232
Labels: map[string]string{"test1": "test1"},
274233
Annotations: map[string]string{"test2": "test2"},
@@ -281,7 +240,6 @@ func TestManifestBundleDecode(t *testing.T) {
281240
evt.SetSource("source1")
282241
evt.SetType("io.open-cluster-management.works.v1alpha1.manifestbundles.status.test")
283242
evt.SetExtension("resourceid", "test")
284-
evt.SetExtension("resourcename", "work1")
285243
evt.SetExtension("resourceversion", "13")
286244
evt.SetExtension("metadata", string(metaJson))
287245
evt.SetExtension("sequenceid", "1834773391719010304")

pkg/cloudevents/generic/types/types.go

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,6 @@ const (
5757
// ExtensionResourceID is the cloud event extension key of the resource ID.
5858
ExtensionResourceID = "resourceid"
5959

60-
// ExtensionResourceName is the cloud event extension key of the resource name.
61-
ExtensionResourceName = "resourcename"
62-
6360
// ExtensionResourceVersion is the cloud event extension key of the resource version.
6461
ExtensionResourceVersion = "resourceversion"
6562

@@ -234,7 +231,6 @@ type EventBuilder struct {
234231
clusterName string
235232
originalSource string
236233
resourceID string
237-
resourceName string
238234
sequenceID string
239235
resourceVersion *int64
240236
eventType CloudEventsType
@@ -253,11 +249,6 @@ func (b *EventBuilder) WithResourceID(resourceID string) *EventBuilder {
253249
return b
254250
}
255251

256-
func (b *EventBuilder) WithResourceName(resourceName string) *EventBuilder {
257-
b.resourceName = resourceName
258-
return b
259-
}
260-
261252
func (b *EventBuilder) WithResourceVersion(resourceVersion int64) *EventBuilder {
262253
b.resourceVersion = &resourceVersion
263254
return b
@@ -297,13 +288,6 @@ func (b *EventBuilder) NewEvent() cloudevents.Event {
297288
evt.SetExtension(ExtensionResourceID, b.resourceID)
298289
}
299290

300-
if len(b.resourceName) != 0 {
301-
evt.SetExtension(ExtensionResourceName, b.resourceName)
302-
} else {
303-
// if resourceName is not set, uses resourceID as the resourceName
304-
evt.SetExtension(ExtensionResourceName, b.resourceID)
305-
}
306-
307291
if b.resourceVersion != nil {
308292
evt.SetExtension(ExtensionResourceVersion, *b.resourceVersion)
309293
}

0 commit comments

Comments
 (0)