fix: fixup multi problem
ci-api / test (push) Successful in 25m0s
ci-web / test (push) Failing after 7m59s

This commit is contained in:
Nuxgrid
2026-07-30 19:29:57 +02:00
parent 0848d3c0a0
commit ac8bdbcab7
14 changed files with 492 additions and 163 deletions
+24 -9
View File
@@ -8,19 +8,18 @@ import (
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/rest"
"k8s.io/client-go/tools/clientcmd"
metricsclient "k8s.io/metrics/pkg/client/clientset/versioned"
)
func NewClient(cfg *config.Config) (*kubernetes.Clientset, error) {
var (
k8sCfg *rest.Config
err error
)
func restConfig(cfg *config.Config) (*rest.Config, error) {
if cfg.Kubeconfig != "" {
k8sCfg, err = clientcmd.BuildConfigFromFlags("", cfg.Kubeconfig)
} else {
k8sCfg, err = rest.InClusterConfig()
return clientcmd.BuildConfigFromFlags("", cfg.Kubeconfig)
}
return rest.InClusterConfig()
}
func NewClient(cfg *config.Config) (*kubernetes.Clientset, error) {
k8sCfg, err := restConfig(cfg)
if err != nil {
return nil, fmt.Errorf("k8s config: %w", err)
}
@@ -32,3 +31,19 @@ func NewClient(cfg *config.Config) (*kubernetes.Clientset, error) {
return client, nil
}
// NewMetricsClient crée un client pour l'API metrics.k8s.io (metrics-server),
// utilisée pour lire l'usage CPU/mémoire en direct des pods.
func NewMetricsClient(cfg *config.Config) (*metricsclient.Clientset, error) {
k8sCfg, err := restConfig(cfg)
if err != nil {
return nil, fmt.Errorf("k8s config: %w", err)
}
client, err := metricsclient.NewForConfig(k8sCfg)
if err != nil {
return nil, fmt.Errorf("metrics clientset: %w", err)
}
return client, nil
}