func autoConvert_v1alpha1_ClusterRoleBinding_To_rbac_ClusterRoleBinding(in *ClusterRoleBinding, out *rbac.ClusterRoleBinding, s conversion.Scope) error { if err := api.Convert_unversioned_TypeMeta_To_unversioned_TypeMeta(&in.TypeMeta, &out.TypeMeta, s); err != nil { return err } // TODO: Inefficient conversion - can we improve it? if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil { return err } if in.Subjects != nil { in, out := &in.Subjects, &out.Subjects *out = make([]rbac.Subject, len(*in)) for i := range *in { if err := Convert_v1alpha1_Subject_To_rbac_Subject(&(*in)[i], &(*out)[i], s); err != nil { return err } } } else { out.Subjects = nil } // TODO: Inefficient conversion - can we improve it? if err := s.Convert(&in.RoleRef, &out.RoleRef, 0); err != nil { return err } return nil }
func autoConvert_v1beta1_ClusterRoleBinding_To_rbac_ClusterRoleBinding(in *ClusterRoleBinding, out *rbac.ClusterRoleBinding, s conversion.Scope) error { out.ObjectMeta = in.ObjectMeta out.Subjects = *(*[]rbac.Subject)(unsafe.Pointer(&in.Subjects)) if err := Convert_v1beta1_RoleRef_To_rbac_RoleRef(&in.RoleRef, &out.RoleRef, s); err != nil { return err } return nil }
func autoConvert_v1alpha1_ClusterRoleBinding_To_rbac_ClusterRoleBinding(in *ClusterRoleBinding, out *rbac.ClusterRoleBinding, s conversion.Scope) error { // TODO: Inefficient conversion - can we improve it? if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil { return err } out.Subjects = *(*[]rbac.Subject)(unsafe.Pointer(&in.Subjects)) if err := Convert_v1alpha1_RoleRef_To_rbac_RoleRef(&in.RoleRef, &out.RoleRef, s); err != nil { return err } return nil }
func newClusterRoleBinding(roleName string, subjects ...string) rbac.ClusterRoleBinding { r := rbac.ClusterRoleBinding{ ObjectMeta: api.ObjectMeta{}, RoleRef: api.ObjectReference{ Kind: "ClusterRole", // ClusterRoleBindings can only refer to ClusterRole Name: roleName, }, } r.Subjects = make([]rbac.Subject, len(subjects)) for i, subject := range subjects { split := strings.SplitN(subject, ":", 2) r.Subjects[i].Kind, r.Subjects[i].Name = split[0], split[1] } return r }
func autoConvert_v1alpha1_ClusterRoleBinding_To_rbac_ClusterRoleBinding(in *ClusterRoleBinding, out *rbac.ClusterRoleBinding, s conversion.Scope) error { out.ObjectMeta = in.ObjectMeta if in.Subjects != nil { in, out := &in.Subjects, &out.Subjects *out = make([]rbac.Subject, len(*in)) for i := range *in { if err := Convert_v1alpha1_Subject_To_rbac_Subject(&(*in)[i], &(*out)[i], s); err != nil { return err } } } else { out.Subjects = nil } if err := Convert_v1alpha1_RoleRef_To_rbac_RoleRef(&in.RoleRef, &out.RoleRef, s); err != nil { return err } return nil }