Fixed sdk from local file installation
[src/xds/xds-server.git] / lib / xdsserver / sdk.go
index 7c912c4..68c92b4 100644 (file)
@@ -92,7 +92,7 @@ func ListCrossSDK(scriptDir string, update bool, log *logrus.Logger) ([]xsapiv1.
 }
 
 // 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{}
@@ -106,6 +106,9 @@ func GetSDKInfo(scriptDir, url, filename, md5sum string, log *logrus.Logger) (xs
        } 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()
@@ -327,7 +330,7 @@ func (s *CrossSDK) Install(file string, force bool, timeout int, args []string,
                        // (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