Added new SDKs management support
[src/xds/xds-agent.git] / lib / agent / projects.go
index a2d8fe1..7393364 100644 (file)
@@ -75,6 +75,11 @@ func (p *Projects) Init(server *XdsServer) error {
                for _, prj := range xFlds {
                        newP := svr.FolderToProject(prj)
                        if _, err := p.createUpdate(newP, false, true); err != nil {
+                               // Don't consider that as an error (allow support config without CloudSync support)
+                               if p.Context.SThg == nil && strings.Contains(err.Error(), "Server doesn't support project type CloudSync") {
+                                       continue
+                               }
+
                                errMsg += "Error while creating project id " + prj.ID + ": " + err.Error() + "\n "
                                continue
                        }
@@ -246,14 +251,12 @@ func (p *Projects) createUpdate(newF xaapiv1.ProjectConfig, create bool, initial
        // Add to folders list
        p.projects[newPrj.ID] = &fld
 
-       // Force sync after creation
+       // Force sync to get an initial sync status
        // (need to defer to be sure that WS events will arrive after HTTP creation reply)
-       if create {
-               go func() {
-                       time.Sleep(time.Millisecond * 500)
-                       fld.Sync()
-               }()
-       }
+       go func() {
+               time.Sleep(time.Millisecond * 500)
+               fld.Sync()
+       }()
 
        return newPrj, nil
 }