diff --git a/models/actions/run_job.go b/models/actions/run_job.go index 616e298dc9727..35225f4458d85 100644 --- a/models/actions/run_job.go +++ b/models/actions/run_job.go @@ -12,6 +12,7 @@ import ( "code.gitea.io/gitea/models/db" repo_model "code.gitea.io/gitea/models/repo" "code.gitea.io/gitea/modules/actions/jobparser" + "code.gitea.io/gitea/modules/base" "code.gitea.io/gitea/modules/timeutil" "code.gitea.io/gitea/modules/util" @@ -152,6 +153,12 @@ func GetRunJobsByRunID(ctx context.Context, runID int64) (ActionJobList, error) if err := db.GetEngine(ctx).Where("run_id=?", runID).OrderBy("id").Find(&jobs); err != nil { return nil, err } + slices.SortStableFunc(jobs, func(a, b *ActionRunJob) int { + if cmp := base.NaturalSortCompare(a.JobID, b.JobID); cmp != 0 { + return cmp + } + return base.NaturalSortCompare(a.Name, b.Name) + }) return jobs, nil }