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

Add GH Actions portability / continuous integration workflow #331

Merged
merged 3 commits into from
Mar 23, 2021

Conversation

mkoeppe
Copy link
Contributor

@mkoeppe mkoeppe commented Mar 13, 2021

No description provided.

@ClementPernet
Copy link
Member

Hi,
Thanks for your proposed CI workflow with GH actions. It is a definitely a good idea to have an automated CI workflow of fflas-ffpack, givaro and/or linbox with respect sagemath usage. As I have barely no experience with GH action, I will not be able to provide an in-depth review of this PR, but I'm happy to merge it and let you manage it as you like (I can grant you developper rights on the repo if you want).
I am just wondering about the two following points:

  • I see a dependency wrt to the ubuntu package libgivaro-dev, but in the same time, also with a fresh build of givaro from master. I do not know which one will be used, but just wanted to warn you that we develop and release givaro and fflas-ffpack in close interaction, hence it is not likely that fflas-ffpack master will compile with ubuntu's libgivaro-dev, but rather with the latest release or even sometimes only master.
  • I see a build in sagemath is triggerred at each push on master. I hope the whole of sagemath will not be recompiled as it may be quite a waste of clock cylces.

@ClementPernet ClementPernet merged commit 3b53f8c into linbox-team:master Mar 23, 2021
@mkoeppe
Copy link
Contributor Author

mkoeppe commented Mar 23, 2021

Thanks for merging!

Could you tend to linbox-team/linbox#266 - which currently blocks the CI workflow.

  • I see a dependency wrt to the ubuntu package libgivaro-dev, but in the same time, also with a fresh build of givaro from master. I do not know which one will be used, but just wanted to warn you that we develop and release givaro and fflas-ffpack in close interaction, hence it is not likely that fflas-ffpack master will compile with ubuntu's libgivaro-dev, but rather with the latest release or even sometimes only master.

Thanks for catching this. I'll send a follow-up PR that will remove the (harmless) installation of this Ubuntu package - a leftover from a previous attempt.

  • I see a build in sagemath is triggerred at each push on master.

There are many ways to configure when the workflow is to be run. One possibility is to only run it on PRs and on pushing a tag. Let me know what you prefer and I can send a PR that changes the configuration.

I hope the whole of sagemath will not be recompiled as it may be quite a waste of clock cylces.

It is quite a heavy run because it runs the test on many platforms, but it does not compile the whole of sagemath. I have prepared a subset of the Sage python library in https://trac.sagemath.org/ticket/31444 called sagemath-linbox which tests the build of all modules that directly use givaro/fflas-ffpack/linbox. Right now this is used only for this CI workflow, but I have a plan for the modularization of the Sage library (https://trac.sagemath.org/ticket/29705) in which sagemath-linbox would evolve to a user-installable package.

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.

2 participants