diff --git a/prog/weaver/checkpoint.go b/prog/weaver/checkpoint.go index 17453210..2c26315d 100644 --- a/prog/weaver/checkpoint.go +++ b/prog/weaver/checkpoint.go @@ -6,6 +6,7 @@ import ( "time" "github.com/weaveworks/go-checkpoint" + weave "github.com/weaveworks/weave/router" ) var checker *checkpoint.Checker @@ -16,7 +17,7 @@ const ( updateCheckPeriod = 6 * time.Hour ) -func checkForUpdates(dockerVersion string, network string) { +func checkForUpdates(dockerVersion string, router *weave.NetworkRouter) { newVersion.Store("") success.Store(true) @@ -51,9 +52,6 @@ func checkForUpdates(dockerVersion string, network string) { "docker-version": dockerVersion, "kernel-version": kernelVersion, } - if network != "" { - flags["network"] = network - } // Start background version checking params := checkpoint.CheckParams{ @@ -61,6 +59,21 @@ func checkForUpdates(dockerVersion string, network string) { Version: version, SignatureFile: "", Flags: flags, + ExtraFlags: func() []checkpoint.Flag { return checkpointFlags(router) }, } checker = checkpoint.CheckInterval(¶ms, updateCheckPeriod, handleResponse) } + +func checkpointFlags(router *weave.NetworkRouter) []checkpoint.Flag { + flags := []checkpoint.Flag{} + status := weave.NewNetworkRouterStatus(router) + for _, conn := range status.Connections { + if connectionName, ok := conn.Attrs["name"].(string); ok { + if _, encrypted := conn.Attrs["encrypted"]; encrypted { + connectionName = connectionName + " encrypted" + } + flags = append(flags, checkpoint.Flag{Key: "network", Value: connectionName}) + } + } + return flags +} diff --git a/prog/weaver/main.go b/prog/weaver/main.go index 97e7c3fa..ccefcfcb 100644 --- a/prog/weaver/main.go +++ b/prog/weaver/main.go @@ -275,11 +275,7 @@ func main() { dockerVersion = dockerCli.DockerVersion() } - network := "" - if isAWSVPC { - network = "awsvpc" - } - checkForUpdates(dockerVersion, network) + checkForUpdates(dockerVersion, router) observeContainers := func(o docker.ContainerObserver) { if dockerCli != nil { diff --git a/vendor/github.com/weaveworks/go-checkpoint b/vendor/github.com/weaveworks/go-checkpoint index 62324982..ebbb8b05 160000 --- a/vendor/github.com/weaveworks/go-checkpoint +++ b/vendor/github.com/weaveworks/go-checkpoint @@ -1 +1 @@ -Subproject commit 62324982ab514860761ec81e618664580513ffad +Subproject commit ebbb8b0518ab326368631225cabc9435fe580dcc