apache / apache/nuttx

[FEATURE] Document CI workflows/build processes

Open
#18,489 9 comments 3 reactions 1 assignee Claimed by @linguini1 View on GitHub
Type: Enhancement
Dominant language
C
Stars
4k
Forks
1.7k
Avg merge
1d 17h
Merged PRs (30d)
237

Description

### Is your feature request related to a problem? Please describe.

The CI system is maintained by a few individuals who have special knowledge about it, but it puts a lot of strain on them when something goes wrong (resource spikes especially).

Documentation I could find on the system is only:
- https://nuttx.apache.org/docs/latest/testing/citests.html#

Ideally, having these docs will:
- Reduce workload on our excellent CI team so that other contributors can step in to fix problems
- Allow a base understanding of the CI so we can work towards reducing our resource consumption/streamlining our CI processes

### Describe the solution you'd like

It would be great to have some documentation about:
- The CI build process that executed on PRs (checkpatch, doc build and specifically system build)
- The custom CI tooling in `tools/ci`, what they do, options, how they work
- The format for `.dat` files used in CI builds, what they're specifying, how they're parsed, etc.
- Maintenance of the custom NuttX docker image
- Pitfalls of CI that the experts among us have learned

I know @lupyuen has a wealth of information on his own blogs, so we could maybe draw information from those posts and include them in our own NuttX documentation. This should make it easier for people to patch the CI/reduce Lup and simbit's workload.

### Describe alternatives you've considered

_No response_

### Verification

- [x] I have verified before submitting the report.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.