Skip to content

Commit 56576c1

Browse files
committed
review(kubernetes): force usage of Derived kubernetes
Addresses comment by ardaguclu
1 parent 54d564a commit 56576c1

File tree

9 files changed

+132
-155
lines changed

9 files changed

+132
-155
lines changed

pkg/kubernetes/configuration.go

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ var InClusterConfig = func() (*rest.Config, error) {
2121
}
2222

2323
// resolveKubernetesConfigurations resolves the required kubernetes configurations and sets them in the Kubernetes struct
24-
func resolveKubernetesConfigurations(kubernetes *kubernetes) error {
24+
func resolveKubernetesConfigurations(kubernetes *Manager) error {
2525
// Always set clientCmdConfig
2626
pathOptions := clientcmd.NewDefaultPathOptions()
2727
if kubernetes.Kubeconfig != "" {
@@ -45,56 +45,60 @@ func resolveKubernetesConfigurations(kubernetes *kubernetes) error {
4545
return err
4646
}
4747

48-
func (k *kubernetes) IsInCluster() bool {
49-
if k.Kubeconfig != "" {
48+
func (m *Manager) IsInCluster() bool {
49+
if m.Kubeconfig != "" {
5050
return false
5151
}
5252
cfg, err := InClusterConfig()
5353
return err == nil && cfg != nil
5454
}
5555

56-
func (k *kubernetes) configuredNamespace() string {
57-
if ns, _, nsErr := k.clientCmdConfig.Namespace(); nsErr == nil {
56+
func (m *Manager) configuredNamespace() string {
57+
if ns, _, nsErr := m.clientCmdConfig.Namespace(); nsErr == nil {
5858
return ns
5959
}
6060
return ""
6161
}
6262

63-
func (k *kubernetes) NamespaceOrDefault(namespace string) string {
63+
func (m *Manager) NamespaceOrDefault(namespace string) string {
6464
if namespace == "" {
65-
return k.configuredNamespace()
65+
return m.configuredNamespace()
6666
}
6767
return namespace
6868
}
6969

70+
func (k *Kubernetes) NamespaceOrDefault(namespace string) string {
71+
return k.manager.NamespaceOrDefault(namespace)
72+
}
73+
7074
// ToRESTConfig returns the rest.Config object (genericclioptions.RESTClientGetter)
71-
func (k *kubernetes) ToRESTConfig() (*rest.Config, error) {
72-
return k.cfg, nil
75+
func (m *Manager) ToRESTConfig() (*rest.Config, error) {
76+
return m.cfg, nil
7377
}
7478

7579
// ToRawKubeConfigLoader returns the clientcmd.ClientConfig object (genericclioptions.RESTClientGetter)
76-
func (k *kubernetes) ToRawKubeConfigLoader() clientcmd.ClientConfig {
77-
return k.clientCmdConfig
80+
func (m *Manager) ToRawKubeConfigLoader() clientcmd.ClientConfig {
81+
return m.clientCmdConfig
7882
}
7983

80-
func (k *kubernetes) ConfigurationView(minify bool) (runtime.Object, error) {
84+
func (m *Manager) ConfigurationView(minify bool) (runtime.Object, error) {
8185
var cfg clientcmdapi.Config
8286
var err error
83-
if k.IsInCluster() {
87+
if m.IsInCluster() {
8488
cfg = *clientcmdapi.NewConfig()
8589
cfg.Clusters["cluster"] = &clientcmdapi.Cluster{
86-
Server: k.cfg.Host,
87-
InsecureSkipTLSVerify: k.cfg.Insecure,
90+
Server: m.cfg.Host,
91+
InsecureSkipTLSVerify: m.cfg.Insecure,
8892
}
8993
cfg.AuthInfos["user"] = &clientcmdapi.AuthInfo{
90-
Token: k.cfg.BearerToken,
94+
Token: m.cfg.BearerToken,
9195
}
9296
cfg.Contexts["context"] = &clientcmdapi.Context{
9397
Cluster: "cluster",
9498
AuthInfo: "user",
9599
}
96100
cfg.CurrentContext = "context"
97-
} else if cfg, err = k.clientCmdConfig.RawConfig(); err != nil {
101+
} else if cfg, err = m.clientCmdConfig.RawConfig(); err != nil {
98102
return nil, err
99103
}
100104
if minify {

pkg/kubernetes/configuration_test.go

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ import (
1212

1313
func TestKubernetes_IsInCluster(t *testing.T) {
1414
t.Run("with explicit kubeconfig", func(t *testing.T) {
15-
k := kubernetes{
15+
m := Manager{
1616
Kubeconfig: "kubeconfig",
1717
}
18-
if k.IsInCluster() {
18+
if m.IsInCluster() {
1919
t.Errorf("expected not in cluster, got in cluster")
2020
}
2121
})
@@ -27,10 +27,10 @@ func TestKubernetes_IsInCluster(t *testing.T) {
2727
defer func() {
2828
InClusterConfig = originalFunction
2929
}()
30-
k := kubernetes{
30+
m := Manager{
3131
Kubeconfig: "",
3232
}
33-
if !k.IsInCluster() {
33+
if !m.IsInCluster() {
3434
t.Errorf("expected in cluster, got not in cluster")
3535
}
3636
})
@@ -42,10 +42,10 @@ func TestKubernetes_IsInCluster(t *testing.T) {
4242
defer func() {
4343
InClusterConfig = originalFunction
4444
}()
45-
k := kubernetes{
45+
m := Manager{
4646
Kubeconfig: "",
4747
}
48-
if k.IsInCluster() {
48+
if m.IsInCluster() {
4949
t.Errorf("expected not in cluster, got in cluster")
5050
}
5151
})
@@ -57,10 +57,10 @@ func TestKubernetes_IsInCluster(t *testing.T) {
5757
defer func() {
5858
InClusterConfig = originalFunction
5959
}()
60-
k := kubernetes{
60+
m := Manager{
6161
Kubeconfig: "",
6262
}
63-
if k.IsInCluster() {
63+
if m.IsInCluster() {
6464
t.Errorf("expected not in cluster, got in cluster")
6565
}
6666
})
@@ -72,8 +72,8 @@ func TestKubernetes_ResolveKubernetesConfigurations_Explicit(t *testing.T) {
7272
t.Skip("Skipping test on non-linux platforms")
7373
}
7474
tempDir := t.TempDir()
75-
k := kubernetes{Kubeconfig: path.Join(tempDir, "config")}
76-
err := resolveKubernetesConfigurations(&k)
75+
m := Manager{Kubeconfig: path.Join(tempDir, "config")}
76+
err := resolveKubernetesConfigurations(&m)
7777
if err == nil {
7878
t.Errorf("expected error, got nil")
7979
}
@@ -90,8 +90,8 @@ func TestKubernetes_ResolveKubernetesConfigurations_Explicit(t *testing.T) {
9090
if err := os.WriteFile(kubeconfigPath, []byte(""), 0644); err != nil {
9191
t.Fatalf("failed to create kubeconfig file: %v", err)
9292
}
93-
k := kubernetes{Kubeconfig: kubeconfigPath}
94-
err := resolveKubernetesConfigurations(&k)
93+
m := Manager{Kubeconfig: kubeconfigPath}
94+
err := resolveKubernetesConfigurations(&m)
9595
if err == nil {
9696
t.Errorf("expected error, got nil")
9797
}
@@ -123,16 +123,16 @@ users:
123123
if err := os.WriteFile(kubeconfigPath, []byte(kubeconfigContent), 0644); err != nil {
124124
t.Fatalf("failed to create kubeconfig file: %v", err)
125125
}
126-
k := kubernetes{Kubeconfig: kubeconfigPath}
127-
err := resolveKubernetesConfigurations(&k)
126+
m := Manager{Kubeconfig: kubeconfigPath}
127+
err := resolveKubernetesConfigurations(&m)
128128
if err != nil {
129129
t.Fatalf("expected no error, got %v", err)
130130
}
131-
if k.cfg == nil {
131+
if m.cfg == nil {
132132
t.Errorf("expected non-nil config, got nil")
133133
}
134-
if k.cfg.Host != "https://example.com" {
135-
t.Errorf("expected host https://example.com, got %s", k.cfg.Host)
134+
if m.cfg.Host != "https://example.com" {
135+
t.Errorf("expected host https://example.com, got %s", m.cfg.Host)
136136
}
137137
})
138138
}

pkg/kubernetes/events.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import (
99
"strings"
1010
)
1111

12-
func (k *kubernetes) EventsList(ctx context.Context, namespace string) ([]map[string]any, error) {
12+
func (k *Kubernetes) EventsList(ctx context.Context, namespace string) ([]map[string]any, error) {
1313
var eventMap []map[string]any
1414
raw, err := k.ResourcesList(ctx, &schema.GroupVersionKind{
1515
Group: "", Version: "v1", Kind: "Event",

0 commit comments

Comments
 (0)