Fix wrong workflow status when rerun a job in an already finished workflow (#26119) (#26124)

Backport #26119 by @yp05327

Before:

![image](https://github.com/go-gitea/gitea/assets/18380374/fb687592-b117-4cd5-b076-2ca5ca847ea4)
After:

![image](https://github.com/go-gitea/gitea/assets/18380374/c9b0683e-e81d-410b-8c35-fbe54327fab4)

After workflow finished, if you rerun a single job, the workflow status
will become to `Running` which is not correct as no jobs are running in
this workflow.

Co-authored-by: yp05327 <576951401@qq.com>
(cherry picked from commit 08cdc0da3d)
This commit is contained in:
Giteabot 2023-07-25 06:22:58 -04:00 committed by Earl Warren
parent 9fae415030
commit e2101ae572
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00

View file

@ -143,7 +143,7 @@ func aggregateJobStatus(jobs []*ActionRunJob) Status {
if !job.Status.IsDone() { if !job.Status.IsDone() {
allDone = false allDone = false
} }
if job.Status != StatusWaiting { if job.Status != StatusWaiting && !job.Status.IsDone() {
allWaiting = false allWaiting = false
} }
if job.Status == StatusFailure || job.Status == StatusCancelled { if job.Status == StatusFailure || job.Status == StatusCancelled {