diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2015-12-02 11:42:53 +0100 |
---|---|---|
committer | Anthony Fok <foka@debian.org> | 2015-12-02 07:07:05 -0700 |
commit | 3f0f7eed68f44486c1e053bbce25c46c1d52a12f (patch) | |
tree | 4bafd37bcd2ede6fb1c7f5838679a345dae83668 /hugolib | |
parent | 6959b7fa80f22aead6fa8c9b8ff3c4b8cc222a30 (diff) |
Improve error handling in commands
Cobra, the CLI commander in use in Hugo, has some long awaited improvements in the error handling department.
This enables a more centralized error handling approach.
This commit introduces that by changing all the command funcs to `RunE`:
* The core part of the error logging, usage logging and `os.Exit(-1)` is now performed in one place and that one place only.
* The usage text is now only shown on invalid arguments etc. (user errors)
Fixes #1502
Diffstat (limited to 'hugolib')
-rw-r--r-- | hugolib/site.go | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/hugolib/site.go b/hugolib/site.go index a8f0599bb..8cdfa44f2 100644 --- a/hugolib/site.go +++ b/hugolib/site.go @@ -254,9 +254,11 @@ func (s *Site) Build() (err error) { return nil } -func (s *Site) Analyze() { - s.Process() - s.ShowPlan(os.Stdout) +func (s *Site) Analyze() error { + if err := s.Process(); err != nil { + return err + } + return s.ShowPlan(os.Stdout) } func (s *Site) prepTemplates() { |