Rerun job only when run is done (#34970)
Some checks failed
release-nightly / nightly-binary (push) Has been cancelled
release-nightly / nightly-docker-rootful (push) Has been cancelled
release-nightly / nightly-docker-rootless (push) Has been cancelled

For consistency, limit rerunning Job(s) to only when Run is in Done status.
This commit is contained in:
NorthRealm
2025-07-07 01:47:02 +08:00
committed by GitHub
parent 95a935aca0
commit 6b42ea1e54

View File

@@ -249,7 +249,7 @@ func ViewPost(ctx *context_module.Context) {
ID: v.ID,
Name: v.Name,
Status: v.Status.String(),
CanRerun: v.Status.IsDone() && ctx.Repo.CanWrite(unit.TypeActions),
CanRerun: resp.State.Run.CanRerun,
Duration: v.Duration().String(),
})
}
@@ -445,7 +445,7 @@ func Rerun(ctx *context_module.Context) {
return
}
}
ctx.JSON(http.StatusOK, struct{}{})
ctx.JSONOK()
return
}
@@ -460,12 +460,12 @@ func Rerun(ctx *context_module.Context) {
}
}
ctx.JSON(http.StatusOK, struct{}{})
ctx.JSONOK()
}
func rerunJob(ctx *context_module.Context, job *actions_model.ActionRunJob, shouldBlock bool) error {
status := job.Status
if !status.IsDone() {
if !status.IsDone() || !job.Run.Status.IsDone() {
return nil
}