-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
macOS Sonoma (14) support / CI #20339
Comments
Reminder to myself to not forget to switch the packing job's "publish" flag from Monterey to Ventura in drake-ci: https://github.com/RobotLocomotion/drake-ci/blob/92bfabe99de6fcdd269b7aa654891ab0f8d4e214/driver/environment.cmake#L216 |
I suppose let's say that Drake v1.22.0 (ETA next Monday) will still keep Monterey on all fronts, so let's not actually ditch any Monterey jobs yet. After the release happens, we can start shutting things off. |
The release has been shipped, so you have a green light for turning off Monterey (on arm). |
The goal should be to finish the first three items (mac arm packaging builds, docs, and drake-external-examples) before the next release (mid-November). |
While working on the first bullet point, I noticed that the Mac "staging-packaging" jobs have never been run and are not mentioned in the release playbook. Should these jobs be removed? |
I can't say for certain without chasing down a few details first, but I'd guess that maybe @mwoehlke-kitware's work to do #18300 will end up needing them after all? |
I'll leave them for now! |
Yes, post-#18300, cutting releases will require packages built by staging jobs. |
@mwoehlke-kitware I may have made a mistake updating the jenkins yaml and deleted jobs you were using. If so, let us know and we can restore it or use the ventura flavor now possibly? After I made my change, linux-jammy-clang-bazel-continuous-everything-address-sanitizer and linux-jammy-clang-bazel-continuous-leak-sanitizer were showing up as never having been run before (right after I deployed jenkins)... Sorry :/ @jwnimmer-tri after switching the load balance between monterey and ventura jobs was mostly even, with the cache server health check job being the tie breaker. We went ahead and switched that over and are rebalancing to one monterey and two ventura runners. Posted an FYI in slack just in case we have issues. |
This is where we are currently at. I reached out to MacStadium to figure out if Sonoma is supported yet, it does not appear to be and I also get the impression we will need another orka upgrade first. While that may stall this ticket for a while, these are the last jobs on monterey arm being considered (
So, before we just switch them all to monterey blindly, do we know which ones we want to be sonoma long term? |
@svenevs, these are the staging packages we need:
AFAICT we still have jobs for all of those? (IIUC, the non-wheel Ubuntu jobs should both generate one each |
@mwoehlke-kitware staging now has mac-arm-ventura-unprovisioned-clang-wheel-staging-release instead of AFAICT you never staged any wheels for 0.99, staging artifacts end up here. So (next week it seems) if you could stage the rest of the jobs, then we'll have the artifacts needed for you and know if that's the only change that the unrelated work here broke for you 🤞 |
macOS ARM CI policy: (1) The "health check" can be whatever. I guess just a single macOS version? (2) The nightly packaging and nightly wheel builds only run on the oldest supported macOS version for the given architecture. (This is already up-to-date with Sonoma as of RobotLocomotion/drake-ci#252.) (3) The "release build from scratch" jobs (unprovisioned nightly) should be run on every supported macOS:
(4) The only thing in continuous should be the typical incremental release build, run on every supported macOS:
(5) The supplemental release-build nightlies (cmake, everything) should run on every supported macOS:
(6) The extra-testing nightlies (debug) should run on the same macOS as the packaging jobs, i.e., the oldest one:
If we end up over capacity, part (5) would be the one we could prune a bit. |
@jwnimmer-tri I went as closely to that as we could, given how the yaml is setup. It did resurface that there is a note in there saying we would prefer to run an asan job on mac-arm but do not currently. Something worth reconsidering. I have deleted all the monterey jobs as of those four PRs, both jenkins and https://github.com/RobotLocomotion/drake/tree/jenkins-jobs-experimental do not reveal any We seem to have a path forward with Sonoma, but it seems we may also need to schedule an orka update as well. Will continue tomorrow. |
Sonoma is alive in CI, not all configurations but a handful of jobs. The first two full builds:
There are new views, I'm going to launch the remaining ones and more results will come back in time (there is only one sonoma machine so that may take some time). Note: we should see if disk space is actually going to be a problem. May need to add some more experimental builds, but AFAICT we don't need to deal with The actual reason this is being tested is because
To be continued... |
I confirmed with Stephen that the orka setup is ready for us to create the remaining Sonoma jobs. Summarizing from above and the current Jenkins state, there are a few Sonoma jobs that still need to be created (in the list below, all jobs with a link exist in Jenkins). continuous nightly
experimental
experimental jobs with no continuous/nightly equivalent
|
The remaining non-production jobs (see previous comment) have been created in Jenkins. I will monitor these jobs for the next few days and then we can move them into production. |
Most of the nightly Sonoma jobs ran without issue. Several tests are failing on mac-arm-sonoma-clang-bazel-nightly-non-production-everything-address-sanitizer . |
Okay, executive decision -- drop all ASan builds on all macs. Moving forward, ASan in CI will be Ubuntu-only. |
Works for me! I will make the update in Jenkins. |
Sonoma jobs have been moved to production. The only item remaining is the doc update, opening a PR momentarily. |
Is your feature request related to a problem? Please describe.
Apple has released macOS Sonoma (14) a couple weeks ago. Drake should officially (https://drake.mit.edu/installation.html) support it, which means testing and CI coverage.
Describe the solution you'd like
Add Sonoma builds to CI, get them passing, elevate to Production, then update our docs & releases.
Since we only support the two most recent versions of macOS, that means (mostly) dropping Monterey. However, we'll leave alone macOS Monterey (12) x86 CI for now.
Tasks:
buildcop.md
). Should the be?mac-arm-sonoma-unprovisioned-clang-bazel-nightly-release
production job 🙈orka
backend:orka node tag/untag
, anddeploy
the ventura images.orka
backend: tag and deploy.The text was updated successfully, but these errors were encountered: