mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-03 21:08:25 +00:00 
			
		
		
		
	Add endpoint deleting workflow run (#34337)
Add endpoint deleting workflow run Resolves #26219 /claim #26219 --------- Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
		@@ -16,6 +16,7 @@ import (
 | 
			
		||||
	user_model "code.gitea.io/gitea/models/user"
 | 
			
		||||
	"code.gitea.io/gitea/modules/git"
 | 
			
		||||
	"code.gitea.io/gitea/modules/json"
 | 
			
		||||
	"code.gitea.io/gitea/modules/setting"
 | 
			
		||||
	api "code.gitea.io/gitea/modules/structs"
 | 
			
		||||
	"code.gitea.io/gitea/modules/timeutil"
 | 
			
		||||
	"code.gitea.io/gitea/modules/util"
 | 
			
		||||
@@ -343,13 +344,13 @@ func InsertRun(ctx context.Context, run *ActionRun, jobs []*jobparser.SingleWork
 | 
			
		||||
	return committer.Commit()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func GetRunByID(ctx context.Context, id int64) (*ActionRun, error) {
 | 
			
		||||
func GetRunByRepoAndID(ctx context.Context, repoID, runID int64) (*ActionRun, error) {
 | 
			
		||||
	var run ActionRun
 | 
			
		||||
	has, err := db.GetEngine(ctx).Where("id=?", id).Get(&run)
 | 
			
		||||
	has, err := db.GetEngine(ctx).Where("id=? AND repo_id=?", runID, repoID).Get(&run)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	} else if !has {
 | 
			
		||||
		return nil, fmt.Errorf("run with id %d: %w", id, util.ErrNotExist)
 | 
			
		||||
		return nil, fmt.Errorf("run with id %d: %w", runID, util.ErrNotExist)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return &run, nil
 | 
			
		||||
@@ -420,17 +421,10 @@ func UpdateRun(ctx context.Context, run *ActionRun, cols ...string) error {
 | 
			
		||||
 | 
			
		||||
	if run.Status != 0 || slices.Contains(cols, "status") {
 | 
			
		||||
		if run.RepoID == 0 {
 | 
			
		||||
			run, err = GetRunByID(ctx, run.ID)
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			setting.PanicInDevOrTesting("RepoID should not be 0")
 | 
			
		||||
		}
 | 
			
		||||
		if run.Repo == nil {
 | 
			
		||||
			repo, err := repo_model.GetRepositoryByID(ctx, run.RepoID)
 | 
			
		||||
			if err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
			run.Repo = repo
 | 
			
		||||
		if err = run.LoadRepo(ctx); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
		if err := updateRepoRunsNumbers(ctx, run.Repo); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user