...
1 package injector
2
3 import (
4 "context"
5 "flag"
6 "fmt"
7
8 "github.com/linkerd/linkerd2/controller/k8s"
9 "github.com/linkerd/linkerd2/controller/webhook"
10 "github.com/linkerd/linkerd2/pkg/flags"
11 )
12
13
14 func Main(args []string) {
15 cmd := flag.NewFlagSet("tap-injector", flag.ExitOnError)
16 metricsAddr := cmd.String("metrics-addr", fmt.Sprintf(":%d", 9995), "address to serve scrapable metrics on")
17 addr := cmd.String("addr", ":8443", "address to serve on")
18 kubeconfig := cmd.String("kubeconfig", "", "path to kubeconfig")
19 tapSvcName := cmd.String("tap-service-name", "", "name of the tap service")
20 enablePprof := cmd.Bool("enable-pprof", false, "Enable pprof endpoints on the admin server")
21 flags.ConfigureAndParse(cmd, args)
22 webhook.Launch(
23 context.Background(),
24 []k8s.APIResource{k8s.NS},
25 Mutate(*tapSvcName),
26 "tap-injector",
27 *metricsAddr,
28 *addr,
29 *kubeconfig,
30 *enablePprof,
31 )
32 }
33
View as plain text