github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/operator/networking/kinds/networking/networking.go (about) 1 package networking 2 3 import ( 4 "context" 5 "fmt" 6 7 "github.com/caos/orbos/internal/operator/core" 8 "github.com/caos/orbos/internal/operator/networking/kinds/networking/legacycf" 9 "github.com/caos/orbos/mntr" 10 "github.com/caos/orbos/pkg/labels" 11 "github.com/caos/orbos/pkg/secret" 12 "github.com/caos/orbos/pkg/tree" 13 ) 14 15 func GetQueryAndDestroyFuncs( 16 ctx context.Context, 17 monitor mntr.Monitor, 18 operatorLabels *labels.Operator, 19 desiredTree *tree.Tree, 20 currentTree *tree.Tree, 21 namespace string, 22 ) ( 23 query core.QueryFunc, 24 destroy core.DestroyFunc, 25 secrets map[string]*secret.Secret, 26 existing map[string]*secret.Existing, 27 migrate bool, 28 err error, 29 ) { 30 switch desiredTree.Common.Kind { 31 case "networking.caos.ch/LegacyCloudflare": 32 return legacycf.AdaptFunc(ctx, namespace, operatorLabels)(monitor, desiredTree, currentTree) 33 default: 34 return nil, nil, nil, nil, false, fmt.Errorf("unknown networking kind %s", desiredTree.Common.Kind) 35 } 36 }