From ac6b86aff8fe2ef8417c48074aadad6beea53052 Mon Sep 17 00:00:00 2001 From: Derek Perkins Date: Tue, 9 Dec 2014 08:36:07 -0700 Subject: Added top level .Hugo variable with version, commit and generator information + docs Added Version, CommitHash and BuildDate to hugolib/hugo.go and used it in build Removed commitHash and buildDate from commands/version.go and used hugolib vars Removed getDateFormat function from commands/version.go Conflicts: README.md docs/content/templates/variables.md --- commands/version.go | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) (limited to 'commands') diff --git a/commands/version.go b/commands/version.go index 360aef247..41ada5694 100644 --- a/commands/version.go +++ b/commands/version.go @@ -22,29 +22,25 @@ import ( "bitbucket.org/kardianos/osext" "github.com/spf13/cobra" + "github.com/spf13/hugo/hugolib" ) var timeLayout string // the layout for time.Time -var ( - commitHash string - buildDate string -) - var version = &cobra.Command{ Use: "version", Short: "Print the version number of Hugo", Long: `All software has versions. This is Hugo's`, Run: func(cmd *cobra.Command, args []string) { - if buildDate == "" { + if hugolib.BuildDate == "" { setBuildDate() // set the build date from executable's mdate } else { formatBuildDate() // format the compile time } - if commitHash == "" { - fmt.Printf("Hugo Static Site Generator v0.13-DEV buildDate: %s\n", buildDate) + if hugolib.CommitHash == "" { + fmt.Printf("Hugo Static Site Generator v%s BuildDate: %s\n", hugolib.Version, hugolib.BuildDate) } else { - fmt.Printf("Hugo Static Site Generator v0.13-DEV-%s buildDate: %s\n", strings.ToUpper(commitHash), buildDate) + fmt.Printf("Hugo Static Site Generator v%s-%s BuildDate: %s\n", hugolib.Version, strings.ToUpper(hugolib.CommitHash), hugolib.BuildDate) } }, } @@ -52,7 +48,7 @@ var version = &cobra.Command{ // setBuildDate checks the ModTime of the Hugo executable and returns it as a // formatted string. This assumes that the executable name is Hugo, if it does // not exist, an empty string will be returned. This is only called if the -// buildDate wasn't set during compile time. +// hugolib.BuildDate wasn't set during compile time. // // osext is used for cross-platform. func setBuildDate() { @@ -68,12 +64,12 @@ func setBuildDate() { return } t := fi.ModTime() - buildDate = t.Format(time.RFC3339) + hugolib.BuildDate = t.Format(time.RFC3339) } -// formatBuildDate formats the buildDate according to the value in +// formatBuildDate formats the hugolib.BuildDate according to the value in // .Params.DateFormat, if it's set. func formatBuildDate() { - t, _ := time.Parse("2006-01-02T15:04:05-0700", buildDate) - buildDate = t.Format(time.RFC3339) + t, _ := time.Parse("2006-01-02T15:04:05-0700", hugolib.BuildDate) + hugolib.BuildDate = t.Format(time.RFC3339) } -- cgit v1.2.3