shithub: hugo

Download patch

ref: 1c214fcb7c637d0f9984e44ed576b6654182107c
parent: 7cdd230e1649a12ef9825a715727ae3bfc87c296
author: Bjørn Erik Pedersen <[email protected]>
date: Sat Oct 8 14:26:16 EDT 2016

Add quiet mode

Needed to run benchmarks without the stats getting in the way of the benchmark stats.

Fixes #1218

--- a/commands/hugo.go
+++ b/commands/hugo.go
@@ -149,6 +149,7 @@
 	uglyURLs              bool
 	verbose               bool
 	verboseLog            bool
+	quiet                 bool
 )
 
 var (
@@ -209,6 +210,7 @@
 
 func initRootPersistentFlags() {
 	HugoCmd.PersistentFlags().StringVar(&cfgFile, "config", "", "config file (default is path/config.yaml|json|toml)")
+	HugoCmd.PersistentFlags().BoolVar(&quiet, "quiet", false, "build in quiet mode")
 
 	// Set bash-completion
 	validConfigFilenames := []string{"json", "js", "yaml", "yml", "toml", "tml"}
@@ -394,7 +396,9 @@
 		jww.DiscardLogging()
 	}
 
-	if viper.GetBool("verbose") {
+	if quiet {
+		jww.SetStdoutThreshold(jww.LevelError)
+	} else if viper.GetBool("verbose") {
 		jww.SetStdoutThreshold(jww.LevelInfo)
 	}
 
@@ -631,8 +635,10 @@
 	if err := initSites(); err != nil {
 		return err
 	}
-	fmt.Println("Started building sites ...")
-	return Hugo.Build(hugolib.BuildCfg{CreateSitesFromConfig: true, Watching: watching, PrintStats: true})
+	if !quiet {
+		fmt.Println("Started building sites ...")
+	}
+	return Hugo.Build(hugolib.BuildCfg{CreateSitesFromConfig: true, Watching: watching, PrintStats: !quiet})
 }
 
 func resetAndbuildSites(watching bool) (err error) {
@@ -639,8 +645,10 @@
 	if err := initSites(); err != nil {
 		return err
 	}
-	fmt.Println("Started building sites ...")
-	return Hugo.Build(hugolib.BuildCfg{ResetState: true, Watching: watching, PrintStats: true})
+	if !quiet {
+		fmt.Println("Started building sites ...")
+	}
+	return Hugo.Build(hugolib.BuildCfg{ResetState: true, Watching: watching, PrintStats: !quiet})
 }
 
 func initSites() error {
@@ -662,8 +670,10 @@
 	if err := initSites(); err != nil {
 		return err
 	}
-	fmt.Println("Started building sites ...")
-	return Hugo.Build(hugolib.BuildCfg{Watching: watching, PrintStats: true})
+	if !quiet {
+		fmt.Println("Started building sites ...")
+	}
+	return Hugo.Build(hugolib.BuildCfg{Watching: watching, PrintStats: !quiet})
 }
 
 func rebuildSites(events []fsnotify.Event) error {
@@ -670,7 +680,7 @@
 	if err := initSites(); err != nil {
 		return err
 	}
-	return Hugo.Rebuild(hugolib.BuildCfg{PrintStats: true, Watching: true}, events...)
+	return Hugo.Rebuild(hugolib.BuildCfg{PrintStats: !quiet, Watching: true}, events...)
 }
 
 // NewWatcher creates a new watcher to watch filesystem events.