-
Notifications
You must be signed in to change notification settings - Fork 245
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
.github/workflows/ci-sage.yml: New #1166
Conversation
I'm not talking for Fredrik, but I think it would be very beneficial for us to have a Sage CI. However, I believe we cannot have 100 runners as that would be eat up our runner capacity. Would it be possible to reduce this down to two-three runners only? And regarding NTL, it has basically not been touched in 8 years as well as not tested, so I would, unfortunately, presume that it is dead. |
In Sage, we do make use of the FLINT-NTL interface, so at least a part of it undergoes regular testing. |
Sure, the number of parallel runners used, as well as the tested system configurations, are of course configurable. |
What's the timescale of the jobs? Preferable they would be under 30 min, but I suppose that under one hour is also fine. Edit: I believe we can cache previous builds in order for the Sage actions to be faster. |
I am going to close this -- feel free to open it again. However, note that we do not have an unlimited number of workers available, hence I think we realistically can only take a total of 30 minutes worker time for this. |
I'll open a PR with an updated version that uses Sage's reusable workflows. |
Flint already struggles quite a lot with resources for CI. |
You probably mean "downstream". Sage is downstream of FLINT. And yes, with the reusable workflows it can be configured so that we use the prebuilt Docker images of Sage and only recompile the libraries that depend on FLINT. Resource use is easily regulated by simply deciding when to run the full portability tests. Obviously one does not want to run them on every PR. |
This is an updated version of the CI workflow previously contributed to one of the releases branches.
It reveals a number of portability issues:
ubuntu-bionic-standard
: https://github.com/wbhart/flint2/runs/7164118857?check_suite_focus=truecygwin
: https://github.com/wbhart/flint2/runs/7164118968?check_suite_focus=truemacos-homebrew
: https://github.com/wbhart/flint2/runs/7164115814?check_suite_focus=truearb 2.22.1 fails to build with this version of flint
(Some of the macOS builds fail for reasons unrelated to FLINT. I'll clean this up in a follow-up PR when we have done a corresponding update in Sage - https://trac.sagemath.org/ticket/32570)