common: Add hugo.GoVersion

Closes #9849. This enables `hugo.GoVersion` in templates to access the
version of Go that the Hugo binary was built with.
This commit is contained in:
Khayyam Saleem 2022-05-30 09:12:41 -04:00 committed by Bjørn Erik Pedersen
parent 66da1b7b2f
commit 09ac733381
3 changed files with 10 additions and 4 deletions

View file

@ -53,6 +53,9 @@ type Info struct {
// It can be any string, but it will be all lower case.
Environment string
// version of go that the Hugo binary was built with
GoVersion string
deps []*Dependency
}
@ -87,12 +90,14 @@ func NewInfo(environment string, deps []*Dependency) Info {
var (
commitHash string
buildDate string
goVersion string
)
bi := getBuildInfo()
if bi != nil {
commitHash = bi.Revision
buildDate = bi.RevisionTime
goVersion = bi.GoVersion
}
return Info{
@ -100,6 +105,7 @@ func NewInfo(environment string, deps []*Dependency) Info {
BuildDate: buildDate,
Environment: environment,
deps: deps,
GoVersion: goVersion,
}
}

View file

@ -32,6 +32,7 @@ func TestHugoInfo(t *testing.T) {
if bi != nil {
c.Assert(hugoInfo.CommitHash, qt.Equals, bi.Revision)
c.Assert(hugoInfo.BuildDate, qt.Equals, bi.RevisionTime)
c.Assert(hugoInfo.GoVersion, qt.Equals, bi.GoVersion)
}
c.Assert(hugoInfo.Environment, qt.Equals, "production")
c.Assert(string(hugoInfo.Generator()), qt.Contains, fmt.Sprintf("Hugo %s", hugoInfo.Version()))

View file

@ -27,8 +27,8 @@ hugo.Generator
hugo.Version
: the current version of the Hugo binary you are using e.g. `0.63.2`
`hugo` returns an instance that contains the following functions:
hugo.GoVersion
: returns the version of Go that the Hugo binary was built with. {{< new-in "0.101.0" >}}
hugo.Environment
: the current running environment as defined through the `--environment` cli tag
@ -52,7 +52,6 @@ We highly recommend using `hugo.Generator` in your website's `<head>`. `hugo.Gen
hugo.Deps
: See [hugo.Deps](#hugodeps)
## hugo.Deps
{{< new-in "0.92.0" >}}
@ -112,4 +111,4 @@ An example table listing the dependencies:
{{ end }}
</tbody>
</table>
```
```