@@ -12,6 +12,7 @@ import (
12
12
"strings"
13
13
"time"
14
14
15
+ actions_model "code.gitea.io/gitea/models/actions"
15
16
activities_model "code.gitea.io/gitea/models/activities"
16
17
"code.gitea.io/gitea/models/db"
17
18
"code.gitea.io/gitea/models/organization"
@@ -31,6 +32,7 @@ import (
31
32
"code.gitea.io/gitea/modules/validation"
32
33
"code.gitea.io/gitea/modules/web"
33
34
"code.gitea.io/gitea/routers/api/v1/utils"
35
+ actions_service "code.gitea.io/gitea/services/actions"
34
36
"code.gitea.io/gitea/services/context"
35
37
"code.gitea.io/gitea/services/convert"
36
38
"code.gitea.io/gitea/services/issue"
@@ -1035,13 +1037,21 @@ func updateRepoArchivedState(ctx *context.APIContext, opts api.EditRepoOption) e
1035
1037
ctx .Error (http .StatusInternalServerError , "ArchiveRepoState" , err )
1036
1038
return err
1037
1039
}
1040
+ if err := actions_model .CleanRepoScheduleTasks (ctx , repo ); err != nil {
1041
+ log .Error ("CleanRepoScheduleTasks for archived repo %s/%s: %v" , ctx .Repo .Owner .Name , repo .Name , err )
1042
+ }
1038
1043
log .Trace ("Repository was archived: %s/%s" , ctx .Repo .Owner .Name , repo .Name )
1039
1044
} else {
1040
1045
if err := repo_model .SetArchiveRepoState (ctx , repo , * opts .Archived ); err != nil {
1041
1046
log .Error ("Tried to un-archive a repo: %s" , err )
1042
1047
ctx .Error (http .StatusInternalServerError , "ArchiveRepoState" , err )
1043
1048
return err
1044
1049
}
1050
+ if ctx .Repo .Repository .UnitEnabled (ctx , unit_model .TypeActions ) {
1051
+ if err := actions_service .DetectAndHandleSchedules (ctx , repo ); err != nil {
1052
+ log .Error ("DetectAndHandleSchedules for un-archived repo %s/%s: %v" , ctx .Repo .Owner .Name , repo .Name , err )
1053
+ }
1054
+ }
1045
1055
log .Trace ("Repository was un-archived: %s/%s" , ctx .Repo .Owner .Name , repo .Name )
1046
1056
}
1047
1057
}
0 commit comments