@@ -19,10 +19,19 @@ package client
1919import (
2020 "fmt"
2121
22+ certmanagerv1 "github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1"
23+ cloudnativepgv1 "github.com/cloudnative-pg/api/pkg/api/v1"
24+ admissionregistrationv1 "k8s.io/api/admissionregistration/v1"
25+ appsv1 "k8s.io/api/apps/v1"
26+ corev1 "k8s.io/api/core/v1"
27+ rbacv1 "k8s.io/api/rbac/v1"
28+ apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
2229 "k8s.io/client-go/kubernetes"
2330 "k8s.io/client-go/rest"
2431 "sigs.k8s.io/controller-runtime/pkg/client"
2532 "sigs.k8s.io/controller-runtime/pkg/client/config"
33+
34+ pluginBarmanCloudV1 "github.com/cloudnative-pg/plugin-barman-cloud/api/v1"
2635)
2736
2837// NewClient creates a new controller-runtime Kubernetes client.
@@ -38,6 +47,10 @@ func NewClient() (client.Client, *rest.Config, error) {
3847 return nil , nil , fmt .Errorf ("failed to create Kubernetes client: %w" , err )
3948 }
4049
50+ if err := addScheme (cl ); err != nil {
51+ return nil , nil , fmt .Errorf ("failed to add scheme: %w" , err )
52+ }
53+
4154 return cl , cfg , nil
4255}
4356
@@ -54,3 +67,33 @@ func NewClientSet() (*kubernetes.Clientset, *rest.Config, error) {
5467
5568 return clientSet , cfg , nil
5669}
70+
71+ func addScheme (cl client.Client ) error {
72+ scheme := cl .Scheme ()
73+ if err := corev1 .AddToScheme (scheme ); err != nil {
74+ return fmt .Errorf ("failed to add core/v1 to scheme: %w" , err )
75+ }
76+ if err := apiextensionsv1 .AddToScheme (scheme ); err != nil {
77+ return fmt .Errorf ("failed to add apiextensions/v1 to scheme: %w" , err )
78+ }
79+ if err := admissionregistrationv1 .AddToScheme (scheme ); err != nil {
80+ return fmt .Errorf ("failed to add admissionregistration/v1 to scheme: %w" , err )
81+ }
82+ if err := rbacv1 .AddToScheme (scheme ); err != nil {
83+ return fmt .Errorf ("failed to add rbac/v1 to scheme: %w" , err )
84+ }
85+ if err := appsv1 .AddToScheme (scheme ); err != nil {
86+ return fmt .Errorf ("failed to add apps/v1 to scheme: %w" , err )
87+ }
88+ if err := certmanagerv1 .AddToScheme (scheme ); err != nil {
89+ return fmt .Errorf ("failed to add cert-manager/v1 to scheme: %w" , err )
90+ }
91+ if err := pluginBarmanCloudV1 .AddToScheme (scheme ); err != nil {
92+ return fmt .Errorf ("failed to add plugin-barman-cloud/v1 to scheme: %w" , err )
93+ }
94+ if err := cloudnativepgv1 .AddToScheme (scheme ); err != nil {
95+ return fmt .Errorf ("failed to add cloudnativepg/v1 to scheme: %w" , err )
96+ }
97+
98+ return nil
99+ }
0 commit comments