Implement CNI plugin via weaveutil

This commit is contained in:
Bryan Boreham committed 2016-11-03 17:42:39 +00:00
1 parent 40b3a49c90
commit 5630a01a8c
4 files changed
+56 -4

No files matched your search

+3 -1
View File
@@ -57,12 +57,14 @@ func WithNetNSLinkUnsafe(ns netns.NsHandle, ifName string, work func(link netlin
})
}
var WeaveUtilCmd = "weaveutil"
// A safe version of WithNetNS* which creates a process executing
// "nsenter --net=<ns-path> weaveutil <cmd> [args]".
func WithNetNS(nsPath string, cmd string, args ...string) ([]byte, error) {
var stdout, stderr bytes.Buffer
args = append([]string{"--net=" + nsPath, "weaveutil", cmd}, args...)
args = append([]string{"--net=" + nsPath, WeaveUtilCmd, cmd}, args...)
c := exec.Command("nsenter", args...)
c.Stdout = &stdout
c.Stderr = &stderr