diff --git a/pkg/plugins/plugin.go b/pkg/plugins/plugin.go index 2288dcd1..3c3b8732 100644 --- a/pkg/plugins/plugin.go +++ b/pkg/plugins/plugin.go @@ -22,9 +22,9 @@ func (p Plugin) String() string { var ( // NamePattern is the plugin name regex pattern - NamePattern = regexp.MustCompile(`^[0-9a-zA-Z-_]+$`) + NamePattern = regexp.MustCompile(`^[0-9a-zA-Z\-_]+$`) // VersionPattern is the plugin version regex pattern - VersionPattern = regexp.MustCompile(`^[0-9a-zA-Z+\\.-]+$`) + VersionPattern = regexp.MustCompile(`^[0-9a-zA-Z\-_+\\.]+$`) // DownloadURLPattern is the plugin download url regex pattern DownloadURLPattern = regexp.MustCompile(`https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)`) ) diff --git a/pkg/plugins/plugin_test.go b/pkg/plugins/plugin_test.go index 0c46f597..eea2de9b 100644 --- a/pkg/plugins/plugin_test.go +++ b/pkg/plugins/plugin_test.go @@ -36,6 +36,10 @@ func TestValidatePlugin(t *testing.T) { got := validatePlugin(validPluginName, "3.1.20180605-140134.c2e96c4", "") assert.NoError(t, got) }) + t.Run("version 1074.v60e6c29b_b_44b_", func(t *testing.T) { + got := validatePlugin(validPluginName, "1074.v60e6c29b_b_44b_", "") + assert.NoError(t, got) + }) t.Run("invalid version !", func(t *testing.T) { got := validatePlugin(validPluginName, "0.5.1!", "") assert.Error(t, got)