Skip to content

Commit 12ec8cf

Browse files
committed
Add informerer factory to default args
1 parent cf63cf3 commit 12ec8cf

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

cmd/kubebuilder-gen/internal/controllergen/inject.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,6 @@ func init() {
9696
{{ range $group := .APIS.Groups }}{{ range $version := $group.Versions }}{{ range $res := $version.Resources -}}
9797
arguments.ControllerManager.AddInformerProvider(&{{.Group}}{{.Version}}.{{.Kind}}{}, factory.{{title .Group}}().{{title .Version}}().{{plural .Kind}}())
9898
{{ end }}{{ end }}{{ end -}}
99-
100-
10199
}
102100
103101

cmd/kubebuilder/initproject/inject.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ func RunAll(options run.RunArguments, arguments args.InjectArgs) error {
9999
100100
if Run != nil {
101101
if err := Run(options); err != nil {
102-
return error
102+
return err
103103
}
104104
}
105105
<-options.Stop

pkg/inject/args/args.go

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,13 @@ limitations under the License.
1717
package args
1818

1919
import (
20+
"time"
21+
2022
"github.com/kubernetes-sigs/kubebuilder/pkg/admission"
2123
"github.com/kubernetes-sigs/kubebuilder/pkg/controller"
2224
"k8s.io/client-go/kubernetes"
2325
"k8s.io/client-go/rest"
26+
"k8s.io/client-go/informers"
2427
)
2528

2629
// InjectArgs are the common arguments for initializing controllers and admission hooks
@@ -31,6 +34,9 @@ type InjectArgs struct {
3134
// KubernetesClientSet is a clientset to talk to Kuberntes apis
3235
KubernetesClientSet *kubernetes.Clientset
3336

37+
// KubernetesInformers contains a Kubernetes informers factory
38+
KubernetesInformers informers.SharedInformerFactory
39+
3440
// ControllerManager is the controller manager
3541
ControllerManager *controller.ControllerManager
3642

@@ -40,9 +46,11 @@ type InjectArgs struct {
4046

4147
// CreateInjectArgs returns new arguments for initializing objects
4248
func CreateInjectArgs(config *rest.Config) InjectArgs {
49+
cs := kubernetes.NewForConfigOrDie(config)
4350
return InjectArgs{
4451
Config: config,
45-
KubernetesClientSet: kubernetes.NewForConfigOrDie(config),
52+
KubernetesClientSet: cs,
53+
KubernetesInformers: informers.NewSharedInformerFactory(cs, 2 * time.Minute),
4654
ControllerManager: &controller.ControllerManager{},
4755
AdmissionHandler: &admission.AdmissionManager{},
4856
}

0 commit comments

Comments
 (0)