-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix schedule tasks bugs #28691
Fix schedule tasks bugs #28691
Conversation
Not blocking but it does not look right to mix the action-removal into the setting of the units. Should activating the action unit check if scheduled actions must be started? Same for changing the default branch? |
Because scheduled actions depends on actions enabled and default branch. So when disabled actions from repository setting or via API, we need to stop all the cron jobs. What should we do except remove them? Leaving them will make many gabadges in database. If we don't remove them, wired behaviours will be occupied. Actions disabled but schedule actions are still running. It's similar when change the repository's default branch. All schedule actions running on old branch should be stopped and removed. |
I understand the problem, I'm just not sure if it's the correct place to handle it. You could also remove the job if it is started the next time but the conditions aren't met anymore. Just an idea, isn't ideal either |
I have considered that idea but we don't know whether it will have next time. i.e. Just disabled actions on a repository and never enable actions again? |
I was unable to create a backport for 1.21. @lunny, please send one manually. 🍵
|
Fix go-gitea#28157 This PR fix the possible bugs about actions schedule. - Move `UpdateRepositoryUnit` and `SetRepoDefaultBranch` from models to service layer - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when actions unit has been disabled or global disabled. - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when default branch changed.
Fix #28157 Backport #28691 This PR fix the possible bugs about actions schedule. - Move `UpdateRepositoryUnit` and `SetRepoDefaultBranch` from models to service layer - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when actions unit has been disabled or global disabled. - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when default branch changed.
* giteaofficial/main: (34 commits) Use refname:strip-2 instead of refname:short when syncing tags (go-gitea#28797) Add gist to comparison (go-gitea#28809) Fix links in issue card (go-gitea#28806) Show latest commit for file (go-gitea#28067) Add ability to see open and closed issues at the same time (go-gitea#28757) Display latest sync time for pull mirrors on the repo page (go-gitea#28712) Fix `GetCommitStatuses` (go-gitea#28787) Caller should check the ResponseExtra.HasError() first to see whether the request fails (go-gitea#28796) Rework markup link rendering (go-gitea#26745) Fix nil pointer panic when exec some gitea cli command (go-gitea#28791) Add branch protection setting for ignoring stale approvals (go-gitea#28498) Forbid removing the last admin user (go-gitea#28337) Fix when private user following user, private user will not be counted in his own view (go-gitea#28037) Update github.com/cloudflare/circl (go-gitea#28789) Move more functions to db.Find (go-gitea#28419) Add non-JS fallback for reaction tooltips (go-gitea#28785) Modernize merge button (go-gitea#28140) Warn that `DISABLE_QUERY_AUTH_TOKEN` is false only if it's explicitly defined (go-gitea#28783) Speed up loading the dashboard on mysql/mariadb (go-gitea#28546) Fix schedule tasks bugs (go-gitea#28691) ...
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [docker.io/gitea/gitea](https://github.com/go-gitea/gitea) | patch | `1.21.3` -> `1.21.4` | --- ### Release Notes <details> <summary>go-gitea/gitea (docker.io/gitea/gitea)</summary> ### [`v1.21.4`](https://github.com/go-gitea/gitea/releases/tag/v1.21.4) [Compare Source](go-gitea/gitea@v1.21.3...v1.21.4) - SECURITY - Update github.com/cloudflare/circl ([#​28789](go-gitea/gitea#28789)) ([#​28790](go-gitea/gitea#28790)) - Require token for GET subscription endpoint ([#​28765](go-gitea/gitea#28765)) ([#​28768](go-gitea/gitea#28768)) - BUGFIXES - Use refname:strip-2 instead of refname:short when syncing tags ([#​28797](go-gitea/gitea#28797)) ([#​28811](go-gitea/gitea#28811)) - Fix links in issue card ([#​28806](go-gitea/gitea#28806)) ([#​28807](go-gitea/gitea#28807)) - Fix nil pointer panic when exec some gitea cli command ([#​28791](go-gitea/gitea#28791)) ([#​28795](go-gitea/gitea#28795)) - Require token for GET subscription endpoint ([#​28765](go-gitea/gitea#28765)) ([#​28778](go-gitea/gitea#28778)) - Fix button size in "attached header right" ([#​28770](go-gitea/gitea#28770)) ([#​28774](go-gitea/gitea#28774)) - Fix `convert.ToTeams` on empty input ([#​28426](go-gitea/gitea#28426)) ([#​28767](go-gitea/gitea#28767)) - Hide code related setting options in repository when code unit is disabled ([#​28631](go-gitea/gitea#28631)) ([#​28749](go-gitea/gitea#28749)) - Fix incorrect URL for "Reference in New Issue" ([#​28716](go-gitea/gitea#28716)) ([#​28723](go-gitea/gitea#28723)) - Fix panic when parsing empty pgsql host ([#​28708](go-gitea/gitea#28708)) ([#​28709](go-gitea/gitea#28709)) - Upgrade xorm to new version which supported update join for all supported databases ([#​28590](go-gitea/gitea#28590)) ([#​28668](go-gitea/gitea#28668)) - Fix alpine package files are not rebuilt ([#​28638](go-gitea/gitea#28638)) ([#​28665](go-gitea/gitea#28665)) - Avoid cycle-redirecting user/login page ([#​28636](go-gitea/gitea#28636)) ([#​28658](go-gitea/gitea#28658)) - Fix empty ref for cron workflow runs ([#​28640](go-gitea/gitea#28640)) ([#​28647](go-gitea/gitea#28647)) - Remove unnecessary syncbranchToDB with tests ([#​28624](go-gitea/gitea#28624)) ([#​28629](go-gitea/gitea#28629)) - Use known issue IID to generate new PR index number when migrating from GitLab ([#​28616](go-gitea/gitea#28616)) ([#​28618](go-gitea/gitea#28618)) - Fix flex container width ([#​28603](go-gitea/gitea#28603)) ([#​28605](go-gitea/gitea#28605)) - Fix the scroll behavior for emoji/mention list ([#​28597](go-gitea/gitea#28597)) ([#​28601](go-gitea/gitea#28601)) - Fix wrong due date rendering in issue list page ([#​28588](go-gitea/gitea#28588)) ([#​28591](go-gitea/gitea#28591)) - Fix `status_check_contexts` matching bug ([#​28582](go-gitea/gitea#28582)) ([#​28589](go-gitea/gitea#28589)) - Fix 500 error of searching commits ([#​28576](go-gitea/gitea#28576)) ([#​28579](go-gitea/gitea#28579)) - Use information from previous blame parts ([#​28572](go-gitea/gitea#28572)) ([#​28577](go-gitea/gitea#28577)) - Update mermaid for 1.21 ([#​28571](go-gitea/gitea#28571)) - Fix 405 method not allowed CORS / OIDC ([#​28583](go-gitea/gitea#28583)) ([#​28586](go-gitea/gitea#28586)) ([#​28587](go-gitea/gitea#28587)) ([#​28611](go-gitea/gitea#28611)) - Fix `GetCommitStatuses` ([#​28787](go-gitea/gitea#28787)) ([#​28804](go-gitea/gitea#28804)) - Forbid removing the last admin user ([#​28337](go-gitea/gitea#28337)) ([#​28793](go-gitea/gitea#28793)) - Fix schedule tasks bugs ([#​28691](go-gitea/gitea#28691)) ([#​28780](go-gitea/gitea#28780)) - Fix issue dependencies ([#​27736](go-gitea/gitea#27736)) ([#​28776](go-gitea/gitea#28776)) - Fix system webhooks API bug ([#​28531](go-gitea/gitea#28531)) ([#​28666](go-gitea/gitea#28666)) - Fix when private user following user, private user will not be counted in his own view ([#​28037](go-gitea/gitea#28037)) ([#​28792](go-gitea/gitea#28792)) - Render code block in activity tab ([#​28816](go-gitea/gitea#28816)) ([#​28818](go-gitea/gitea#28818)) - ENHANCEMENTS - Rework markup link rendering ([#​26745](go-gitea/gitea#26745)) ([#​28803](go-gitea/gitea#28803)) - Modernize merge button ([#​28140](go-gitea/gitea#28140)) ([#​28786](go-gitea/gitea#28786)) - Speed up loading the dashboard on mysql/mariadb ([#​28546](go-gitea/gitea#28546)) ([#​28784](go-gitea/gitea#28784)) - Assign pull request to project during creation ([#​28227](go-gitea/gitea#28227)) ([#​28775](go-gitea/gitea#28775)) - Show description as tooltip instead of title for labels ([#​28754](go-gitea/gitea#28754)) ([#​28766](go-gitea/gitea#28766)) - Make template `DateTime` show proper tooltip ([#​28677](go-gitea/gitea#28677)) ([#​28683](go-gitea/gitea#28683)) - Switch destination directory for apt signing keys ([#​28639](go-gitea/gitea#28639)) ([#​28642](go-gitea/gitea#28642)) - Include heap pprof in diagnosis report to help debugging memory leaks ([#​28596](go-gitea/gitea#28596)) ([#​28599](go-gitea/gitea#28599)) - DOCS - Suggest to use Type=simple for systemd service ([#​28717](go-gitea/gitea#28717)) ([#​28722](go-gitea/gitea#28722)) - Extend description for ARTIFACT_RETENTION_DAYS ([#​28626](go-gitea/gitea#28626)) ([#​28630](go-gitea/gitea#28630)) - MISC - Add -F to commit search to treat keywords as strings ([#​28744](go-gitea/gitea#28744)) ([#​28748](go-gitea/gitea#28748)) - Add download attribute to release attachments ([#​28739](go-gitea/gitea#28739)) ([#​28740](go-gitea/gitea#28740)) - Concatenate error in `checkIfPRContentChanged` ([#​28731](go-gitea/gitea#28731)) ([#​28737](go-gitea/gitea#28737)) - Improve 1.21 document for Database Preparation ([#​28643](go-gitea/gitea#28643)) ([#​28644](go-gitea/gitea#28644)) Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window. </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMzIuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEzMi4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Reviewed-on: https://git.home/nrdufour/home-ops/pulls/316 Co-authored-by: Renovate <renovate@ptinem.io> Co-committed-by: Renovate <renovate@ptinem.io>
Fix go-gitea#28157 This PR fix the possible bugs about actions schedule. ## The Changes - Move `UpdateRepositoryUnit` and `SetRepoDefaultBranch` from models to service layer - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when actions unit has been disabled or global disabled. - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when default branch changed.
…t ref name (go-gitea#28874) Fix go-gitea#28533 Caused by go-gitea#28691
…t ref name (go-gitea#28874) Fix go-gitea#28533 Caused by go-gitea#28691
In #28691, schedule plans will be deleted when a repo's actions unit is disabled. But when the unit is enabled, the schedule plans won't be created again. This PR fixes the bug. The schedule plans will be created again when the actions unit is re-enabled
In go-gitea#28691, schedule plans will be deleted when a repo's actions unit is disabled. But when the unit is enabled, the schedule plans won't be created again. This PR fixes the bug. The schedule plans will be created again when the actions unit is re-enabled
Backport #28942 by @Zettat123 In #28691, schedule plans will be deleted when a repo's actions unit is disabled. But when the unit is enabled, the schedule plans won't be created again. This PR fixes the bug. The schedule plans will be created again when the actions unit is re-enabled --------- Co-authored-by: Zettat123 <zettat123@gmail.com> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Fix go-gitea#28157 This PR fix the possible bugs about actions schedule. ## The Changes - Move `UpdateRepositoryUnit` and `SetRepoDefaultBranch` from models to service layer - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when actions unit has been disabled or global disabled. - Remove schedules plan from database and cancel waiting & running schedules tasks in this repository when default branch changed.
…t ref name (go-gitea#28874) Fix go-gitea#28533 Caused by go-gitea#28691
In go-gitea#28691, schedule plans will be deleted when a repo's actions unit is disabled. But when the unit is enabled, the schedule plans won't be created again. This PR fixes the bug. The schedule plans will be created again when the actions unit is re-enabled
This reverts commit 97292da. (cherry picked from commit 83e5eba0311dc601518fb1a07a7e8538e573a837) (cherry picked from commit f6ef8f3819b5990858b0997cac72af000a3f3e3a) Conflicts: services/repository/setting.go
This function is now being used elsewhere and cannot be reverted. Only the part that was modified in addition to being moved is deleted. (cherry picked from commit 72954836a492f552ccc03250ba560951eedc199d) (cherry picked from commit 86f4d1871e5605c1592cb83b178f8ebe69ccdfa8) (cherry picked from commit 8089076ee2434a5f8b0abc11c0c06b5425fb7c14)
Fix #28157
This PR fix the possible bugs about actions schedule.
The Changes
UpdateRepositoryUnit
andSetRepoDefaultBranch
from models to service layer