Merge pull request #1777 from ktock/fixerrormsg

monitor: improve error messages
pull/1771/head
Justin Chadwell 2 years ago committed by GitHub
commit c9c1303e31
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -25,7 +25,7 @@ func (cm *AttachCmd) Info() types.CommandInfo {
func (cm *AttachCmd) Exec(ctx context.Context, args []string) error { func (cm *AttachCmd) Exec(ctx context.Context, args []string) error {
if len(args) < 2 { if len(args) < 2 {
return errors.Errorf("server name must be passed") return errors.Errorf("ID of session or process must be passed")
} }
ref := args[1] ref := args[1]
var id string var id string
@ -58,7 +58,11 @@ func (cm *AttachCmd) Exec(ctx context.Context, args []string) error {
} }
func isProcessID(ctx context.Context, c types.Monitor, ref string) (bool, error) { func isProcessID(ctx context.Context, c types.Monitor, ref string) (bool, error) {
infos, err := c.ListProcesses(ctx, c.AttachedSessionID()) sid := c.AttachedSessionID()
if sid == "" {
return false, errors.Errorf("no attaching session")
}
infos, err := c.ListProcesses(ctx, sid)
if err != nil { if err != nil {
return false, err return false, err
} }

@ -23,10 +23,16 @@ func (cm *DisconnectCmd) Exec(ctx context.Context, args []string) error {
target := cm.m.AttachedSessionID() target := cm.m.AttachedSessionID()
if len(args) >= 2 { if len(args) >= 2 {
target = args[1] target = args[1]
} else if target == "" {
return errors.Errorf("no attaching session")
} }
isProcess, err := isProcessID(ctx, cm.m, target) isProcess, err := isProcessID(ctx, cm.m, target)
if err == nil && isProcess { if err == nil && isProcess {
if err := cm.m.DisconnectProcess(ctx, cm.m.AttachedSessionID(), target); err != nil { sid := cm.m.AttachedSessionID()
if sid == "" {
return errors.Errorf("no attaching session")
}
if err := cm.m.DisconnectProcess(ctx, sid, target); err != nil {
return errors.Errorf("disconnecting from process failed %v", target) return errors.Errorf("disconnecting from process failed %v", target)
} }
return nil return nil

@ -7,6 +7,7 @@ import (
"text/tabwriter" "text/tabwriter"
"github.com/docker/buildx/monitor/types" "github.com/docker/buildx/monitor/types"
"github.com/pkg/errors"
) )
type PsCmd struct { type PsCmd struct {
@ -24,6 +25,9 @@ func (cm *PsCmd) Info() types.CommandInfo {
func (cm *PsCmd) Exec(ctx context.Context, args []string) error { func (cm *PsCmd) Exec(ctx context.Context, args []string) error {
ref := cm.m.AttachedSessionID() ref := cm.m.AttachedSessionID()
if ref == "" {
return errors.Errorf("no attaching session")
}
plist, err := cm.m.ListProcesses(ctx, ref) plist, err := cm.m.ListProcesses(ctx, ref)
if err != nil { if err != nil {
return err return err

Loading…
Cancel
Save