Skip to content

Commit

Permalink
beter cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
tejal29 committed Mar 20, 2019
1 parent c73e2f5 commit 61e6257
Showing 1 changed file with 12 additions and 8 deletions.
20 changes: 12 additions & 8 deletions cmd/skaffold/app/cmd/build.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,9 @@ func runBuild(out io.Writer) error {
buildOut = ioutil.Discard
}

bRes, err := createRunnerAndBuildFunc(buildOut)

if err != nil {
bRes, cleanUp, err := createRunnerAndBuildFunc(buildOut)
defer cleanUp()
if err == nil {
return err
}

Expand All @@ -92,9 +92,8 @@ func runBuild(out io.Writer) error {
return nil
}

func createRunnerAndBuild(buildOut io.Writer) ([]build.Artifact, error) {
func createRunnerAndBuild(buildOut io.Writer) ([]build.Artifact, func(), error) {
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
catchCtrlC(cancel)

runner, config, err := newRunner(opts)
Expand All @@ -105,8 +104,13 @@ func createRunnerAndBuild(buildOut io.Writer) ([]build.Artifact, error) {
}
}
if err != nil {
return nil, errors.Wrap(err, "creating runner")
return nil, func() { cancel() }, errors.Wrap(err, "creating runner")
}

cleanUp := func() {
cancel()
runner.RPCServerShutdown()
}
defer runner.RPCServerShutdown()
return runner.BuildAndTest(ctx, buildOut, targetArtifacts)
a, err := runner.BuildAndTest(ctx, buildOut, targetArtifacts)
return a, cleanUp, err
}

0 comments on commit 61e6257

Please sign in to comment.