CI: optimize
- Dominant language
- C
- Stars
- 4k
- Forks
- 1.7k
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 237
Description
I've opened this to track ideas about ways to improve use of CI, as well as current problems.
Ideas:
- [x] split large "other.dat" testlist: done in https://github.com/apache/incubator-nuttx-testing/pull/92 (needs merge and accompanying changes in nuttx/apps)
- [ ] don't run build on draft PR (only check): we can make the build workflow fail if the PR is a draft and re-trigger it when it is marked as ready for review. A draft PR will most likely be pushed again soon so no point in wasting build slots.
- [ ] require check pass to build: the only thing keeping us from doing this is some allowed coding style violations. Maybe we can make nxstyle aware of exceptions using some syntax in PR description / commit message picked up by workflow? Something like adding "nxstyle ignore: " where each list item is a :, with the identifying a given nxstyle check.
- [x] test only very minimal macOS builds: runs take twice as much as in Linux
- [ ] use ccache per build/config, persisting across workflow runs. would this require too much storage?
- [x] join related sim configs: sim on macOS takes 1hr and some related tests can be joined(done in https://github.com/apache/incubator-nuttx-testing/pull/94)
- [x] ~~enable docker on macOS like Unbuntu to save the setup cost(4min)~~ docker is not supported on macos
Contributor guide
Assessment
This issue has not been assessed yet.