Accept TypedReference in AsOwner and AsController
This updates the AsOwner and AsController to use TypedReference, which is a more scoped version of ObjectReference that still contains all necessary fields to create a controller or owner reference for an object. Signed-off-by: hasheddan <georgedanielmangum@gmail.com>
This commit is contained in:
parent
adb65bc635
commit
1d97e32d05
|
|
@ -81,7 +81,7 @@ func TypedReferenceTo(o metav1.Object, of schema.GroupVersionKind) *v1alpha1.Typ
|
|||
}
|
||||
|
||||
// AsOwner converts the supplied object reference to an owner reference.
|
||||
func AsOwner(r *corev1.ObjectReference) metav1.OwnerReference {
|
||||
func AsOwner(r *v1alpha1.TypedReference) metav1.OwnerReference {
|
||||
return metav1.OwnerReference{
|
||||
APIVersion: r.APIVersion,
|
||||
Kind: r.Kind,
|
||||
|
|
@ -92,7 +92,7 @@ func AsOwner(r *corev1.ObjectReference) metav1.OwnerReference {
|
|||
|
||||
// AsController converts the supplied object reference to a controller
|
||||
// reference. You may also consider using metav1.NewControllerRef.
|
||||
func AsController(r *corev1.ObjectReference) metav1.OwnerReference {
|
||||
func AsController(r *v1alpha1.TypedReference) metav1.OwnerReference {
|
||||
c := true
|
||||
ref := AsOwner(r)
|
||||
ref.Controller = &c
|
||||
|
|
|
|||
|
|
@ -131,14 +131,13 @@ func TestTypedReferenceTo(t *testing.T) {
|
|||
|
||||
func TestAsOwner(t *testing.T) {
|
||||
tests := map[string]struct {
|
||||
r *corev1.ObjectReference
|
||||
r *v1alpha1.TypedReference
|
||||
want metav1.OwnerReference
|
||||
}{
|
||||
"Successful": {
|
||||
r: &corev1.ObjectReference{
|
||||
r: &v1alpha1.TypedReference{
|
||||
APIVersion: groupVersion,
|
||||
Kind: kind,
|
||||
Namespace: name,
|
||||
Name: name,
|
||||
UID: uid,
|
||||
},
|
||||
|
|
@ -165,14 +164,13 @@ func TestAsController(t *testing.T) {
|
|||
controller := true
|
||||
|
||||
tests := map[string]struct {
|
||||
r *corev1.ObjectReference
|
||||
r *v1alpha1.TypedReference
|
||||
want metav1.OwnerReference
|
||||
}{
|
||||
"Successful": {
|
||||
r: &corev1.ObjectReference{
|
||||
r: &v1alpha1.TypedReference{
|
||||
APIVersion: groupVersion,
|
||||
Kind: kind,
|
||||
Namespace: name,
|
||||
Name: name,
|
||||
UID: uid,
|
||||
},
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@ import (
|
|||
"github.com/google/go-cmp/cmp"
|
||||
"github.com/google/go-cmp/cmp/cmpopts"
|
||||
"github.com/pkg/errors"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
"k8s.io/apimachinery/pkg/types"
|
||||
|
|
@ -77,7 +76,7 @@ func TestResolve(t *testing.T) {
|
|||
controlled := &fake.Managed{}
|
||||
controlled.SetName(value)
|
||||
meta.SetExternalName(controlled, value)
|
||||
meta.AddControllerReference(controlled, meta.AsController(&corev1.ObjectReference{UID: types.UID("very-unique")}))
|
||||
meta.AddControllerReference(controlled, meta.AsController(&v1alpha1.TypedReference{UID: types.UID("very-unique")}))
|
||||
|
||||
type args struct {
|
||||
ctx context.Context
|
||||
|
|
@ -268,7 +267,7 @@ func TestResolveMultiple(t *testing.T) {
|
|||
controlled := &fake.Managed{}
|
||||
controlled.SetName(value)
|
||||
meta.SetExternalName(controlled, value)
|
||||
meta.AddControllerReference(controlled, meta.AsController(&corev1.ObjectReference{UID: types.UID("very-unique")}))
|
||||
meta.AddControllerReference(controlled, meta.AsController(&v1alpha1.TypedReference{UID: types.UID("very-unique")}))
|
||||
|
||||
type args struct {
|
||||
ctx context.Context
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ func LocalConnectionSecretFor(o LocalConnectionSecretOwner, kind schema.GroupVer
|
|||
ObjectMeta: metav1.ObjectMeta{
|
||||
Namespace: o.GetNamespace(),
|
||||
Name: o.GetWriteConnectionSecretToReference().Name,
|
||||
OwnerReferences: []metav1.OwnerReference{meta.AsController(meta.ReferenceTo(o, kind))},
|
||||
OwnerReferences: []metav1.OwnerReference{meta.AsController(meta.TypedReferenceTo(o, kind))},
|
||||
},
|
||||
Type: SecretTypeConnection,
|
||||
Data: make(map[string][]byte),
|
||||
|
|
@ -141,7 +141,7 @@ func ConnectionSecretFor(o ConnectionSecretOwner, kind schema.GroupVersionKind)
|
|||
ObjectMeta: metav1.ObjectMeta{
|
||||
Namespace: o.GetWriteConnectionSecretToReference().Namespace,
|
||||
Name: o.GetWriteConnectionSecretToReference().Name,
|
||||
OwnerReferences: []metav1.OwnerReference{meta.AsController(meta.ReferenceTo(o, kind))},
|
||||
OwnerReferences: []metav1.OwnerReference{meta.AsController(meta.TypedReferenceTo(o, kind))},
|
||||
},
|
||||
Type: SecretTypeConnection,
|
||||
Data: make(map[string][]byte),
|
||||
|
|
|
|||
Loading…
Reference in New Issue