diff --git a/pkg/metrics/factory.go b/pkg/metrics/factory.go index cf669729..c145af94 100644 --- a/pkg/metrics/factory.go +++ b/pkg/metrics/factory.go @@ -44,6 +44,10 @@ func (factory Factory) Observer() Interface { return &LinkerdObserver{ client: factory.Client, } + case factory.MeshProvider == "linkerd": + return &LinkerdObserver{ + client: factory.Client, + } default: return &IstioObserver{ client: factory.Client, diff --git a/pkg/router/factory.go b/pkg/router/factory.go index a14fef68..b99f440f 100644 --- a/pkg/router/factory.go +++ b/pkg/router/factory.go @@ -70,6 +70,14 @@ func (factory *Factory) MeshRouter(provider string) Interface { smiClient: factory.meshClient, targetMesh: mesh, } + case provider == "linkerd": + return &SmiRouter{ + logger: factory.logger, + flaggerClient: factory.flaggerClient, + kubeClient: factory.kubeClient, + smiClient: factory.meshClient, + targetMesh: "linkerd", + } case strings.HasPrefix(provider, "supergloo"): supergloo, err := NewSuperglooRouter(context.TODO(), provider, factory.flaggerClient, factory.logger, factory.kubeConfig) if err != nil {