Remove obsolete alternative procfs support
This commit is contained in:
1 parent
cb9af20a2e
commit
adf56d316d
6 files changed
+13
-27
No files matched your search
+6
-6
@@ -49,10 +49,10 @@ type NetDev struct {
|
||||
}
|
||||
|
||||
// Search the network namespace of a process for interfaces matching a predicate
|
||||
func FindNetDevs(procPath string, processID int, match func(string) bool) ([]NetDev, error) {
|
||||
func FindNetDevs(processID int, match func(string) bool) ([]NetDev, error) {
|
||||
var netDevs []NetDev
|
||||
|
||||
ns, err := netns.GetFromPath(fmt.Sprintf("%s/%d/ns/net", procPath, processID))
|
||||
ns, err := netns.GetFromPath(fmt.Sprintf("/proc/%d/ns/net", processID))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -84,15 +84,15 @@ func FindNetDevs(procPath string, processID int, match func(string) bool) ([]Net
|
||||
}
|
||||
|
||||
// Lookup the weave interface of a container
|
||||
func GetWeaveNetDevs(procPath string, processID int) ([]NetDev, error) {
|
||||
return FindNetDevs(procPath, processID, func(name string) bool {
|
||||
func GetWeaveNetDevs(processID int) ([]NetDev, error) {
|
||||
return FindNetDevs(processID, func(name string) bool {
|
||||
return strings.HasPrefix(name, "ethwe")
|
||||
})
|
||||
}
|
||||
|
||||
// Get the weave bridge interface
|
||||
func GetBridgeNetDev(procPath, bridgeName string) ([]NetDev, error) {
|
||||
return FindNetDevs(procPath, 1, func(name string) bool {
|
||||
func GetBridgeNetDev(bridgeName string) ([]NetDev, error) {
|
||||
return FindNetDevs(1, func(name string) bool {
|
||||
return name == bridgeName
|
||||
})
|
||||
}
|
||||
@@ -68,7 +68,6 @@ func main() {
|
||||
c.Image = getenv("EXEC_IMAGE", "weaveworks/weaveexec")
|
||||
c.DockerBridge = getenv("DOCKER_BRIDGE", "docker0")
|
||||
c.DockerHost = getenv("DOCKER_HOST", "unix:///var/run/docker.sock")
|
||||
c.ProcPath = getenv("PROCFS", "/proc")
|
||||
|
||||
p, err := proxy.NewProxy(c)
|
||||
if err != nil {
|
||||
|
||||
@@ -12,15 +12,13 @@ func containerAddrs(args []string) error {
|
||||
}
|
||||
bridgeName := args[0]
|
||||
|
||||
procPath := procDir()
|
||||
|
||||
c, err := docker.NewVersionedClientFromEnv("1.18")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for _, containerID := range args[1:] {
|
||||
netDevs, err := getNetDevs(procPath, bridgeName, c, containerID)
|
||||
netDevs, err := getNetDevs(bridgeName, c, containerID)
|
||||
if err != nil {
|
||||
if _, ok := err.(*docker.NoSuchContainer); ok {
|
||||
continue
|
||||
@@ -41,9 +39,9 @@ func containerAddrs(args []string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func getNetDevs(procPath, bridgeName string, c *docker.Client, containerID string) ([]common.NetDev, error) {
|
||||
func getNetDevs(bridgeName string, c *docker.Client, containerID string) ([]common.NetDev, error) {
|
||||
if containerID == "weave:expose" {
|
||||
return common.GetBridgeNetDev(procPath, bridgeName)
|
||||
return common.GetBridgeNetDev(bridgeName)
|
||||
}
|
||||
|
||||
container, err := c.InspectContainer(containerID)
|
||||
@@ -51,5 +49,5 @@ func getNetDevs(procPath, bridgeName string, c *docker.Client, containerID strin
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return common.GetWeaveNetDevs(procPath, container.State.Pid)
|
||||
return common.GetWeaveNetDevs(container.State.Pid)
|
||||
}
|
||||
@@ -1,6 +1,4 @@
|
||||
// docker_tls_args: find the docker daemon's tls args
|
||||
// This reimplements pgrep, because pgrep will only look in /proc, but not in
|
||||
// $PROCFS.
|
||||
package main
|
||||
|
||||
import (
|
||||
@@ -16,7 +14,7 @@ func dockerTLSArgs(args []string) error {
|
||||
if len(args) > 0 {
|
||||
cmdUsage("docker-tls-args", "")
|
||||
}
|
||||
procRoot := procDir()
|
||||
procRoot := "/proc"
|
||||
dirEntries, err := ioutil.ReadDir(procRoot)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
@@ -60,11 +60,3 @@ func cmdUsage(cmd string, usage string) {
|
||||
fmt.Fprintf(os.Stderr, "usage: weaveutil %s %s\n", cmd, usage)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
func procDir() string {
|
||||
procDir := os.Getenv("PROCFS")
|
||||
if procDir == "" {
|
||||
procDir = "/proc"
|
||||
}
|
||||
return procDir
|
||||
}
|
||||
+2
-3
@@ -64,7 +64,6 @@ type Config struct {
|
||||
NoMulticastRoute bool
|
||||
DockerBridge string
|
||||
DockerHost string
|
||||
ProcPath string
|
||||
}
|
||||
|
||||
type wait struct {
|
||||
@@ -149,7 +148,7 @@ func NewProxy(c Config) (*Proxy, error) {
|
||||
p.client = client.Client
|
||||
|
||||
if !p.WithoutDNS {
|
||||
netDevs, err := GetBridgeNetDev(c.ProcPath, c.DockerBridge)
|
||||
netDevs, err := GetBridgeNetDev(c.DockerBridge)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -583,7 +582,7 @@ func (proxy *Proxy) updateContainerNetworkSettings(container jsonObject) error {
|
||||
if err := proxy.waitForStartByIdent(containerID); err != nil {
|
||||
return err
|
||||
}
|
||||
netDevs, err := GetWeaveNetDevs(proxy.ProcPath, pid)
|
||||
netDevs, err := GetWeaveNetDevs(pid)
|
||||
if err != nil || len(netDevs) == 0 || len(netDevs[0].CIDRs) == 0 {
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user