Skip to content

Commit 8d73c0e

Browse files
committed
Fix createTargetObject for object whose namespace is mutated
Previously, createTargetObject updated an object using the metadata (including namespace) of the unmutated object, even when the object was mutated.
1 parent 3eefea4 commit 8d73c0e

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

cmd/clusterctl/client/cluster/mover.go

+4-6
Original file line numberDiff line numberDiff line change
@@ -946,12 +946,10 @@ func (o *objectMover) createTargetObject(ctx context.Context, nodeToCreate *node
946946
obj := &unstructured.Unstructured{}
947947
obj.SetAPIVersion(nodeToCreate.identity.APIVersion)
948948
obj.SetKind(nodeToCreate.identity.Kind)
949-
objKey := client.ObjectKey{
950-
Namespace: nodeToCreate.identity.Namespace,
951-
Name: nodeToCreate.identity.Name,
952-
}
949+
obj.SetName(nodeToCreate.identity.Name)
950+
obj.SetNamespace(nodeToCreate.identity.Namespace)
953951

954-
if err := cFrom.Get(ctx, objKey, obj); err != nil {
952+
if err := cFrom.Get(ctx, client.ObjectKeyFromObject(obj), obj); err != nil {
955953
return errors.Wrapf(err, "error reading %q %s/%s",
956954
obj.GroupVersionKind(), obj.GetNamespace(), obj.GetName())
957955
}
@@ -1006,7 +1004,7 @@ func (o *objectMover) createTargetObject(ctx context.Context, nodeToCreate *node
10061004
existingTargetObj := &unstructured.Unstructured{}
10071005
existingTargetObj.SetAPIVersion(obj.GetAPIVersion())
10081006
existingTargetObj.SetKind(obj.GetKind())
1009-
if err := cTo.Get(ctx, objKey, existingTargetObj); err != nil {
1007+
if err := cTo.Get(ctx, client.ObjectKeyFromObject(obj), existingTargetObj); err != nil {
10101008
return errors.Wrapf(err, "error reading resource for %q %s/%s",
10111009
existingTargetObj.GroupVersionKind(), existingTargetObj.GetNamespace(), existingTargetObj.GetName())
10121010
}

0 commit comments

Comments
 (0)