-
Notifications
You must be signed in to change notification settings - Fork 3
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 GHA workflow for Linux builds #20
Conversation
@gaborcsardi Well this project has not felt the love in a long time! I'm trying this right away. |
f663e11
to
73f308d
Compare
Add GHA tests
73f308d
to
b77004a
Compare
Haha, wait a bit, still fixing things up, hence the draft. :) |
Some questions and comments. While this PR focuses on Linux, it might break things on macOS and/or Windows. IMO not a big issue, because the macOS and Windows builds do not work very well currently, anyway, and I'll submit separate PRs for those soon. (Managed to build static libs for macOS already: https://github.com/gaborcsardi/homebrew-cran/releases) Is there a particular Linux distro you use for bigrquerystorage, or you think is important to support well? I'll add those to the build matrix. More soon. |
@meztez Another question. Is it important to use the latest grpc (& co.) (for you and/or for users) or we can use the stock packages in the distros? |
@meztez Assuming the Fedora-38 build [1] works as well (works for me locally), this is ready for review. [1] https://github.com/gaborcsardi/bigrquerystorage/actions/runs/7034431076/job/19142470084 |
I use Ubuntu LTS, usually the latest (right now, jammy). Windows builds but does not work, it fail in winsocket and I spent too much time in dbg and gave up. |
@meztez Sorry, I was commenting/editing comments, so you missed some: Another question. Is it important to use the latest grpc (& co.) (for you and/or for users) or we can use the stock packages in the distros? This PR probably breaks the build with hand-compiled grpc, as suggested by the README, I'll fix that. |
@gaborcsardi fixed the README, I'd rather use the distro packages if they are available. Tested it, works fine. Windows still broken. |
You are taking on quite an endeavour there. |
Well, for CRAN we'll need to compile grpc statically, if that's possible at all. (Should be, because I did it for macOS, although haven't tested that it actually works.) My hope is that if we compile it statically, with the compiler(s) CRAN uses, then we don't run into this issue. We'll see. I'll start that soon, let's finish macOS first. |
The goal of this is to be able to check the build on various Linux distros quickly, since it seems non-trivial to work out the exact packages needed.
It also fixes the build on the tested distros, using the stock packages from the distro.
Issues:
Dockerfile
s and the workflow as well, which we might DRY out at some point.In any case, while not ideal, it is useful as a workflow that you can trigger manually, I think. We can improve it later, as needed.