diff --git a/cmd/scripts.go b/cmd/scripts.go index 73ecadc4c..406b3a015 100644 --- a/cmd/scripts.go +++ b/cmd/scripts.go @@ -3,6 +3,7 @@ package cmd import ( "context" "encoding/json" + "strings" "github.com/creasty/defaults" "github.com/fsnotify/fsnotify" @@ -168,6 +169,10 @@ func watchScripts(provider *kubernetes.Provider, block bool) { select { // watch for events case event := <-watcher.Events: + if !strings.HasSuffix(event.Name, "js") { + log.Info().Str("file", event.Name).Msg("Ignoring file") + continue + } switch event.Op { case fsnotify.Create: script, err := misc.ReadScriptFile(event.Name) diff --git a/config/configStructs/scriptingConfig.go b/config/configStructs/scriptingConfig.go index 6cf58c5a2..fbeeed763 100644 --- a/config/configStructs/scriptingConfig.go +++ b/config/configStructs/scriptingConfig.go @@ -4,6 +4,7 @@ import ( "io/fs" "os" "path/filepath" + "strings" "github.com/kubeshark/kubeshark/misc" "github.com/rs/zerolog/log" @@ -33,6 +34,10 @@ func (config *ScriptingConfig) GetScripts() (scripts []*misc.Script, err error) var script *misc.Script path := filepath.Join(config.Source, f.Name()) + if !strings.HasSuffix(path, ".js") { + log.Info().Str("path", path).Msg("Skipping non-JS file") + continue + } script, err = misc.ReadScriptFile(path) if err != nil { return