-
Notifications
You must be signed in to change notification settings - Fork 8
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
Improve code quality #48
Comments
Regarding modularization, the models on the backend and frontend are currently inconsistent, and I also think it's a good idea to separate components into 2(+) categories: host elements (end devices) and network elements (switch/routing devices) |
When building Gini using Scons, it's better if we structure each component the similar to the source code, as in it should be split into lib/frontend and lib/backend. This makes adding/removing python packages easier E.g: a python file can import another module using |
Rely on SDK instead of subprocess calls to manage docker (and ovs). Pox is already good to use
|
One thing to consider is to run gbuilder (and consequently, other components) as root, so we don't need to change a lot of the configurations (setuid bits, wiresharks, docker, etc) during installation. One obvious advantage of this is we can now run ovs-docker without having to create a netns directory and change ownership first. Since it's a bash script instead of a binary executable, setuid bit has zero effect. https://unix.stackexchange.com/questions/364/allow-setuid-on-shell-scripts |
It would be good if we can make Gini compatible with Python3, since support for version 2 will be dropped soon. Also, since the structure is quite complicated, we should improve the quality in terms of code commenting, modularization, following style guides, etc.
The text was updated successfully, but these errors were encountered: