udpate pilot by consul data 05/59105/1
authorLvbo163 <lv.bo163@zte.com.cn>
Mon, 6 Aug 2018 08:14:05 +0000 (16:14 +0800)
committerLvbo163 <lv.bo163@zte.com.cn>
Mon, 6 Aug 2018 08:14:05 +0000 (16:14 +0800)
Issue-ID: MSB-262

Change-Id: Ife9e7ab2f4678286684d4c6552870c98b0ac40c5
Signed-off-by: Lvbo163 <lv.bo163@zte.com.cn>
msb2pilot/src/msb2pilot/pilot/msb.go

index 9b6a977..a1b5b5f 100644 (file)
@@ -35,11 +35,26 @@ func SyncMsbData(newServices []*models.MsbService) {
        log.Log.Debug("sync msb rewrite rule to pilot")
        createServices, updateServices, deleteServices := compareServices(cachedServices, newServices)
 
-       log.Log.Debug("SyncMsbData: ", len(createServices), len(updateServices), len(deleteServices))
+       saveService(OperationCreate, createServices)
+       saveService(OperationUpdate, updateServices)
+       saveService(OperationDelete, deleteServices)
 
        cachedServices = newServices
 }
 
+func saveService(operation Operation, services []*models.MsbService) {
+       if len(services) == 0 {
+               return
+       }
+       configs, err := parseServiceToConfig(services)
+       if err != nil {
+               log.Log.Error("param parse error", err)
+               return
+       }
+       fails := Save(operation, configs)
+       log.Log.Debug("%d services need to %s, %d fails. \n", len(services), operation, len(fails))
+}
+
 func compareServices(oldServices, newServices []*models.MsbService) (createServices, updateServices, deleteServices []*models.MsbService) {
        oldServiceMap := toServiceMap(oldServices)
        newServiceMap := toServiceMap(newServices)