google / syzkaller

syzkaller is an unsupervised coverage-guided kernel fuzzer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

.github/workflows/ci.yml: improvements

tarasmadan opened this issue · comments

Is your feature request related to a problem? Please describe.
Arc v2 based ci runners configuration may be better.

Describe the solution you'd like

  1. GCP autoscaling doesn't work. Let's monitor actions/runner-container-hooks#140 progress.
  2. The runners scale down to 0. Setting minRunners to 4-6-8 we can save 30 seconds for every job.
  3. Force-push creates new testing request. We don't cancel already started requests for that PR. It makes sense to cancel them. GH documentation knows how to do it.
  4. [Done, #4537 ] We don't limit the runners count. Having more runners than instances may be the source of timeout-error. It makes sense to fix maxRunners.
  5. The caching doesn't work. Effective cache size is 0.
  6. [Done, it seems to be a spot VMs usage side effect] Some jobs finish with 130 error.
  7. [Done, #4558] CodeCov requires additional configuration. It doesn't properly detect "Github Actions" environment.

#4537 surprisingly limited amount of runners/machine to 1.

Removed spot machines pool. Added normal machines.
As a result, I don't see the jobs to fail with 130 error.
With high probability 130 error was a preemption side affect.
To use spot VMs, ARC has to restart the job in case of error.
We can modify ci.yml to restart jobs, but I don't want to pollute the ci.yml file.

One more problem - codecov detects "Local" environment instead of "Github Actions".
Normal log "['info'] Detected GitHub Actions as the CI provider."
Current log "['info'] Detected Local as the CI provider."

#4558 to workaround codecov problem.