}
// GetSDKInfo Used get-sdk-info script to extract SDK get info from a SDK file/tarball
-func GetSDKInfo(scriptDir, url, filename, md5sum string, log *logrus.Logger) (xsapiv1.SDK, error) {
+func GetSDKInfo(scriptDir, url, filename, md5sum, uuid string, log *logrus.Logger) (xsapiv1.SDK, error) {
sdk := xsapiv1.SDK{}
args := []string{}
} else {
return sdk, fmt.Errorf("url of filename must be set")
}
+ if uuid != "" {
+ args = append(args, "--uuid", uuid)
+ }
cmd := exec.Command(path.Join(scriptDir, scriptGetSdkInfo), args...)
stdout, err := cmd.CombinedOutput()
// (see sdks.go / monitorSDKInstallation )
// Update SetupFile when n
if s.sdk.SetupFile == "" {
- sdkDef, err := GetSDKInfo(s.sdk.FamilyConf.ScriptsDir, s.sdk.URL, "", "", s.Log)
+ sdkDef, err := GetSDKInfo(s.sdk.FamilyConf.ScriptsDir, s.sdk.URL, "", "", s.sdk.UUID, s.Log)
if err != nil || sdkDef.SetupFile == "" {
+ s.Log.Errorf("GetSDKInfo error: %v", err)
code = 1
s.sdk.LastError = "Installation failed (cannot init SetupFile path)"
s.sdk.Status = xsapiv1.SdkStatusNotInstalled
s.sdk.Status = xsapiv1.SdkStatusInstalling
s.sdk.LastError = ""
+ if err := s.events.Emit(xsapiv1.EVTSDKStateChange, s.sdk, sess.ID); err != nil {
+ s.Log.Errorf("WS Emit EVTSDKStateChange installing : %v", err)
+ }
+
err := s.installCmd.Start()
return err