/*
- * Copyright (C) 2017 "IoT.bzh"
+ * Copyright (C) 2017-2018 "IoT.bzh"
* Author Sebastien Douheret <sebastien@iot.bzh>
*
* Licensed under the Apache License, Version 2.0 (the "License");
"os"
"strings"
- "github.com/iotbzh/xds-agent/lib/xaapiv1"
+ "gerrit.automotivelinux.org/gerrit/src/xds/xds-agent.git/lib/xaapiv1"
"github.com/urfave/cli"
)
*cmdDef = append(*cmdDef, cli.Command{
Name: "exec",
Usage: "execute a command in XDS",
- Action: exec,
+ Action: execCmd,
Flags: []cli.Flag{
cli.StringFlag{
Name: "id",
})
}
-func exec(ctx *cli.Context) error {
+func execCmd(ctx *cli.Context) error {
prjID := ctx.String("id")
rPath := ctx.String("rpath")
sdkid := ctx.String("sdkid")
}
exitChan := make(chan exitResult, 1)
- IOsk.On("disconnection", func(err error) {
+ IOSkClient.On("disconnection", func(err error) {
Log.Debugf("WS disconnection event with err: %v\n", err)
exitChan <- exitResult{err, 2}
})
}
}
- IOsk.On(xaapiv1.ExecOutEvent, func(ev xaapiv1.ExecOutMsg) {
+ IOSkClient.On(xaapiv1.ExecOutEvent, func(ev xaapiv1.ExecOutMsg) {
outFunc(ev.Timestamp, ev.Stdout, ev.Stderr)
})
- IOsk.On(xaapiv1.ExecExitEvent, func(ev xaapiv1.ExecExitMsg) {
+ IOSkClient.On(xaapiv1.ExecExitEvent, func(ev xaapiv1.ExecExitMsg) {
exitChan <- exitResult{ev.Error, ev.Code}
})
- IOsk.On(xaapiv1.EVTProjectChange, func(ev xaapiv1.EventMsg) {
+ IOSkClient.On(xaapiv1.EVTProjectChange, func(ev xaapiv1.EventMsg) {
prj, _ := ev.DecodeProjectConfig()
Log.Infof("Event %v (%v): %v", ev.Type, ev.Time, prj)
})
// Wait exit
select {
+ case res := <-IOSkClient.ServerDiscoChan:
+ Log.Debugf("XDS Server disconnected %v", res)
+ return cli.NewExitError(res.error, res.code)
+
case res := <-exitChan:
errStr := ""
if res.code == 0 {