Skip to content

Commit

Permalink
Display log output for predict
Browse files Browse the repository at this point in the history
This still needs cleaning up. #169

Closes #137
Closes #154

Signed-off-by: Ben Firshman <[email protected]>
  • Loading branch information
bfirsh committed Jul 30, 2021
1 parent f557cda commit f451eea
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 2 deletions.
2 changes: 1 addition & 1 deletion pkg/cli/predict.go
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ func cmdPredict(cmd *cobra.Command, args []string) error {
Image: image,
Volumes: volumes,
})
if err := predictor.Start(); err != nil {
if err := predictor.Start(os.Stderr); err != nil {
return err
}

Expand Down
14 changes: 14 additions & 0 deletions pkg/docker/logs.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package docker

import (
"io"
"os"
"os/exec"
)

func ContainerLogsFollow(containerID string, out io.Writer) error {
cmd := exec.Command("docker", "container", "logs", "--follow", containerID)
cmd.Env = os.Environ()
cmd.Stdout = out
return cmd.Run()
}
7 changes: 6 additions & 1 deletion pkg/predict/predictor.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ func NewPredictor(runOptions docker.RunOptions) Predictor {
return Predictor{runOptions: runOptions}
}

func (p *Predictor) Start() error {
func (p *Predictor) Start(logsWriter io.Writer) error {
var err error
p.port, err = shell.NextFreePort(5000 + rand.Intn(1000))
if err != nil {
Expand All @@ -49,6 +49,11 @@ func (p *Predictor) Start() error {
if err != nil {
return fmt.Errorf("Failed to start container: %w", err)
}
go func() {
if err := docker.ContainerLogsFollow(p.containerID, logsWriter); err != nil {
console.Warnf("Error getting container logs: %s", err)
}
}()

return p.waitForContainerReady()
}
Expand Down

0 comments on commit f451eea

Please sign in to comment.