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
Make babbelsim testing more easily available outside of CI #20366
Comments
we should not be having special build configurations in CI like this. |
The way you present this is hardly fair, and certainly misleading. This was discussed very long ago, when this tests where added. As discussed at that point:
I hope that you understand that this tools are needed in the BT development side. I can understand that those who do not care about BT, preferred to not need to bother spending any time fetching or being aware of it, just keeping it out of sight. But then, we ended up in the current situation. Where sometimes you will break something for the BT side, and you will be frustated. I'm happy to improve things for users, and make it easier for them to fetch it and use it, but this is not a bug, and it is as it was agreed at that time. If anything this is an enhancement, maybe of high priority but an enhancement. And given that we are so close to 2.1 freeze, not something we can manage for 2.1 |
what exactly is not fair? I know this was discussed long ago, but we should reevaluate and reassess and make things simpler. I had to deal with all of this yesterday and it is certainly not easy to reproduce something that fails with sanitycheck/babblesim and in my case, I know the background and I know where to look. Sure, we can make this an enhancement, I was not asking for this to be fixed in 2.1. |
@aescolar @galak Is there any specific reason why BabbleSim is not part of the Zephyr SDK? If there isn't, I suppose we could add it to https://github.com/zephyrproject-rtos/sdk-ng so that it just works out of the box as long as you use the Zephyr SDK. |
@stephanosio We could, there is 2 parts to this. One is the simulator basic components and 2.4GHz Phy which are very stable. So they can easily be part of the SDK (if people does not mind getting some more stuff). |
This:
It is available locally if you just install it. BabbleSim is open source (Apache2) and free. It is maintained and working. Last time I tried it, it could be fetched, compiled, and run just fine in RedHat 5 (meaning in an "ancient" distro)
Ok, let's then try to understand why it is not straight forward. Both you and @stephanosio have just installed. What hurdles did you find? Was the fetching and building documentation enough? If just install it in, say /opt/ , and add the 2 env variables to bashrc (or zephyrrc) you are done, and everything works from there on. (Worst case, every few months you get a compile error with exact instructions on how to update the HW models) |
Come on, this same statement can be said about anything that we have in the SDK for example, why do we bother putting things in the SDK? We could tell people to go build compilers and other tools following this model. This might be easy to install for an experienced user 1 time, but how do you keep this part of local development without having to deal with various environment options and manual version checks and so on? This might work fine in CI, but if we are to do make this part of the development workflow, it needs to get easier and be better integrated with development tools such as sanitycheck and west etc, so as it is now, nobody should know about how to deal with this directly, it should just work. |
I think this is now available to everyone using the dokcker image which can be run and used by anyone. |
Right now we do some special testing using babbelsim that is not available to users running sanitycheck locally. This can be disruptive when something fails in CI but can't be reproduced locally on the developer system. Add to that the fact that the setup of nrf52_bsim is not straightforward.
We should make this available through to anyone running sanitycheck and we should be able to whatever happens in CI on any machine where development happens.
We should look into pull the babbelsim code into the west manifest and make it available to sanitycheck in any local build and remove the special handling from the CI docker image.
The text was updated successfully, but these errors were encountered: