Skip to content

Commit b2121fe

Browse files
committed
do not delete ActionSchedule
1 parent 27d4c11 commit b2121fe

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

services/actions/schedule_tasks.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010

1111
actions_model "code.gitea.io/gitea/models/actions"
1212
"code.gitea.io/gitea/models/db"
13+
repo_model "code.gitea.io/gitea/models/repo"
1314
"code.gitea.io/gitea/models/unit"
1415
"code.gitea.io/gitea/modules/log"
1516
"code.gitea.io/gitea/modules/timeutil"
@@ -65,8 +66,15 @@ func startTasks(ctx context.Context) error {
6566
}
6667
}
6768

68-
cfg := row.Repo.MustGetUnit(ctx, unit.TypeActions).ActionsConfig()
69-
if cfg.IsWorkflowDisabled(row.Schedule.WorkflowID) {
69+
cfg, err := row.Repo.GetUnit(ctx, unit.TypeActions)
70+
if err != nil {
71+
if repo_model.IsErrUnitTypeNotExist(err) {
72+
// Skip the actions unit of this repo is disabled.
73+
continue
74+
}
75+
return err
76+
}
77+
if cfg.ActionsConfig().IsWorkflowDisabled(row.Schedule.WorkflowID) {
7078
continue
7179
}
7280

services/repository/setting.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@ package repository
55

66
import (
77
"context"
8+
"fmt"
89
"slices"
910

1011
actions_model "code.gitea.io/gitea/models/actions"
1112
"code.gitea.io/gitea/models/db"
1213
repo_model "code.gitea.io/gitea/models/repo"
1314
"code.gitea.io/gitea/models/unit"
14-
"code.gitea.io/gitea/modules/log"
15+
webhook_module "code.gitea.io/gitea/modules/webhook"
1516
)
1617

1718
// UpdateRepositoryUnits updates a repository's units
@@ -28,8 +29,14 @@ func UpdateRepositoryUnits(ctx context.Context, repo *repo_model.Repository, uni
2829
}
2930

3031
if slices.Contains(deleteUnitTypes, unit.TypeActions) {
31-
if err := actions_model.CleanRepoScheduleTasks(ctx, repo); err != nil {
32-
log.Error("CleanRepoScheduleTasks: %v", err)
32+
if err := actions_model.CancelRunningJobs(
33+
ctx,
34+
repo.ID,
35+
repo.DefaultBranch,
36+
"",
37+
webhook_module.HookEventSchedule,
38+
); err != nil {
39+
return fmt.Errorf("CancelRunningJobs: %v", err)
3340
}
3441
}
3542

0 commit comments

Comments
 (0)