dedis / onet

Overlay Network for distributed protocols
GNU Lesser General Public License v3.0
50 stars 29 forks source link

integration test of mininet #577

Open jeffallen opened 4 years ago

jeffallen commented 4 years ago

Joao commented to me that "it's too bad that often when I come back to using mininet after several months it doesn't work, is that a feature of onet you guys support?"

I told him yes, it is supported, but no, it's not well tested because of the difficulty of reserving servers to test on. He told me that now servers can be reserved instantaneously, which means that we could include a mininet integration test in Jenkins that runs once a day or something.

This issue tracks doing something better than "hope it works" testing for mininet platform testing.

JoaoAndreSa commented 4 years ago

Not sure I should add this here or in a different issue, but here it goes... Currently there is a permission bug when deploying onet. If we use go.mod as is I get an error like Permission denied start.py(it basically cannot execute this file)

If I add a replace directive in the go.mod to use my local version of onet it works fine. Hope this is enough to identify/fix the bug.

JoaoAndreSa commented 4 years ago

Another probably more import issue kind of associated with this one. Currently mininet only works for linux version 16.0.4 LTS which is slowly getting deprecated. Is it possible to update this for Bionic 18.0. or even Mint 20.0? Is it also easy to adapt the code to work for other machines other than iccluster (amazon servers for example)? @cgrigis

ineiti commented 4 years ago

Let's shoot for the stars and try 20.04...

In the best case, all you need to do is to add a case here: https://github.com/dedis/onet/blob/master/simul/platform/mininet/install_mininet.sh

The following should work on all systems, but to be confirmed: https://github.com/dedis/onet/blob/master/simul/platform/mininet/setup_servers.sh

What I'm most afraid is a change of mininet version, which would need changes to: https://github.com/dedis/onet/blob/master/simul/platform/mininet/start.py

When testing, also make sure that it works with multiple servers. So start with one server, then if that works, test with 3 servers.

Eventually also update https://github.com/dedis/onet/blob/master/simul/platform/MININET.md - more specifically test that the %url-post-installation-script% entry still works.

ineiti commented 4 years ago

Currently there is a permission bug when deploying onet. If we use go.mod as is I get an error like Permission denied start.py(it basically cannot execute this file)

I think this has been fixed in the past.