package controller import ( clientgoscheme "k8s.io/client-go/kubernetes/scheme" "k8s.io/client-go/rest" ctrl "sigs.k8s.io/controller-runtime" "edge-infra.dev/pkg/lib/logging" ) func ExampleProcessOptions() { ctrl.SetLogger(logging.NewLogger().Logger) log := ctrl.Log.WithName("setup") // set up an array of options to demonstrate the typical use case, // where the options are passed into this function as a parameter o := []Option{WithCfg(&rest.Config{}), WithMetricsAddress("0")} cfg, opts := ProcessOptions(o...) opts.LeaderElectionID = "247d91bd.edge.ncr.com" opts.Scheme = clientgoscheme.Scheme _, err := ctrl.NewManager(cfg, opts) if err != nil { log.Error(err, "unable to create manager") } }