-
Notifications
You must be signed in to change notification settings - Fork 52
[test] Add a github workflow for building and testing on ubuntu #13
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
Conversation
marques-bruno
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is awesome @jnbrunet !
I guess all the paths pointing to your fork will be pointing to sofa-framework before merging?
For having tried once something similar, you must have spent quite some time setting this up, with SOFA & pybind11 caching, ccache & artifacts everywhere, well done!
| - name: Set up Python 3.7 | ||
| uses: actions/setup-python@v2 | ||
| with: | ||
| python-version: '3.7' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this where do you download the dev pacakges for libpython3.7? I'm not sure I remember how those actions are working and where they're located
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This action is used because many python versions are pre-installed on the runners. It remove us the burden of setting cmake python's path and runtime python's path manually. We could even use this to pass different python versions in the CI matrix (3.6, 3.7, 3.8 for example). In fact, it would be awesome to have a matrix like:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python: [3.6, 3.7, 3.8]
pybind11: [2.4, 2.5]Especially given that with ccache hits, each build takes about 2-3 min, which means the complete matrix wouldn't take too much time to build and test.
|
Hey @marques-bruno , The paths to my fork to get the nightly SOFA build binaries will remain until we get a proper way to get them (I think @guparan is working on this). For now, I don't mind having a Github workflow on my SOFA fork doing these nightly builds every night. The checkout branch (jnbrunet/install_tests) will be removed once #12 is merged. So we should not merge this PR before #12. |
|
Oh man it's so nice to see checks on this repository :D |
Probably :-P I'm not sure how to define messages in status checks but I'll have a look. But before that I'll try to add the CI for MacOS and maybe another version of pybind11 as I think it is important that we are sure the plugin is compiling on different setups (to avoid problems like your team had this week). After that we could spend some time to add some sugar on that CI :-) |
There it is, first GitHub action workflow. Only Ubuntu 18.04 for now.
This is fetching SOFA binaries from a Github action on my SOFA fork. I'll change it once we get an official way to get the master branch installation binaries.