cakephp / phinx

PHP Database Migrations for Everyone
https://phinx.org
MIT License
4.45k stars 895 forks source link

Run test suite on regular cron interval #2278

Closed MasterOdin closed 3 months ago

MasterOdin commented 3 months ago

Right now the test suite is only run for new commits. However, between new commits, new database versions can be released that could then show up broken weeks later on the new commit. We should be more proactive in seeing these errors so that we can make appropriate issues and patch the CI until whatever broke in the latest DB version is addressed.

See #2277 as an example where our workflow broke around 04/30/2024 (when MySQL 8.4 was released), but didn't notice until today (05/20/2024) as was working on something unrelated.

dereuromark commented 3 months ago

We could add it to https://toolbox.dereuromark.de/packages Then it could be auto triggered as cron.

MasterOdin commented 3 months ago

My initial thought on implementation would be to just use the schedule workflow trigger to accomplish this, though the way it does notifications certainly leaves something to be desired.

With the dashboard, how would notification of failures be done, or is it just needed to watch the toolbox page?

dereuromark commented 3 months ago

The dashboard is a simple Cake app you can have access to We could easily build a notification feature into it.

As for the schedule trigger, that's usually a bad idea. It is very badly implemented on GitHub side, which auto deactivation after a certain period. Then only an admin can reactivate it in the backend (most of us are not, including me). Since this repo isn't too active this will definitely happen a lot, with CI being completely unusable even for PRs and manual builds until reactivation is done. So for me a nogo, and a reason I only use my API-based dashboard solution for all my repos.

dereuromark commented 3 months ago

I added it now as https://toolbox.dereuromark.de/packages/view/22 Lets see if we have a running CI the next 48 hours automatically.

dereuromark commented 3 months ago

https://github.com/cakephp/phinx/actions works :)