]> source.dussan.org Git - gitea.git/commitdiff
Implement `MigrateRepository` for the actions notifier (#28920)
authorZettat123 <zettat123@gmail.com>
Thu, 25 Jan 2024 12:06:29 +0000 (20:06 +0800)
committerGitHub <noreply@github.com>
Thu, 25 Jan 2024 12:06:29 +0000 (20:06 +0800)
Fixes #28699

This PR implements the `MigrateRepository` method for `actionsNotifier`
to detect the schedules from the workflow files in the migrated
repository.

services/actions/notifier.go

index 5a71d1cd791f717f8182b6169ced1650cd243dc1..0b4fed5db1282faf18b68a90d038080fc7ef5545 100644 (file)
@@ -565,3 +565,15 @@ func (n *actionsNotifier) DeleteWikiPage(ctx context.Context, doer *user_model.U
                Page:       page,
        }).Notify(ctx)
 }
+
+// MigrateRepository is used to detect workflows after a repository has been migrated
+func (n *actionsNotifier) MigrateRepository(ctx context.Context, doer, u *user_model.User, repo *repo_model.Repository) {
+       ctx = withMethod(ctx, "MigrateRepository")
+
+       newNotifyInput(repo, doer, webhook_module.HookEventRepository).WithPayload(&api.RepositoryPayload{
+               Action:       api.HookRepoCreated,
+               Repository:   convert.ToRepo(ctx, repo, access_model.Permission{AccessMode: perm_model.AccessModeOwner}),
+               Organization: convert.ToUser(ctx, u, nil),
+               Sender:       convert.ToUser(ctx, doer, nil),
+       }).Notify(ctx)
+}