From 9b90a938f576955e561cd5a9dfedad87bdcb5048 Mon Sep 17 00:00:00 2001 From: Bryan Boreham Date: Thu, 28 Jan 2016 18:26:34 +0000 Subject: [PATCH] Remove Unix domain sockets on shutdown --- prog/plugin/main.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/prog/plugin/main.go b/prog/plugin/main.go index 01bad7f6..b0da942f 100644 --- a/prog/plugin/main.go +++ b/prog/plugin/main.go @@ -93,17 +93,23 @@ func main() { sigChan := make(chan os.Signal, 1) signal.Notify(sigChan, os.Interrupt, os.Kill, syscall.SIGTERM) + cleanup := func() { + globalListener.Close() + meshListener.Close() + _ = os.Remove(address) + _ = os.Remove(meshAddress) + } select { case sig := <-sigChan: Log.Debugf("Caught signal %s; shutting down", sig) if err := dockerClient.Client.RemoveNetwork(meshNetworkName); err != nil { Log.Fatal(err) } + cleanup() case err := <-endChan: + cleanup() if err != nil { Log.Errorf("Error from listener: %s", err) - globalListener.Close() - meshListener.Close() os.Exit(1) } }