buildkit: support concurrent starts

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
This commit is contained in:
Andrea Luzzardi 2021-04-15 01:15:01 -07:00
parent 23d6a8800b
commit 3f9103c8aa

View File

@ -116,13 +116,18 @@ func startBuildkit(ctx context.Context) error {
) )
output, err = cmd.CombinedOutput() output, err = cmd.CombinedOutput()
if err != nil { if err != nil {
log. // If the daemon failed to start because it's already running,
Ctx(ctx). // chances are another dagger instance started it. We can just ignore
Error(). // the error.
Err(err). if !strings.Contains(string(output), "Error response from daemon: Conflict.") {
Bytes("output", output). log.
Msg("unable to start buildkitd") Ctx(ctx).
return err Error().
Err(err).
Bytes("output", output).
Msg("unable to start buildkitd")
return err
}
} }
return waitBuildkit(ctx) return waitBuildkit(ctx)
} }