commit 6cd2110ab295f598907a18da91e34d31407c1d9d
parent 6a365c2712c7607e067e192d213b266f0c88d0f3
Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date: Sun, 27 Jun 2021 18:00:20 +0200
commands: Add version time to "hugo config mounts"
Diffstat:
2 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/commands/config.go b/commands/config.go
@@ -21,6 +21,7 @@ import (
"regexp"
"sort"
"strings"
+ "time"
"github.com/gohugoio/hugo/common/maps"
@@ -146,6 +147,7 @@ func (m *modMounts) MarshalJSON() ([]byte, error) {
return json.Marshal(&struct {
Path string `json:"path"`
Version string `json:"version"`
+ Time *time.Time `json:"time"`
Owner string `json:"owner"`
Dir string `json:"dir"`
Meta map[string]interface{} `json:"meta"`
@@ -155,6 +157,7 @@ func (m *modMounts) MarshalJSON() ([]byte, error) {
}{
Path: m.m.Path(),
Version: m.m.Version(),
+ Time: m.m.Time(),
Owner: ownerPath,
Dir: m.m.Dir(),
Meta: config.Params,
@@ -166,12 +169,14 @@ func (m *modMounts) MarshalJSON() ([]byte, error) {
return json.Marshal(&struct {
Path string `json:"path"`
Version string `json:"version"`
+ Time *time.Time `json:"time"`
Owner string `json:"owner"`
Dir string `json:"dir"`
Mounts []modMount `json:"mounts"`
}{
Path: m.m.Path(),
Version: m.m.Version(),
+ Time: m.m.Time(),
Owner: ownerPath,
Dir: m.m.Dir(),
Mounts: mounts,
diff --git a/modules/module.go b/modules/module.go
@@ -17,6 +17,8 @@
package modules
import (
+ "time"
+
"github.com/gohugoio/hugo/config"
)
@@ -65,6 +67,9 @@ type Module interface {
// The module version.
Version() string
+ // Time version was created.
+ Time() *time.Time
+
// Whether this module's dir is a watch candidate.
Watch() bool
}
@@ -154,6 +159,14 @@ func (m *moduleAdapter) Version() string {
return m.gomod.Version
}
+func (m *moduleAdapter) Time() *time.Time {
+ if !m.IsGoMod() || m.gomod.Time == nil {
+ return nil
+ }
+
+ return m.gomod.Time
+}
+
func (m *moduleAdapter) Watch() bool {
if m.Owner() == nil {
// Main project