Skip to content

Commit

Permalink
Merge pull request helm#13224 from sttts/sttts-fix-apiext-registration
Browse files Browse the repository at this point in the history
kube/client: add to global client-go scheme in init func
  • Loading branch information
joejulian authored Sep 12, 2024
2 parents ef27194 + b9bdeca commit ff4877e
Showing 1 changed file with 10 additions and 11 deletions.
21 changes: 10 additions & 11 deletions pkg/kube/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -85,23 +85,22 @@ type Client struct {
kubeClient *kubernetes.Clientset
}

var addToScheme sync.Once
func init() {
// Add CRDs to the scheme. They are missing by default.
if err := apiextv1.AddToScheme(scheme.Scheme); err != nil {
// This should never happen.
panic(err)
}
if err := apiextv1beta1.AddToScheme(scheme.Scheme); err != nil {
panic(err)
}
}

// New creates a new Client.
func New(getter genericclioptions.RESTClientGetter) *Client {
if getter == nil {
getter = genericclioptions.NewConfigFlags(true)
}
// Add CRDs to the scheme. They are missing by default.
addToScheme.Do(func() {
if err := apiextv1.AddToScheme(scheme.Scheme); err != nil {
// This should never happen.
panic(err)
}
if err := apiextv1beta1.AddToScheme(scheme.Scheme); err != nil {
panic(err)
}
})
return &Client{
Factory: cmdutil.NewFactory(getter),
Log: nopLogger,
Expand Down

0 comments on commit ff4877e

Please sign in to comment.