Skip to content
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

[Discuss] CI Jobs for macOS, msvc and msys2 #14598

Closed
1 task done
lupyuen opened this issue Nov 1, 2024 · 3 comments · Fixed by #14602 or apache/nuttx-apps#2813
Closed
1 task done

[Discuss] CI Jobs for macOS, msvc and msys2 #14598

lupyuen opened this issue Nov 1, 2024 · 3 comments · Fixed by #14602 or apache/nuttx-apps#2813
Assignees
Labels
Type: Enhancement New feature or request

Comments

@lupyuen
Copy link
Member

lupyuen commented Nov 1, 2024

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

msvc build is broken. @xiaoxiang781216 has a suggestion:

  • Enable One CI Job from each of macOS, msvc and msys2
  • Which might prevent breakage of macOS / msvc / msys2 after merging
  • If we don't have sufficient quota for macOS and Windows Jobs, we should reduce the Linux Arm32 Jobs

Describe the solution you'd like

I did some analysis of the msvc breakage:

But I shall still enable the Windows Builds and monitor the cost. Here's my computation:

  • ASF has allocated a quota of 25 Full-Time Runners per week, we are using about 12 right now.
  • Based on the Job Runtimes: https://github.com/NuttX/nuttx/actions/runs/11630100298/usage
  • We estimate that msvc + msys2 will cost us 60 mins of GitHub Runner Minutes (Windows Runners cost twice as much as Linux Runners)
  • So we might be OK to enable msvc + msys2 Builds
  • But I will still shut them down if they overrun our quota

Sorry I can't enable macOS Builds right now:

But can we still prevent breakage of Linux / macOS / msvc / msys2 Builds?

  • Nope this is simply impossible. In the good old days: We were using far too many GitHub Runners. This is not sustainable, we don't have the budget to run all the CI Checks we used to.
  • So we should expect some breakage to happen. We have to be prepared to backtrack and figure out which PR broke the build.
  • That's why we have tools like the NuttX Dashboard, to detect breakage earlier without depending on GitHub CI.
  • Also we should show some love and respect to NuttX Devs: Previously they waited 2.5 hours for All CI Checks. Now they wait at most 1.5 hours, I think we should stick to this.

Describe alternatives you've considered

No response

Verification

  • I have verified before submitting the report.
@lupyuen lupyuen added the Type: Enhancement New feature or request label Nov 1, 2024
@lupyuen lupyuen self-assigned this Nov 1, 2024
lupyuen added a commit to lupyuen2/wip-nuttx-apps that referenced this issue Nov 2, 2024
… PRs

This PR enables the CI Builds for msys2, msvc, arm-08, arm-10, arm-13 for Complex PRs. We disable the CI Builds for arm-01, arm-09, arm-11.

This will help to fix the recent breakage of builds: apache/nuttx#14598
lupyuen added a commit to lupyuen2/wip-nuttx that referenced this issue Nov 2, 2024
… PRs

This PR enables the CI Builds for msys2, msvc, arm-08, arm-10, arm-13 for Complex PRs. We disable the CI Builds for arm-01, arm-09, arm-11.

This will help to fix the recent breakage of builds: apache#14598
@lupyuen
Copy link
Member Author

lupyuen commented Nov 2, 2024

NuttX Dashboard shows these broken builds, enabling the arm-08, arm-10, arm-13 builds will help:

@xiaoxiang781216
Copy link
Contributor

@lupyuen the plan is good to enable msvc and msys2, but disable macOS since macOS consume a lot of quota.

@lupyuen
Copy link
Member Author

lupyuen commented Nov 2, 2024

Yep fully agree, macOS Builds will only run in our Mirror Repo. So they won't be charged to NuttX. Thanks!

acassis pushed a commit that referenced this issue Nov 2, 2024
… PRs

This PR enables the CI Builds for msys2, msvc, arm-08, arm-10, arm-13 for Complex PRs. We disable the CI Builds for arm-01, arm-09, arm-11.

This will help to fix the recent breakage of builds: #14598
lupyuen added a commit to apache/nuttx-apps that referenced this issue Nov 2, 2024
… PRs

This PR enables the CI Builds for msys2, msvc, arm-08, arm-10, arm-13 for Complex PRs. We disable the CI Builds for arm-01, arm-09, arm-11.

This will help to fix the recent breakage of builds: apache/nuttx#14598
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Enhancement New feature or request
Projects
None yet
2 participants