Not trigger all jobs any more, when re-running the first job (#29439)

Previously, it will be treated as "re-run all jobs" when `jobIndex ==
0`. So when you click re-run button on the first job, it triggers all
the jobs actually.

(cherry picked from commit bad4ad70181c747599e206c0e7a87b57c997385d)
This commit is contained in:
sillyguodong 2024-02-27 15:40:21 +08:00 committed by Earl Warren
parent 894d9b2836
commit 997350a68d
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00

View file

@ -13,6 +13,7 @@ import (
"io"
"net/http"
"net/url"
"strconv"
"strings"
"time"
@ -312,10 +313,14 @@ func ViewPost(ctx *context_module.Context) {
}
// Rerun will rerun jobs in the given run
// jobIndex = 0 means rerun all jobs
// If jobIndexStr is a blank string, it means rerun all jobs
func Rerun(ctx *context_module.Context) {
runIndex := ctx.ParamsInt64("run")
jobIndex := ctx.ParamsInt64("job")
jobIndexStr := ctx.Params("job")
var jobIndex int64
if jobIndexStr != "" {
jobIndex, _ = strconv.ParseInt(jobIndexStr, 10, 64)
}
run, err := actions_model.GetRunByIndex(ctx, ctx.Repo.Repository.ID, runIndex)
if err != nil {
@ -347,7 +352,7 @@ func Rerun(ctx *context_module.Context) {
return
}
if jobIndex != 0 {
if jobIndexStr != "" {
jobs = []*actions_model.ActionRunJob{job}
}