diff --git a/pkg/service/plugins.go b/pkg/service/plugins.go index 5b00216..1575f39 100644 --- a/pkg/service/plugins.go +++ b/pkg/service/plugins.go @@ -5,9 +5,9 @@ import ( "io" "net/http" "os" - "strings" makeshift "git.towk2.me/towk/makeshift/pkg" + "github.com/go-chi/chi/v5" ) func (s *Service) ListPlugins() http.HandlerFunc { @@ -42,13 +42,14 @@ func (s *Service) ListPlugins() http.HandlerFunc { func (s *Service) GetPlugin() http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { var ( - pluginName = strings.TrimPrefix(r.URL.Path, "/plugin") + pluginName = chi.URLParam(r, "name") + path = s.PathForPluginWithName(pluginName) plugin makeshift.Plugin body []byte err error ) - plugin, err = LoadPluginFromFile(pluginName) + plugin, err = LoadPluginFromFile(path) if err != nil { http.Error(w, err.Error(), http.StatusBadRequest) return