microsoft / hummingbird

Hummingbird compiles trained ML models into tensor computation for faster inference.
MIT License
3.32k stars 274 forks source link

[RFC] Periodically run CI pipeline #683

Closed mshr-h closed 1 year ago

mshr-h commented 1 year ago

... to be able to catch dependent package updates sooner.

Sometimes the CI pipeline breaks due to dependent package updates. #592 #667 This is especially a problem for new contributors.

By running GH Actions build workflow periodically(such as daily/weekly), we can catch those breakages sooner.

The downside is notifications will be annoying.

What do you think? @ksaur @interesaaat

ksaur commented 1 year ago

Absolutely, good idea. This is something we talked about in the past, but I think we should actually do it now. :-D

We find that lots of new releases happen on Fridays, and I usually have some time Friday afternoons (PST) to fix things, so maybe we could setup a Friday mid-day run. I think we just need to add this? Any objections Matteo?

interesaaat commented 1 year ago

No objection, this is a really good idea. Even better if we could add some sort of condition, like run on Friday afternoon if we have no previous run this week (or something along this line).

ksaur commented 1 year ago

I can work on implementing this on Friday, or if someone else wants to start, that is fine as well! :)

mshr-h commented 1 year ago

I think we just need to add this?

Or we can use a schedule trigger event. https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule

mshr-h commented 1 year ago

We can retrieve the start time of the last workflow by the command below.

$ curl https://api.github.com/repos/microsoft/hummingbird/actions/workflows/pythonapp.yml/runs 2>/dev/null | jq -r '.workflow_runs[0].run_started_at'
2023-02-06T18:40:27Z

Or maybe we can use this. https://github.com/actions/github-script