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

ci: Optimize build matrix #1046

Closed

Conversation

real-or-random
Copy link
Contributor

@real-or-random real-or-random commented Dec 20, 2021

  • Removes STATICPRECOMPUTATION from CI (left-over from Make signing table fully static #988)
  • Optimizes the Linux build matrix (more coverage with fewer jobs)
  • Trims down the MacOS build matrix: MacOS jobs take roughly 10x time as compared Linux jobs, so I think we should run only some basic tests. And anyway, they target gcc and clang for x86_64, which is covered by the Linux jobs already. (And they currently fail due to some homebrew server being down but that's a different issue...)

I'm working on a further PR that adds MSVCs build on native Windows. This will give us a real new dimension in the configuration space. And there's still the idea to build with multiple versions of gcc and clang.

@real-or-random
Copy link
Contributor Author

Added the commit "precompute_ecmult: Always compute all tables up to default WINDOW_G" to make sure the new CI check that the build does not modify the precomp files passed (introduced by bb36fe9).

@real-or-random
Copy link
Contributor Author

MacOS jobs take roughly 10x time as compared Linux jobs, so I think we should run only some basic tests. And anyway, they target gcc and clang for x86_64, which is covered by the Linux jobs already. (And they currently fail due to some homebrew server being down but that's a different issue...)

Oh I think the reason is that we never update brew (and the catalina image provided by Cirrus is old and deprecated). Since the brew binary URL has moved, it always needs to fall back to building deps (autotools) from source, which currently fails because gnu.org is down...

Let's see if a newer brew fixes this. Then I may reconsider the commit that trims the macOS matrix.

We're stuck to old macOS Catalina because valgrind doesn't work on the latest versions and even the unoffical fork we use does only support Catalina (LouisBrunner/valgrind-macos#19). Do you think we should stick to Catalina or move on (and drop Valgrind builds on macOS)?

@real-or-random real-or-random marked this pull request as draft December 20, 2021 14:54
@real-or-random real-or-random marked this pull request as ready for review December 20, 2021 16:31
@real-or-random real-or-random marked this pull request as draft December 20, 2021 16:32
@real-or-random
Copy link
Contributor Author

This is WIP.

I unmarked and marked again as draft trigger CI (which does not run on draft PRs...)

@real-or-random
Copy link
Contributor Author

Opened cirruslabs/macos-image-templates#41 to avoid adding brew update to every macOS task, which takes a few minutes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant