apache / apache/nuttx

[FEATURE] NuttX Build Monitor

Open
#18,659 1 comment 1 reaction 0 assignees View on GitHub
Type: Enhancement
Dominant language
C
Stars
4k
Forks
1.7k
Avg merge
1d 17h
Merged PRs (30d)
237

Description

We have created a new tool: **NuttX Build Monitor** displays the recent **Errors and Warnings** for NuttX GitHub CI. Hopefully our devs will find it useful for monitoring our PRs. Also: NuttX CI Team will use this tool to understand what's happening right now in our GitHub CI...

Image

- NuttX Build Monitor: https://lupyuen.github.io/nuttx-github-jobs/build-monitor
- JSON Format: https://lupyuen.github.io/nuttx-github-jobs/build-monitor.json
- JSON for PR Status: https://lupyuen.github.io/nuttx-github-jobs/build-monitor-pr.json
- [Demo Video](https://youtu.be/K5ENnZkIiT4)
- [How We Made It](https://youtu.be/Rr75-gNJT1c)
- [Script to Dump GitHub Jobs and PRs](https://github.com/lupyuen/nuttx-github-jobs)
- [Script to Parse GitHub Build Logs](https://github.com/lupyuen/parse-nuttx-builds)
- [Script to Export the HTML and JSON for Build Monitor](https://github.com/lupyuen/export-nuttx-builds)

Please lemme know if you find it useful thanks! FYI @simbit18 :-)

## How to use the JSON Files

```bash
## Find this PR Number
pr_number=18730

## Return Everything Current about this PR Number
curl https://lupyuen.github.io/nuttx-github-jobs/build-monitor-pr.json \
| jq ".[] | select(.pr_number == $pr_number)"

## Return the Current Job Conclusion: success / failure / cancelled
curl https://lupyuen.github.io/nuttx-github-jobs/build-monitor-pr.json \
| jq ".[] | select(.pr_number == $pr_number) | .job_conclusion"

## Return Everything Historical about this PR Number
curl https://lupyuen.github.io/nuttx-github-jobs/build-monitor.json \
| jq ".[] | select(.pr_number == $pr_number)"

## Return all Errors / Warnings for this PR Number
curl https://lupyuen.github.io/nuttx-github-jobs/build-monitor.json \
| jq ".[] | select(.pr_number == $pr_number) | .build_msg"

## Return all Errors for this PR Number
curl https://lupyuen.github.io/nuttx-github-jobs/build-monitor.json \
| jq ".[] | select(.pr_number == $pr_number and .build_score == 0) | .build_msg"

## Return all Warnings for this PR Number
curl https://lupyuen.github.io/nuttx-github-jobs/build-monitor.json \
| jq ".[] | select(.pr_number == $pr_number and .build_score > 0) | .build_msg"
```

GitHub Pages has delays publishing huge JSON Files to `github.io`. You might wanna use these JSON Links instead:
- Build Monitor JSON: https://raw.githubusercontent.com/lupyuen/nuttx-github-jobs/refs/heads/main/build-monitor.json
- Build Monitor PR JSON: https://raw.githubusercontent.com/lupyuen/nuttx-github-jobs/refs/heads/main/build-monitor-pr.json
- Build Monitor HTML: https://raw.githubusercontent.com/lupyuen/nuttx-github-jobs/refs/heads/main/build-monitor.html

[(Source)](https://github.com/lupyuen/nuttx-github-jobs/blob/main/README.md)

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.