Skip to content

Commit 1e03b75

Browse files
committed
Remove kiali flags
Signed-off-by: Alberto Gutierrez <aljesusg@gmail.com>
1 parent 4cc8a89 commit 1e03b75

File tree

3 files changed

+5
-75
lines changed

3 files changed

+5
-75
lines changed

pkg/kiali/config.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@ func (c *Config) Validate() error {
2222
return errors.New("kiali config is nil")
2323
}
2424
if c.Url == "" {
25-
return errors.New("kiali-url is required")
25+
return errors.New("url is required")
2626
}
2727
if u, err := url.Parse(c.Url); err != nil || u.Scheme == "" || u.Host == "" {
28-
return errors.New("kiali-url must be a valid URL")
28+
return errors.New("url must be a valid URL")
2929
}
3030
return nil
3131
}

pkg/kubernetes-mcp-server/cmd/root.go

Lines changed: 1 addition & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010
"net/http"
1111
"net/url"
1212
"os"
13-
"slices"
1413
"strconv"
1514
"strings"
1615

@@ -25,7 +24,6 @@ import (
2524

2625
"github.com/containers/kubernetes-mcp-server/pkg/config"
2726
internalhttp "github.com/containers/kubernetes-mcp-server/pkg/http"
28-
"github.com/containers/kubernetes-mcp-server/pkg/kiali"
2927
"github.com/containers/kubernetes-mcp-server/pkg/mcp"
3028
"github.com/containers/kubernetes-mcp-server/pkg/output"
3129
"github.com/containers/kubernetes-mcp-server/pkg/toolsets"
@@ -75,15 +73,8 @@ const (
7573
flagServerUrl = "server-url"
7674
flagCertificateAuthority = "certificate-authority"
7775
flagDisableMultiCluster = "disable-multi-cluster"
78-
flagKialiUrl = "kiali-url"
79-
flagKialiInsecure = "kiali-insecure"
8076
)
8177

82-
type KialiOptions struct {
83-
Url string
84-
Insecure bool
85-
}
86-
8778
type MCPServerOptions struct {
8879
Version bool
8980
LogLevel int
@@ -103,7 +94,6 @@ type MCPServerOptions struct {
10394
CertificateAuthority string
10495
ServerURL string
10596
DisableMultiCluster bool
106-
KialiOptions KialiOptions
10797

10898
ConfigPath string
10999
StaticConfig *config.StaticConfig
@@ -167,8 +157,6 @@ func NewMCPServer(streams genericiooptions.IOStreams) *cobra.Command {
167157
cmd.Flags().StringVar(&o.CertificateAuthority, flagCertificateAuthority, o.CertificateAuthority, "Certificate authority path to verify certificates. Optional. Only valid if require-oauth is enabled.")
168158
_ = cmd.Flags().MarkHidden(flagCertificateAuthority)
169159
cmd.Flags().BoolVar(&o.DisableMultiCluster, flagDisableMultiCluster, o.DisableMultiCluster, "Disable multi cluster tools. Optional. If true, all tools will be run against the default cluster/context.")
170-
cmd.Flags().StringVar(&o.KialiOptions.Url, flagKialiUrl, o.KialiOptions.Url, "Kiali endpoint to use for kiali tools. Optional. If not set, the kiali tools will not be available.")
171-
cmd.Flags().BoolVar(&o.KialiOptions.Insecure, flagKialiInsecure, o.KialiOptions.Insecure, "If true, allows insecure TLS connections to Kiali. Optional. If true, the kiali tools will not be available.")
172160

173161
return cmd
174162
}
@@ -244,9 +232,6 @@ func (m *MCPServerOptions) loadFlags(cmd *cobra.Command) {
244232
if cmd.Flag(flagDisableMultiCluster).Changed && m.DisableMultiCluster {
245233
m.StaticConfig.ClusterProviderStrategy = config.ClusterProviderDisabled
246234
}
247-
if cmd.Flag(flagKialiUrl).Changed || cmd.Flag(flagKialiInsecure).Changed {
248-
m.StaticConfig.SetToolsetConfig("kiali", &kiali.Config{Url: m.KialiOptions.Url, Insecure: m.KialiOptions.Insecure})
249-
}
250235
}
251236

252237
func (m *MCPServerOptions) initializeLogging() {
@@ -292,20 +277,6 @@ func (m *MCPServerOptions) Validate() error {
292277
klog.Warningf("authorization-url is using http://, this is not recommended production use")
293278
}
294279
}
295-
/* If Kiali tools are enabled, validate Kiali toolset configuration */
296-
if slices.Contains(m.StaticConfig.Toolsets, "kiali") {
297-
cfg, ok := m.StaticConfig.GetToolsetConfig("kiali")
298-
if !ok {
299-
return fmt.Errorf("kiali-url is required when kiali tools are enabled")
300-
}
301-
if err := cfg.Validate(); err != nil {
302-
// Normalize error message for missing URL to match expected UX/tests
303-
if strings.Contains(err.Error(), "kiali-url is required") {
304-
return fmt.Errorf("kiali-url is required when kiali tools are enabled")
305-
}
306-
return fmt.Errorf("invalid kiali configuration: %w", err)
307-
}
308-
}
309280
return nil
310281
}
311282

@@ -379,4 +350,4 @@ func (m *MCPServerOptions) Run() error {
379350
}
380351

381352
return nil
382-
}
353+
}

pkg/kubernetes-mcp-server/cmd/root_test.go

Lines changed: 2 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ func TestToolsets(t *testing.T) {
137137
rootCmd := NewMCPServer(ioStreams)
138138
rootCmd.SetArgs([]string{"--help"})
139139
o, err := captureOutput(rootCmd.Execute) // --help doesn't use logger/klog, cobra prints directly to stdout
140-
if !strings.Contains(o, "Comma-separated list of MCP toolsets to use (available toolsets: config, core, helm, kiali).") {
140+
if !strings.Contains(o, "Comma-separated list of MCP toolsets to use (available toolsets: config, core, helm).") {
141141
t.Fatalf("Expected all available toolsets, got %s %v", o, err)
142142
}
143143
})
@@ -161,47 +161,6 @@ func TestToolsets(t *testing.T) {
161161
})
162162
}
163163

164-
func TestKialiURLRequired(t *testing.T) {
165-
t.Run("flag toolsets includes kiali and missing kiali-url returns error", func(t *testing.T) {
166-
ioStreams, _ := testStream()
167-
rootCmd := NewMCPServer(ioStreams)
168-
rootCmd.SetArgs([]string{"--version", "--port=1337", "--toolsets", "core,kiali"})
169-
err := rootCmd.Execute()
170-
if err == nil || !strings.Contains(err.Error(), "kiali-url is required when kiali tools are enabled") {
171-
t.Fatalf("expected error about missing kiali-url, got %v", err)
172-
}
173-
})
174-
t.Run("flag toolsets includes kiali and kiali-url provided passes", func(t *testing.T) {
175-
ioStreams, _ := testStream()
176-
rootCmd := NewMCPServer(ioStreams)
177-
rootCmd.SetArgs([]string{"--version", "--port=1337", "--toolsets", "core,kiali", "--kiali-url", "http://kiali"})
178-
if err := rootCmd.Execute(); err != nil {
179-
t.Fatalf("unexpected error: %v", err)
180-
}
181-
})
182-
t.Run("config toolsets includes kiali and missing kiali_url returns error", func(t *testing.T) {
183-
ioStreams, _ := testStream()
184-
rootCmd := NewMCPServer(ioStreams)
185-
_, file, _, _ := runtime.Caller(0)
186-
cfgPath := filepath.Join(filepath.Dir(file), "testdata", "kiali-toolset-missing-url.toml")
187-
rootCmd.SetArgs([]string{"--version", "--port=1337", "--config", cfgPath})
188-
err := rootCmd.Execute()
189-
if err == nil || !strings.Contains(err.Error(), "kiali-url is required when kiali tools are enabled") {
190-
t.Fatalf("expected error about missing kiali-url, got %v", err)
191-
}
192-
})
193-
t.Run("config toolsets includes kiali and kiali_url present passes", func(t *testing.T) {
194-
ioStreams, _ := testStream()
195-
rootCmd := NewMCPServer(ioStreams)
196-
_, file, _, _ := runtime.Caller(0)
197-
cfgPath := filepath.Join(filepath.Dir(file), "testdata", "kiali-toolset-with-url.toml")
198-
rootCmd.SetArgs([]string{"--version", "--port=1337", "--config", cfgPath})
199-
if err := rootCmd.Execute(); err != nil {
200-
t.Fatalf("unexpected error: %v", err)
201-
}
202-
})
203-
}
204-
205164
func TestListOutput(t *testing.T) {
206165
t.Run("available", func(t *testing.T) {
207166
ioStreams, _ := testStream()
@@ -337,4 +296,4 @@ func TestDisableMultiCluster(t *testing.T) {
337296
t.Fatalf("Expected ClusterProviderStrategy %s, got %s %v", expected, out.String(), err)
338297
}
339298
})
340-
}
299+
}

0 commit comments

Comments
 (0)