Skip to content

Commit

Permalink
waiting for the docker image to be pulled
Browse files Browse the repository at this point in the history
  • Loading branch information
freemanzMrojo committed Jan 24, 2025
1 parent d5d6fb8 commit 5956fb6
Showing 1 changed file with 14 additions and 1 deletion.
15 changes: 14 additions & 1 deletion environments/docker/docker_node.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@ package docker

import (
"context"
"encoding/json"
"fmt"
"io"
"strings"

"github.com/docker/docker/api/types/container"
Expand Down Expand Up @@ -47,10 +49,21 @@ func (n *Node) Start() error {
if err != nil {
if client.IsErrNotFound(err) {
// Pull the Docker image
_, err = cli.ImagePull(ctx, n.cfg.GetExecArtifact(), image.PullOptions{})
out, err := cli.ImagePull(ctx, n.cfg.GetExecArtifact(), image.PullOptions{})
if err != nil {
return fmt.Errorf("failed to pull Docker image: %w", err)
}
defer out.Close()

decoder := json.NewDecoder(out)
for {
var event map[string]interface{}
if err := decoder.Decode(&event); err == io.EOF {
break
} else if err != nil {
return fmt.Errorf("failed to decode image pull event: %w", err)
}
}
} else {
return fmt.Errorf("failed to inspect Docker image: %w", err)
}
Expand Down

0 comments on commit 5956fb6

Please sign in to comment.