...

Source file src/edge-infra.dev/pkg/edge/api/graph/mapper/mapper_labels.go

Documentation: edge-infra.dev/pkg/edge/api/graph/mapper

     1  package mapper
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"edge-infra.dev/pkg/edge/constants/api/cluster"
     7  	"edge-infra.dev/pkg/edge/constants/api/fleet"
     8  
     9  	"github.com/thoas/go-funk"
    10  )
    11  
    12  func ToFleetType(labelKeys []string) (string, error) {
    13  	fleetType := funk.Find(labelKeys, func(labelKey string) bool { return fleet.Type(labelKey).IsValid() == nil })
    14  	if fleetType == nil {
    15  		return "", fmt.Errorf("no valid fleet type found, %v", labelKeys)
    16  	}
    17  	return fleetType.(string), nil
    18  }
    19  
    20  func ToClusterType(labelKeys []string) (string, error) {
    21  	clusterType := funk.Find(labelKeys, func(labelKey string) bool { return cluster.Type(labelKey).IsValid() == nil })
    22  	if clusterType == nil {
    23  		return "", fmt.Errorf("no valid cluster type found, %v", labelKeys)
    24  	}
    25  	return clusterType.(string), nil
    26  }
    27  

View as plain text