mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 16:40:24 +08:00 
			
		
		
		
	This commit is contained in:
		@@ -77,7 +77,7 @@ func getEngine() (*xorm.Engine, error) {
 | 
				
			|||||||
			return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type)
 | 
								return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm)
 | 
							os.MkdirAll(path.Dir(DbCfg.Path), os.ModePerm)
 | 
				
			||||||
		cnnstr = DbCfg.Path
 | 
							cnnstr = "file:" + DbCfg.Path + "?cache=shared&mode=rwc"
 | 
				
			||||||
	default:
 | 
						default:
 | 
				
			||||||
		return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type)
 | 
							return nil, fmt.Errorf("Unknown database type: %s", DbCfg.Type)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -236,6 +236,7 @@ func UpdateHookTask(t *HookTask) error {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
// DeliverHooks checks and delivers undelivered hooks.
 | 
					// DeliverHooks checks and delivers undelivered hooks.
 | 
				
			||||||
func DeliverHooks() {
 | 
					func DeliverHooks() {
 | 
				
			||||||
 | 
						tasks := make([]*HookTask, 0, 10)
 | 
				
			||||||
	timeout := time.Duration(setting.WebhookDeliverTimeout) * time.Second
 | 
						timeout := time.Duration(setting.WebhookDeliverTimeout) * time.Second
 | 
				
			||||||
	x.Where("is_delivered=?", false).Iterate(new(HookTask),
 | 
						x.Where("is_delivered=?", false).Iterate(new(HookTask),
 | 
				
			||||||
		func(idx int, bean interface{}) error {
 | 
							func(idx int, bean interface{}) error {
 | 
				
			||||||
@@ -283,12 +284,18 @@ func DeliverHooks() {
 | 
				
			|||||||
				}
 | 
									}
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			if err := UpdateHookTask(t); err != nil {
 | 
								tasks = append(tasks, t)
 | 
				
			||||||
				log.Error(4, "UpdateHookTask: %v", err)
 | 
					 | 
				
			||||||
				return nil
 | 
					 | 
				
			||||||
			}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
			log.Trace("Hook delivered(%s): %s", t.Uuid, t.PayloadContent)
 | 
								if t.IsSucceed {
 | 
				
			||||||
 | 
									log.Trace("Hook delivered(%s): %s", t.Uuid, t.PayloadContent)
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
			return nil
 | 
								return nil
 | 
				
			||||||
		})
 | 
							})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Update hook task status.
 | 
				
			||||||
 | 
						for _, t := range tasks {
 | 
				
			||||||
 | 
							if err := UpdateHookTask(t); err != nil {
 | 
				
			||||||
 | 
								log.Error(4, "UpdateHookTask(%d): %v", t.Id, err)
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user