-
-
Notifications
You must be signed in to change notification settings - Fork 31
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 for other platforms (Mac, more Unixes, Windows, mobile, ARM...) #117
Comments
trying to wrap my head around this issue in my opinion, the CI/CD tool preference heavily depends on the choice of underlying git infrastructure, as that's where it all hooks up so, as a first step, I'd question the basic git repository hosting and then what kind of CI setup is needed are the LNP-BP projects going to stay on github or are there plans to move them elsewhere (e.g. gitlab.com, self-hosted, etc.)? |
With the current release deadlines we just have no options for doing any kind of migration for now, so we need this actions to run in order to get wallet and exchange devs starting integrating and making sure the code does build on all required platforms. It is done very simply by adding more build targes with As for long-term perspective, RGB gives a way to design decentralized GitHub collaborating tool (PRs, issues) with it's recent "public state extensions" advancement; we briefly discussed with @giacomozucco the general approach to that. Combined with Prometheus it gives a way for having decentralized CI (and with Storm, for storing large BLOBs and repos). But it will take time to develop (my company, Pandora Core, is looking into that, but we are very opened to having a joint venture or child company dedicated to this project if anyone is interested) In the mid-term, after the first release, we will be happy to have a GitLab self-hosted thing; but the problem with that is the fact that we need GitHub for network effect, not the code storage, so in self-hosted world there will be much harder to attract more collaborators on the project. So it will be rather a mirror for a worst-case scenario of GitHub censorhip. |
had a look at the current CI build workflow, adding missing architectures (macos, arm linux and windows) to the matrix strategy
talking about build failures, with the matrix getting bigger it might make sense to switch to as I see it, macos can be added right away, while arm and windows require some discussion I can open a PR to add macos and possibly change fail-fast to false, what are your thoughts? |
Of course you are welcome to open a PR. Replying to your questions:
We can start with what we can and add more targets later (i.e. no windows/ARM in the first version) BTW re ARM we already have builds happening within the scope of RGB SDK https://github.com/LNP-BP/rgb-sdk, @zoedberg knows how to make LNP/BP Core lib to compile on Android and iOS :) |
just a couple clarifications:
self-hosted runners are only required for arm linux
|
|
self-hosted runners are required to run the workflows on ARM hardware if the goal is to make sure that builds run fine for android and ios, cross-building from a standard hosted runner should be enough in my opinion and I can add it |
@dieeasy yes, the goal is that. Will appreciate PR. Also, had a thought about platform matrix. We do not need actually to test each feature on each platform. The idea with the testing features one by one separately is that we make sure that the project builds. For platform testing we need just to use --all-features and make sure that all dependencies build. So we can have two one-dimensional matrixes instead of one two-dimensional and reduce number of parallel builds by the square root |
after some discussion, here's an updated view on the issue, for future reference
|
with PR #141 merged I think we can now close this |
No description provided.
The text was updated successfully, but these errors were encountered: