forgejo/templates/repo
kolaente 59b30f060a
Auto merge pull requests when all checks succeeded via API (#9307)
* Fix indention

Signed-off-by: kolaente <k@knt.li>

* Add option to merge a pr right now without waiting for the checks to succeed

Signed-off-by: kolaente <k@knt.li>

* Fix lint

Signed-off-by: kolaente <k@knt.li>

* Add scheduled pr merge to tables used for testing

Signed-off-by: kolaente <k@knt.li>

* Add status param to make GetPullRequestByHeadBranch reusable

Signed-off-by: kolaente <k@knt.li>

* Move "Merge now" to a seperate button to make the ui clearer

Signed-off-by: kolaente <k@knt.li>

* Update models/scheduled_pull_request_merge.go

Co-authored-by: 赵智超 <1012112796@qq.com>

* Update web_src/js/index.js

Co-authored-by: 赵智超 <1012112796@qq.com>

* Update web_src/js/index.js

Co-authored-by: 赵智超 <1012112796@qq.com>

* Re-add migration after merge

* Fix frontend lint

* Fix version compare

* Add vendored dependencies

* Add basic tets

* Make sure the api route is capable of scheduling PRs for merging

* Fix comparing version

* make vendor

* adopt refactor

* apply suggestion: User -> Doer

* init var once

* Fix Test

* Update templates/repo/issue/view_content/comments.tmpl

* adopt

* nits

* next

* code format

* lint

* use same name schema; rm CreateUnScheduledPRToAutoMergeComment

* API: can not create schedule twice

* Add TestGetBranchNamesForSha

* nits

* new go routine for each pull to merge

* Update models/pull.go

Co-authored-by: a1012112796 <1012112796@qq.com>

* Update models/scheduled_pull_request_merge.go

Co-authored-by: a1012112796 <1012112796@qq.com>

* fix & add renaming sugestions

* Update services/automerge/pull_auto_merge.go

Co-authored-by: a1012112796 <1012112796@qq.com>

* fix conflict relicts

* apply latest refactors

* fix: migration after merge

* Update models/error.go

Co-authored-by: delvh <dev.lh@web.de>

* Update options/locale/locale_en-US.ini

Co-authored-by: delvh <dev.lh@web.de>

* Update options/locale/locale_en-US.ini

Co-authored-by: delvh <dev.lh@web.de>

* adapt latest refactors

* fix test

* use more context

* skip potential edgecases

* document func usage

* GetBranchNamesForSha() -> GetRefsBySha()

* start refactoring

* ajust to new changes

* nit

* docu nit

* the great check move

* move checks for branchprotection into own package

* resolve todo now ...

* move & rename

* unexport if posible

* fix

* check if merge is allowed before merge on scheduled pull

* debugg

* wording

* improve SetDefaults & nits

* NotAllowedToMerge -> DisallowedToMerge

* fix test

* merge files

* use package "errors"

* merge files

* add string names

* other implementation for gogit

* adapt refactor

* more context for models/pull.go

* GetUserRepoPermission use context

* more ctx

* use context for loading pull head/base-repo

* more ctx

* more ctx

* models.LoadIssueCtx()

* models.LoadIssueCtx()

* Handle pull_service.Merge in one DB transaction

* add TODOs

* next

* next

* next

* more ctx

* more ctx

* Start refactoring structure of old pull code ...

* move code into new packages

* shorter names ... and finish **restructure**

* Update models/branches.go

Co-authored-by: zeripath <art27@cantab.net>

* finish UpdateProtectBranch

* more and fix

* update datum

* template: use "svg" helper

* rename prQueue 2 prPatchCheckerQueue

* handle automerge in queue

* lock pull on git&db actions ...

* lock pull on git&db actions ...

* add TODO notes

* the regex

* transaction in tests

* GetRepositoryByIDCtx

* shorter table name and lint fix

* close transaction bevore notify

* Update models/pull.go

* next

* CheckPullMergable check all branch protections!

* Update routers/web/repo/pull.go

* CheckPullMergable check all branch protections!

* Revert "PullService lock via pullID (#19520)" (for now...)

This reverts commit 6cde7c9159a5ea75a10356feb7b8c7ad4c434a9a.

* Update services/pull/check.go

* Use for a repo action one database transaction

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: delvh <dev.lh@web.de>

* Update services/issue/status.go

Co-authored-by: delvh <dev.lh@web.de>

* Update services/issue/status.go

Co-authored-by: delvh <dev.lh@web.de>

* use db.WithTx()

* gofmt

* make pr.GetDefaultMergeMessage() context aware

* make MergePullRequestForm.SetDefaults context aware

* use db.WithTx()

* pull.SetMerged only with context

* fix deadlock in `test-sqlite\#TestAPIBranchProtection`

* dont forget templates

* db.WithTx allow to set the parentCtx

* handle db transaction in service packages but not router

* issue_service.ChangeStatus just had caused another deadlock :/
it has to do something with how notification package is handled

* if we merge a pull in one database transaktion, we get a lock, because merge infoce internal api that cant handle open db sessions to the same repo

* ajust to current master

* Apply suggestions from code review

Co-authored-by: delvh <dev.lh@web.de>

* dont open db transaction in router

* make generate-swagger

* one _success less

* wording nit

* rm

* adapt

* remove not needed test files

* rm less diff & use attr in JS

* ...

* Update services/repository/files/commit.go

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>

* ajust db schema for PullAutoMerge

* skip broken pull refs

* more context in error messages

* remove webUI part for another pull

* remove more WebUI only parts

* API: add CancleAutoMergePR

* Apply suggestions from code review

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>

* fix lint

* Apply suggestions from code review

* cancle -> cancel

Co-authored-by: delvh <dev.lh@web.de>

* change queue identifyer

* fix swagger

* prevent nil issue

* fix and dont drop error

* as per @zeripath

* Update integrations/git_test.go

Co-authored-by: delvh <dev.lh@web.de>

* Update integrations/git_test.go

Co-authored-by: delvh <dev.lh@web.de>

* more declarative integration tests (dedup code)

* use assert.False/True helper

Co-authored-by: 赵智超 <1012112796@qq.com>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2022-05-08 01:05:52 +08:00
..
branch Prevent double encoding of branch names in delete branch (#18714) 2022-02-11 13:02:04 +08:00
diff Improve reviewing PR UX (#19612) 2022-05-07 01:35:12 -04:00
editor Remove dependent on session auth for api/v1 routers (#19321) 2022-04-08 06:22:10 +02:00
graph Propagate context and ensure git commands run in request context (#17868) 2022-01-19 23:26:57 +00:00
issue Auto merge pull requests when all checks succeeded via API (#9307) 2022-05-08 01:05:52 +08:00
migrate Refactor repo clone button and repo clone links, fix JS error on empty repo page (#19208) 2022-03-29 05:21:30 +02:00
projects Move project files into models/project sub package (#17704) 2022-03-29 22:16:31 +08:00
pulls Improvements to content history (#17746) 2021-11-22 20:20:16 +08:00
release Remove dependent on session auth for api/v1 routers (#19321) 2022-04-08 06:22:10 +02:00
settings Update image URL for Discord webhook (#19536) 2022-04-27 20:23:27 -05:00
wiki By default force vertical tabs on mobile (#19486) 2022-04-26 16:31:58 -04:00
activity.tmpl Refactor i18n, use Locale to provide i18n/translation related functions (#18648) 2022-02-08 11:02:30 +08:00
blame.tmpl Add warning for BIDI characters in page renders and in diffs (#17562) 2022-01-07 02:18:52 +01:00
branch_dropdown.tmpl Fix broken TR on cherrypick page (#19599) 2022-05-04 02:48:23 +02:00
clone_buttons.tmpl Don't let repo clone URL overflow (#19517) 2022-04-26 19:22:11 -04:00
commit_page.tmpl Show fullname on issue edits and gpg/ssh signing info (#18827) 2022-02-20 19:50:11 +00:00
commit_status.tmpl Show dropdown with all statuses for commit (#13977) 2020-12-20 11:13:12 +08:00
commit_statuses.tmpl Separate the details links of commit-statuses in headers (#18661) 2022-02-11 23:29:58 +08:00
commits.tmpl Add compare tag dropdown to releases page (#15695) 2021-05-03 13:27:48 -04:00
commits_list.tmpl Refactor i18n, use Locale to provide i18n/translation related functions (#18648) 2022-02-08 11:02:30 +08:00
commits_list_small.tmpl Fix a broken link in commits_list_small.tmpl (#18763) 2022-02-14 19:19:07 +08:00
commits_table.tmpl Cleanup and use global style on popups (#17674) 2021-11-18 11:26:50 +08:00
create.tmpl Unify and simplify TrN for i18n (#18141) 2022-01-02 04:33:57 +01:00
empty.tmpl Refactor repo clone button and repo clone links, fix JS error on empty repo page (#19208) 2022-03-29 05:21:30 +02:00
forks.tmpl Add pagination to fork list (#17639) 2021-11-18 22:45:56 +08:00
graph.tmpl Re-separate the color translation strings (#17390) 2021-10-21 23:51:03 +02:00
header.tmpl By default force vertical tabs on mobile (#19486) 2022-04-26 16:31:58 -04:00
home.tmpl By default force vertical tabs on mobile (#19486) 2022-04-26 16:31:58 -04:00
icon.tmpl Do not display org avatar near icon for internal repos (#13957) 2020-12-13 16:51:15 -05:00
packages.tmpl Add Package Registry (#16510) 2022-03-30 16:42:47 +08:00
search.tmpl Automatically pause queue if index service is unavailable (#15066) 2022-01-27 10:30:51 +02:00
shabox_badge.tmpl Fix avatar template error (#13833) 2020-12-03 23:12:59 +00:00
sub_menu.tmpl Unify and simplify TrN for i18n (#18141) 2022-01-02 04:33:57 +01:00
unicode_escape_prompt.tmpl Left-Align text in Unicode warning boxes (#18331) 2022-01-19 19:25:08 +00:00
upload.tmpl Add attachments for PR reviews (#16075) 2021-06-14 21:12:33 -04:00
user_cards.tmpl Direct avatar rendering (#13649) 2020-12-03 19:46:11 +01:00
view_file.tmpl Add a new menu in file view to open blame view and fix blame view select range bug (#19500) 2022-04-26 13:54:40 +03:00
view_list.tmpl Update JS dependencies (#19281) 2022-04-01 02:15:46 +02:00
watchers.tmpl Add class to page content to unify top margin (#13766) 2020-11-30 23:00:14 -05:00