Skip to content

Commit 9cf7783

Browse files
author
zc
authored
virt attach can specify command (#235)
* virt attach can specify command * resize through yaexec * update libyavirt deps
1 parent ce496b6 commit 9cf7783

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

engine/virt/virt.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ func (v *Virt) ExecAttach(ctx context.Context, execID string, tty bool) (io.Read
8484
func (v *Virt) Execute(ctx context.Context, target string, config *enginetypes.ExecConfig) (execID string, outputStream io.ReadCloser, inputStream io.WriteCloser, err error) {
8585
if config.Tty {
8686
flags := virttypes.AttachGuestFlags{Safe: true, Force: true}
87-
stream, err := v.client.AttachGuest(ctx, target, flags)
87+
stream, err := v.client.AttachGuest(ctx, target, config.Cmd, flags)
8888
if err != nil {
8989
return "", nil, nil, err
9090
}
@@ -104,7 +104,7 @@ func (v *Virt) ExecExitCode(ctx context.Context, execID string) (code int, err e
104104

105105
// ExecResize resize exec tty
106106
func (v *Virt) ExecResize(ctx context.Context, execID string, height, width uint) (err error) {
107-
resizeCmd := fmt.Sprintf("/bin/stty -F /dev/ttyS0 rows %d cols %d", height, width)
107+
resizeCmd := fmt.Sprintf("yaexec resize -r %d -c %d", height, width)
108108
msg, err := v.client.ExecuteGuest(ctx, execID, strings.Split(resizeCmd, " "))
109109
log.Debugf("[ExecResize] resize got response: %v", msg)
110110
return err

go.mod

+2-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ require (
2525
github.com/opencontainers/runc v0.0.0-20180615140650-ad0f5255060d // indirect
2626
github.com/patrickmn/go-cache v2.1.0+incompatible
2727
github.com/pkg/errors v0.9.1
28-
github.com/projecteru2/libyavirt v0.0.0-20200706021408-b8f160e2f677
28+
github.com/projecteru2/libyavirt v0.0.0-20200803015801-c31d39b6e15c
2929
github.com/prometheus/client_golang v1.0.0
3030
github.com/sanity-io/litter v1.1.0
3131
github.com/sirupsen/logrus v1.4.2
@@ -39,6 +39,7 @@ require (
3939
golang.org/x/net v0.0.0-20200319234117-63522dbf7eec
4040
golang.org/x/time v0.0.0-20191024005414-555d28b269f0 // indirect
4141
golang.org/x/tools v0.0.0-20200612022331-742c5eb664c2 // indirect
42+
google.golang.org/genproto v0.0.0-20200319113533-08878b785e9c // indirect
4243
google.golang.org/grpc v1.28.0
4344
gopkg.in/alexcesaro/statsd.v2 v2.0.0 // indirect
4445
gopkg.in/yaml.v2 v2.3.0 // indirect

go.sum

+3
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ
106106
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
107107
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
108108
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
109+
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
109110
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
110111
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
111112
github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc=
@@ -190,6 +191,8 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
190191
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
191192
github.com/projecteru2/libyavirt v0.0.0-20200706021408-b8f160e2f677 h1:ui8PkAHl3RS1wKLaw+LprXXhrEULBUJHuGFzEB+je70=
192193
github.com/projecteru2/libyavirt v0.0.0-20200706021408-b8f160e2f677/go.mod h1:L+QcwDnJUIQYX7mM9//2KNF32e1aknOFFzutbVNyKfg=
194+
github.com/projecteru2/libyavirt v0.0.0-20200803015801-c31d39b6e15c h1:I9i6hagi+VJ3sSJsSULYkml3xhJp8HRV9qdBml9NW14=
195+
github.com/projecteru2/libyavirt v0.0.0-20200803015801-c31d39b6e15c/go.mod h1:9/SNmdphwl12ubwihkRa9YtOozM6liYLDxsricra1mY=
193196
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
194197
github.com/prometheus/client_golang v1.0.0 h1:vrDKnkGzuGvhNAL56c7DBz29ZL+KxnoR0x7enabFceM=
195198
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=

0 commit comments

Comments
 (0)