diff --git a/caddy/hugo/setup.go b/caddy/hugo/setup.go index 7da39d58..df28c921 100644 --- a/caddy/hugo/setup.go +++ b/caddy/hugo/setup.go @@ -18,6 +18,8 @@ import ( // setup configures a new FileManager middleware instance. func setup(c *caddy.Controller) error { + plugins.RegisterHugo() + configs, err := parse(c) if err != nil { return err diff --git a/cmd/filemanager/main.go b/cmd/filemanager/main.go index 6848c36a..51fd93e9 100644 --- a/cmd/filemanager/main.go +++ b/cmd/filemanager/main.go @@ -76,6 +76,8 @@ func setupViper() { } func main() { + plugins.RegisterHugo() + setupViper() flag.Parse() diff --git a/plugins/hugo.go b/plugins/hugo.go index af837c50..340626bf 100644 --- a/plugins/hugo.go +++ b/plugins/hugo.go @@ -16,7 +16,12 @@ import ( "github.com/robfig/cron" ) -func init() { +var ( + ErrHugoNotFound = errors.New("It seems that tou don't have 'hugo' on your PATH") + ErrUnsupportedFileType = errors.New("The type of the provided file isn't supported for this action") +) + +func RegisterHugo() { filemanager.RegisterPlugin("hugo", filemanager.Plugin{ JavaScript: rice.MustFindBox("./assets/").MustString("hugo.js"), CommandEvents: []string{"before_publish", "after_publish"}, @@ -30,11 +35,6 @@ func init() { }) } -var ( - ErrHugoNotFound = errors.New("It seems that tou don't have 'hugo' on your PATH") - ErrUnsupportedFileType = errors.New("The type of the provided file isn't supported for this action") -) - // Hugo is a hugo (https://gohugo.io) plugin. type Hugo struct { // Website root