Skip to content

Commit add135e

Browse files
authored
cmd/cli/commands: use local fork of hooks.PrintNextSteps (#763)
We're refactoring code in the CLI for better separation of plugin-manager and plugin code; add a local fork of this utility instead of depending on the utility in the CLI. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
1 parent 78a3092 commit add135e

3 files changed

Lines changed: 18 additions & 7 deletions

File tree

cmd/cli/commands/status.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99
"sort"
1010
"strconv"
1111

12-
"github.com/docker/cli/cli-plugins/hooks"
1312
"github.com/docker/model-runner/cmd/cli/commands/completion"
1413
"github.com/docker/model-runner/cmd/cli/desktop"
1514
"github.com/docker/model-runner/cmd/cli/pkg/standalone"
@@ -63,7 +62,7 @@ func textStatus(cmd *cobra.Command, status desktop.Status, backendStatus map[str
6362
cmd.Print(backendStatusTable(backendStatus))
6463
} else {
6564
cmd.Println("Docker Model Runner is not running")
66-
hooks.PrintNextSteps(cmd.OutOrStdout(), []string{enableViaCLI, enableViaGUI})
65+
printNextSteps(cmd.OutOrStdout(), []string{enableViaCLI, enableViaGUI})
6766
osExit(1)
6867
}
6968
}

cmd/cli/commands/status_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010
"strings"
1111
"testing"
1212

13-
"github.com/docker/cli/cli-plugins/hooks"
1413
"github.com/docker/model-runner/cmd/cli/desktop"
1514
mockdesktop "github.com/docker/model-runner/cmd/cli/mocks"
1615
"github.com/docker/model-runner/cmd/cli/pkg/standalone"
@@ -51,7 +50,7 @@ func TestStatus(t *testing.T) {
5150
expectedOutput: func() string {
5251
buf := new(bytes.Buffer)
5352
fmt.Fprintln(buf, "Docker Model Runner is not running")
54-
hooks.PrintNextSteps(buf, []string{enableViaCLI, enableViaGUI})
53+
printNextSteps(buf, []string{enableViaCLI, enableViaGUI})
5554
return buf.String()
5655
}(),
5756
},

cmd/cli/commands/utils.go

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import (
88
"os"
99
"strings"
1010

11-
"github.com/docker/cli/cli-plugins/hooks"
1211
"github.com/docker/model-runner/cmd/cli/desktop"
1312
"github.com/docker/model-runner/cmd/cli/pkg/standalone"
1413
"github.com/docker/model-runner/pkg/distribution/oci/reference"
@@ -47,12 +46,12 @@ func handleClientError(err error, message string) error {
4746
if errors.Is(err, desktop.ErrServiceUnavailable) {
4847
err = errNotRunning
4948
var buf bytes.Buffer
50-
hooks.PrintNextSteps(&buf, []string{enableViaCLI, enableViaGUI})
49+
printNextSteps(&buf, []string{enableViaCLI, enableViaGUI})
5150
return fmt.Errorf("%w\n%s", err, strings.TrimRight(buf.String(), "\n"))
5251
} else if strings.Contains(err.Error(), vllm.ErrorNotFound.Error()) {
5352
// Handle `run` error.
5453
var buf bytes.Buffer
55-
hooks.PrintNextSteps(&buf, []string{enableVLLM})
54+
printNextSteps(&buf, []string{enableVLLM})
5655
return fmt.Errorf("%w\n%s", err, strings.TrimRight(buf.String(), "\n"))
5756
}
5857
return fmt.Errorf("%s: %w", message, err)
@@ -270,3 +269,17 @@ func newTable(w io.Writer) *tablewriter.Table {
270269
}),
271270
)
272271
}
272+
273+
func printNextSteps(out io.Writer, messages []string) {
274+
if len(messages) == 0 {
275+
return
276+
}
277+
_, _ = fmt.Fprintln(out, bold("\nWhat's next:"))
278+
for _, n := range messages {
279+
_, _ = fmt.Fprintln(out, " ", n)
280+
}
281+
}
282+
283+
func bold(s string) string {
284+
return "\033[1m" + s + "\033[0m"
285+
}

0 commit comments

Comments
 (0)