diff --git a/prog/weaver/checkpoint.go b/prog/weaver/checkpoint.go new file mode 100644 index 00000000..831babda --- /dev/null +++ b/prog/weaver/checkpoint.go @@ -0,0 +1,39 @@ +package main + +import ( + "sync/atomic" + "time" + + "github.com/weaveworks/go-checkpoint" +) + +var checker *checkpoint.Checker +var newVersion atomic.Value + +const ( + updateCheckPeriod = 6 * time.Hour +) + +func checkForUpdates() { + newVersion.Store("") + + handleResponse := func(r *checkpoint.CheckResponse, err error) { + if err != nil { + Log.Printf("Error checking version: %v", err) + return + } + if r.Outdated { + newVersion.Store(r.CurrentVersion) + Log.Printf("Weave version %s is available; please update at %s", + r.CurrentVersion, r.CurrentDownloadURL) + } + } + + // Start background version checking + params := checkpoint.CheckParams{ + Product: "weave-net", + Version: version, + SignatureFile: "", + } + checker = checkpoint.CheckInterval(¶ms, updateCheckPeriod, handleResponse) +} diff --git a/prog/weaver/main.go b/prog/weaver/main.go index 798a1f5a..74f9662c 100644 --- a/prog/weaver/main.go +++ b/prog/weaver/main.go @@ -9,7 +9,6 @@ import ( "runtime" "strconv" "strings" - "sync/atomic" "time" "github.com/docker/docker/pkg/mflag" @@ -17,7 +16,6 @@ import ( "github.com/pkg/profile" "github.com/weaveworks/mesh" - "github.com/weaveworks/go-checkpoint" "github.com/weaveworks/weave/common" "github.com/weaveworks/weave/common/docker" "github.com/weaveworks/weave/db" @@ -30,8 +28,6 @@ import ( ) var version = "(unreleased version)" -var checker *checkpoint.Checker -var newVersion atomic.Value var Log = common.Log @@ -52,34 +48,6 @@ type dnsConfig struct { EffectiveListenAddress string } -const ( - updateCheckPeriod = 6 * time.Hour -) - -func checkForUpdates() { - newVersion.Store("") - - handleResponse := func(r *checkpoint.CheckResponse, err error) { - if err != nil { - Log.Printf("Error checking version: %v", err) - return - } - if r.Outdated { - newVersion.Store(r.CurrentVersion) - Log.Printf("Weave version %s is available; please update at %s", - r.CurrentVersion, r.CurrentDownloadURL) - } - } - - // Start background version checking - params := checkpoint.CheckParams{ - Product: "weave-net", - Version: version, - SignatureFile: "", - } - checker = checkpoint.CheckInterval(¶ms, updateCheckPeriod, handleResponse) -} - func (c *ipamConfig) Enabled() bool { var ( hasPeerCount = c.PeerCount > 0 diff --git a/vendor/github.com/weaveworks/go-checkpoint b/vendor/github.com/weaveworks/go-checkpoint index b6cc8365..62324982 160000 --- a/vendor/github.com/weaveworks/go-checkpoint +++ b/vendor/github.com/weaveworks/go-checkpoint @@ -1 +1 @@ -Subproject commit b6cc8365a31bccd0b19591ba4a68704082a17141 +Subproject commit 62324982ab514860761ec81e618664580513ffad