...

Source file src/github.com/linkerd/linkerd2/controller/cmd/proxy-injector/main.go

Documentation: github.com/linkerd/linkerd2/controller/cmd/proxy-injector

     1  package proxyinjector
     2  
     3  import (
     4  	"context"
     5  	"flag"
     6  	"fmt"
     7  
     8  	"github.com/linkerd/linkerd2/controller/k8s"
     9  	injector "github.com/linkerd/linkerd2/controller/proxy-injector"
    10  	"github.com/linkerd/linkerd2/controller/webhook"
    11  	"github.com/linkerd/linkerd2/pkg/flags"
    12  )
    13  
    14  // Main executes the proxy-injector subcommand
    15  func Main(args []string) {
    16  	cmd := flag.NewFlagSet("proxy-injector", flag.ExitOnError)
    17  	metricsAddr := cmd.String("metrics-addr", fmt.Sprintf(":%d", 9995), "address to serve scrapable metrics on")
    18  	addr := cmd.String("addr", ":8443", "address to serve on")
    19  	kubeconfig := cmd.String("kubeconfig", "", "path to kubeconfig")
    20  	linkerdNamespace := cmd.String("linkerd-namespace", "linkerd", "control plane namespace")
    21  	enablePprof := cmd.Bool("enable-pprof", false, "Enable pprof endpoints on the admin server")
    22  	flags.ConfigureAndParse(cmd, args)
    23  
    24  	webhook.Launch(
    25  		context.Background(),
    26  		[]k8s.APIResource{k8s.NS, k8s.Deploy, k8s.RC, k8s.RS, k8s.Job, k8s.DS, k8s.SS, k8s.Pod, k8s.CJ},
    27  		injector.Inject(*linkerdNamespace),
    28  		"linkerd-proxy-injector",
    29  		*metricsAddr,
    30  		*addr,
    31  		*kubeconfig,
    32  		*enablePprof,
    33  	)
    34  }
    35  

View as plain text