mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 06:21:11 +00:00 
			
		
		
		
	Co-authored-by: 6543 <6543@obermui.de> (cherry picked from commit 0d08bb6112884411eb4f58b056278d3c824a8fc0)
		
			
				
	
	
		
			46 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2024 The Gitea Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package v1_22 //nolint
 | |
| 
 | |
| import (
 | |
| 	"code.gitea.io/gitea/modules/timeutil"
 | |
| 	webhook_module "code.gitea.io/gitea/modules/webhook"
 | |
| 
 | |
| 	"xorm.io/xorm"
 | |
| )
 | |
| 
 | |
| // HookTask represents a hook task.
 | |
| // exact copy of models/webhook/hooktask.go when this migration was created
 | |
| //   - xorm:"-" fields deleted
 | |
| type HookTask struct {
 | |
| 	ID             int64  `xorm:"pk autoincr"`
 | |
| 	HookID         int64  `xorm:"index"`
 | |
| 	UUID           string `xorm:"unique"`
 | |
| 	PayloadContent string `xorm:"LONGTEXT"`
 | |
| 	EventType      webhook_module.HookEventType
 | |
| 	IsDelivered    bool
 | |
| 	Delivered      timeutil.TimeStampNano
 | |
| 
 | |
| 	// History info.
 | |
| 	IsSucceed       bool
 | |
| 	RequestContent  string `xorm:"LONGTEXT"`
 | |
| 	ResponseContent string `xorm:"LONGTEXT"`
 | |
| 
 | |
| 	// Version number to allow for smooth version upgrades:
 | |
| 	//  - Version 1: PayloadContent contains the JSON as send to the URL
 | |
| 	//  - Version 2: PayloadContent contains the original event
 | |
| 	PayloadVersion int `xorm:"DEFAULT 1"`
 | |
| }
 | |
| 
 | |
| func AddPayloadVersionToHookTaskTable(x *xorm.Engine) error {
 | |
| 	// create missing column
 | |
| 	if _, err := x.SyncWithOptions(xorm.SyncOptions{
 | |
| 		IgnoreIndices:    true,
 | |
| 		IgnoreConstrains: true,
 | |
| 	}, new(HookTask)); err != nil {
 | |
| 		return err
 | |
| 	}
 | |
| 	_, err := x.Exec("UPDATE hook_task SET payload_version = 1 WHERE payload_version IS NULL")
 | |
| 	return err
 | |
| }
 |