use plugin registry and prepare for conversion (#1003)

* use plugin registry and prepare for conersion

* Register plugins explicitly to a registry

* check interface impl instead of struc var

* setup plugins at top level

* treat plugin type combinations

* pass registry as arg of V1alpha1ToInternal

* move registry yet another level up

* check interface type separately
This commit is contained in:
Lucas Severo Alves
2022-12-01 06:05:54 -08:00
committed by GitHub
parent 6e953b2ff3
commit da8b145980
22 changed files with 234 additions and 196 deletions
@@ -26,9 +26,9 @@ import (
// RemovePodsViolatingNodeAffinityArgs holds arguments used to configure RemovePodsViolatingNodeAffinity plugin.
type RemovePodsViolatingNodeAffinityArgs struct {
metav1.TypeMeta
metav1.TypeMeta `json:",inline"`
Namespaces *api.Namespaces
LabelSelector *metav1.LabelSelector
NodeAffinityType []string
Namespaces *api.Namespaces `json:"namespaces"`
LabelSelector *metav1.LabelSelector `json:"labelSelector"`
NodeAffinityType []string `json:"nodeAffinityType"`
}