ref: 0318f7c149f98eb2bcbb44b0ca1c7420379190eb
parent: e6ace71fecd075b96aa81b8daa3f3c368f27325f
author: spf13 <[email protected]>
date: Wed Oct 9 14:52:29 EDT 2013
Clean up server & build site logic. Fixed #94
--- a/commands/hugo.go
+++ b/commands/hugo.go
@@ -19,8 +19,8 @@
"github.com/mostafah/fsync"
"github.com/spf13/cobra"
"github.com/spf13/hugo/hugolib"
+ "github.com/spf13/hugo/utils"
"github.com/spf13/nitro"
- "log"
"os"
"path/filepath"
"strings"
@@ -36,7 +36,10 @@
love by spf13 and friends in Go.
Complete documentation is available at http://hugo.spf13.com`,
- Run: build,
+ Run: func(cmd *cobra.Command, args []string) {
+ InitializeConfig()
+ build()
+ },
}
var Hugo *cobra.Commander
@@ -46,10 +49,7 @@
func Execute() {
AddCommands()
Hugo := HugoCmd.ToCommander()
- err := Hugo.Execute()
- if err != nil {
- os.Exit(-1)
- }
+ utils.CheckErrExit(Hugo.Execute())
}
func AddCommands() {
@@ -84,25 +84,16 @@
}
}
-func build(cmd *cobra.Command, args []string) {
- InitializeConfig()
+func build() {
+ utils.CheckErr(copyStatic(), fmt.Sprintf("Error copying static files to %s", Config.GetAbsPath(Config.PublishDir)))
- err := copyStatic()
- if err != nil {
- log.Fatalf("Error copying static files to %s: %v", Config.GetAbsPath(Config.PublishDir), err)
- }
- if _, err := buildSite(); err != nil {
- fmt.Println(err)
- os.Exit(-1)
- }
+ _, e := buildSite()
+ utils.CheckErrExit(e)
if BuildWatch {
fmt.Println("Watching for changes in", Config.GetAbsPath(Config.ContentDir))
fmt.Println("Press ctrl+c to stop")
- err := NewWatcher(0)
- if err != nil {
- fmt.Println(err)
- }
+ utils.CheckErr(NewWatcher(0))
}
}
--- a/commands/server.go
+++ b/commands/server.go
@@ -45,7 +45,7 @@
Config.BaseUrl = "http://localhost:" + strconv.Itoa(serverPort)
}
- build(cmd, args)
+ build()
// Watch runs its own server as part of the routine
if serverWatch {
--- /dev/null
+++ b/utils/utils.go
@@ -1,0 +1,22 @@
+package utils
+
+import (
+ "log"
+ "os"
+)
+
+func CheckErr(err error, s ...string) {
+ if err != nil {
+ for _, message := range s {
+ log.Fatalf(message)
+ }
+ log.Fatalf("Fatal Error: %v", err)
+ }
+}
+
+func CheckErrExit(err error, s ...string) {
+ if err != nil {
+ CheckErr(err, s...)
+ os.Exit(-1)
+ }
+}