-
-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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
Move most CI builds away from Cirrus #11771
Conversation
Cirrus is reducing their free tier to next to nothing, so we must move builds elsewhere.
Cirrus' new free tier won't let us have many builds, so drop the nonessential ones. The FreeBSD 13.X build will still give us the most relevant FreeBSD coverage.
If we don't do this, all coverage on Cirrus will cease in a few days. By removing the Windows builds, the FreeBSD one should still continue as before. The Windows builds will need be moved to another service to maintain test coverage. Closes #11771
f62acfd
to
27c2456
Compare
The libressl build failure looks legit. There are |
macOS older versions used libressl, yes. |
Don't they still build their curl versions to use libressl? But if this is a link problem, why does it only happen in a few tests? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work!
As of 12.x Monterey, macOS ships with LibreSSL and builds curl with it:
AFAIK this continues with Ventura. |
Yep @vszakats
|
These errors are happening at run time, so I'm guessing those tests are the only ones that enter code paths that need those symbols. This would make sense if macOS is doing lazy symbol binding. The error message doesn't give the missing symbol name so it might not be a LibreSSL one, too; I recall a discussion a couple of months ago about accessing some functions on macOS using some kind of run-time determination. As the comment in the config file notes, a previous run of this test failed even harder during compilation with |
Cirrus is drastically reducing their free tier on Sept. 1, so they will no longer perform all these builds for us. One important note about this change is that Circle CI is currently directing all these builds to x86_64 hardware, despite them requesting ARM. This is because ARM nodes are scheduled to be available on the free tier only in December. This reduces our architectural diversity until then but it should automatically come back once those machines are enabled.
If we don't do this, all coverage on Cirrus will cease in a few days. By removing the Windows builds, the FreeBSD one should still continue as before. The Windows builds will need be moved to another service to maintain test coverage. Closes #11771
27c2456
to
ada7769
Compare
I wasn't able to reproduce this on a macOS box I have access to; LibreSSL from Brew worked just fine. I've just disabled the problematic tests until someone is able to figure it out. |
Disabling the failing tests on the LibreSSL build worked, but looking at the version output in the banner it appears that the system isn't even using LibreSSL at run-time but rather trying to use OpenSSL (the version banner says |
Looks like moving the macOS builds to CircleCI is unfortunate for forks. On every push to my fork, I'm now spammed with error e-mails from CirceCI because:
Do others also get that or am I doing something wrong? |
Hmm, https://discuss.circleci.com/t/macos-intel-support-deprecation-in-january-2024/48718 says that "Xcode 14.2 is the last supported version for Gen1". How does this work here at all? 😕 |
This comment was marked as off-topic.
This comment was marked as off-topic.
@vszakats if you're running into local build issues and not CI problems please open a new issue. @MarcelRaad I haven't been getting spammed by CircleCI, but I also know that there is an issue with the resource class. Their ARM machines aren't available to users in the free tier yet so it's been silently (from my perspective, anyway) replacing that with x86_64 machines. I didn't bother changing that because it seemed harmless and the whole reason for moving builds there was for ARM support, but if it's causing issues I'll change that to reflect reality and hopefully stop the spam. |
@dfandrich: I just run into this and felt relevant given that a similar issue was raised here that might be related. |
I just didn't want to lose a valid issue in the weeds of another one.
|
The ARM machines aren't ready for us and requesting them now causes warnings e-mails to be sent to some PR pushers. Ref: #11771
The ARM machines aren't ready for us and requesting them now causes warnings e-mails to be sent to some PR pushers. Ref: #11771
I've switched the Circle macOS builds to an x86 class where those things should not be issues. Please say something if you still get those warning e-mails. |
I can confirm that the builds on my fork run again, thanks Dan! |
If we don't do this, all coverage on Cirrus will cease in a few days. By removing the Windows builds, the FreeBSD one should still continue as before. The Windows builds will need be moved to another service to maintain test coverage. Closes curl#11771
The ARM machines aren't ready for us and requesting them now causes warnings e-mails to be sent to some PR pushers. Ref: curl#11771
Cirrus is drastically reducing their free tier on Sept. 1, so they will no
longer perform all these builds for us. Most builds are moved other services in
this PR, with some caveats:
Doing this should preserve the ability to continue to run a FreeBSD build on
Cirrus without disruption. I'm not aware of another CI service offering FreeBSD
builds (for free), so keeping it going is important for test coverage.