-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[FEATURE] Bot that identifies Build Errors in the CI Logs #13827
Comments
@lupyuen I think sometimes the download fails for random network instability. Maybe just adding an way to retry could fix the issue. |
@acassis Yep great idea! I think we need a privileged account to retry the build, I won't think we should run bots with privileged accounts though 🤔 |
Wonder if this will work: Instead of a Bot, we add a Job to our CI, that will watch for Timeout Errors and retry the Failed Job: https://stackoverflow.com/a/78314483 name: Retry workflow
on:
workflow_dispatch:
inputs:
run_id:
required: true
jobs:
rerun:
runs-on: ubuntu-latest
steps:
- name: rerun ${{ inputs.run_id }}
env:
GH_REPO: ${{ github.repository }}
GH_TOKEN: ${{ github.token }}
run: |
## TODO: Check for timeout errors
gh run watch ${{ inputs.run_id }} > /dev/null 2>&1
gh run rerun ${{ inputs.run_id }} --failed |
perhaps more simply this might help |
Any idea which script is calling Update: Wonder if it's because we changed |
@simbit18 Here are 2 curl errors from today:
https://github.com/apache/nuttx/actions/runs/11226642457/job/31210068982
Update: One more from nuttx-apps, but it looks like a git error: https://github.com/apache/nuttx-apps/actions/runs/11226739564/job/31207828223
Another one from my repo (is it caused by curl?): https://github.com/lupyuen5/label-nuttx-apps/actions/runs/11230244326/job/31217304232
|
This https://github.com/apache/nuttx/actions/runs/11229551377/job/31215370724 is for opensbi.tar.gz on nuttx-apps adding the -S option will avoid problems with esp-hal-3rdparty.git PR #13301 I think it is necessary to use the same logic with repeated packages that use curl |
Is your feature request related to a problem? Please describe.
Right now we spend a lot of time scanning the CI Build Logs to figure out why the build failed: Sample Log for arm-05
What if our PR Bot could scan the CI Build Logs, identify the error and post as a PR Comment?
Describe the solution you'd like
How To Identify Errors
Our Bot will do this with
diff
, the Conventional Non-AI Way:arm-05
Build Log. Our Bot will search the CI Build Logs, to find the Last Successful Merge Build ofarm-05
: Last Successful arm-05 Logdiff
, to Compare the Failed Build with the Last Successful BuildCMake Error
, then post it as a PR CommentOptional: Explain the Error with LLM
This is totally optional: Our Bot could pass the error to an LLM and explain it...
LLM Prompt
What's failing in this NuttX Job for Continuous Integration? Please explain concisely
Response from Gemini Pro 1.5
The CI job is failing because it's timing out while trying to download the mynewt-nimble source code from GitHub. This is likely due to a temporary network issue or GitHub server being overloaded.
Concisely: The CI job can't download the required mynewt-nimble source code due to a connection timeout.
Describe alternatives you've considered
No response
Verification
The text was updated successfully, but these errors were encountered: