From 33b9525c9e267f4d26fcfcc6986b5a31dee20f46 Mon Sep 17 00:00:00 2001 From: Djordje Lukic Date: Wed, 13 May 2020 10:24:16 +0200 Subject: [PATCH] Remove util package, it was only used by cli/main.go `util` is not a great name, it has no context and can quickly become a place where we put everything and anything. --- cli/main.go | 16 ++++++++++++++-- util/util.go | 48 ------------------------------------------------ 2 files changed, 14 insertions(+), 50 deletions(-) delete mode 100644 util/util.go diff --git a/cli/main.go b/cli/main.go index ce569983f..f7078068b 100644 --- a/cli/main.go +++ b/cli/main.go @@ -33,7 +33,9 @@ import ( "log" "os" "os/exec" + "os/signal" "path/filepath" + "syscall" "github.com/sirupsen/logrus" "github.com/spf13/cobra" @@ -48,7 +50,6 @@ import ( "github.com/docker/api/cli/cmd/run" apicontext "github.com/docker/api/context" "github.com/docker/api/context/store" - "github.com/docker/api/util" ) var ( @@ -129,7 +130,7 @@ func main() { logrus.SetLevel(logrus.DebugLevel) } - ctx, cancel := util.NewSigContext() + ctx, cancel := newSigContext() defer cancel() config, err := apicontext.LoadConfigFile(opts.Config, "config.json") @@ -167,6 +168,17 @@ func main() { } } +func newSigContext() (context.Context, func()) { + ctx, cancel := context.WithCancel(context.Background()) + s := make(chan os.Signal) + signal.Notify(s, syscall.SIGTERM, syscall.SIGINT) + go func() { + <-s + cancel() + }() + return ctx, cancel +} + func execMoby(ctx context.Context) { currentContext := apicontext.CurrentContext(ctx) s := store.ContextStore(ctx) diff --git a/util/util.go b/util/util.go deleted file mode 100644 index 92d337583..000000000 --- a/util/util.go +++ /dev/null @@ -1,48 +0,0 @@ -/* - Copyright (c) 2020 Docker Inc. - - Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation - files (the "Software"), to deal in the Software without - restriction, including without limitation the rights to use, copy, - modify, merge, publish, distribute, sublicense, and/or sell copies - of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, - INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - HOLDERS BE LIABLE FOR ANY CLAIM, - DAMAGES OR OTHER LIABILITY, - WHETHER IN AN ACTION OF CONTRACT, - TORT OR OTHERWISE, - ARISING FROM, OUT OF OR IN CONNECTION WITH - THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -*/ - -package util - -import ( - "context" - "os" - "os/signal" - "syscall" -) - -// NewSigContext is a context that is canceled when a signal is -// sent to the process -func NewSigContext() (context.Context, func()) { - ctx, cancel := context.WithCancel(context.Background()) - s := make(chan os.Signal) - signal.Notify(s, syscall.SIGTERM, syscall.SIGINT) - go func() { - <-s - cancel() - }() - return ctx, cancel -}