package mapper import ( "fmt" "edge-infra.dev/pkg/edge/constants/api/cluster" "edge-infra.dev/pkg/edge/constants/api/fleet" "github.com/thoas/go-funk" ) func ToFleetType(labelKeys []string) (string, error) { fleetType := funk.Find(labelKeys, func(labelKey string) bool { return fleet.Type(labelKey).IsValid() == nil }) if fleetType == nil { return "", fmt.Errorf("no valid fleet type found, %v", labelKeys) } return fleetType.(string), nil } func ToClusterType(labelKeys []string) (string, error) { clusterType := funk.Find(labelKeys, func(labelKey string) bool { return cluster.Type(labelKey).IsValid() == nil }) if clusterType == nil { return "", fmt.Errorf("no valid cluster type found, %v", labelKeys) } return clusterType.(string), nil }