-
Notifications
You must be signed in to change notification settings - Fork 380
Cisco vIOS & vIOS-L2 #2902
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
Cisco vIOS & vIOS-L2 #2902
Conversation
|
I see that the default credentials are cisco/cisco instead of admin/admin as for other nodes. |
|
Also it sems all vrnetlab node kinds should probably have the file names starting with "vr" which you have for docs, but not for Go code. |
Good catch @tvarohohlavy! Will push a fix this evening |
|
VR prefix is not necessary anymore imo, artifact of the past... we migrated to this unified format of |
|
Credentials have been corrected in the latest commit |
|
Thanks, will take a look shortly. |
|
@torbbang Can we keep this as just a single |
nodes/cisco_vios/cisco-vios.go
Outdated
| ) | ||
|
|
||
| var ( | ||
| kindnames = []string{"cisco_vios", "vr-vios", "vr-cisco_vios"} |
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.
Just keep cisco_vios for this one.
I want to keep the L2 version as it has a more robust feature-set than the equivalent IOS based IOL L2 images. You are correct that it would be better to use a |
|
I personally find it inconvenient to have Types instead of different images as you cannot define both in defaults section afaik. I trust clab founders there is a good reason for that distinction, but as its discussed here, wanted to give my 5 cents. |
|
It's more a matter of consistency and reducing duplicated code. In the current PR you can see that the L2 and non-L2 only have diffs in the naming otherwise they are exactly the same. From a maintainability perspective it makes more sense to have some logic for what L2 needs done differently; and for clab it should be a very minimal difference since we only care about bringing the box up and giving mgmt connectivity (see IOL for what we do different for L2 image). On the kind defaults front, yes that is true you can't differentiate between type BUT groups is best suited for that kind of usecase IMO. What specific params are you looking to have different between L2/non-L2 node on kind-default basis? |
|
Yep, you are right you can do a lot with groups and it deduplicates code. I am fine with that : ] |
|
The latest commit consolidates the vios node kinds into one and implements the |
|
I have tested it before the vrnetlab changes in mentioned PR and it works for me fine for both types with or without configs. I see inconsistency between for example iol and vios in how configs are handled as with vios whatever you supply is basically partial, not full config, but thats outside of this PR scope I believe. This would be altered to only apply config file if present: https://github.com/srl-labs/vrnetlab/blob/master/cisco/vios/docker/launch.py#L127 |
|
Thanks, I will give it a test. It is preferred to have the config generation on the clab side so we can do exactly what you mention regarding the partial or full startup configs. I think it should be fairly straightforward. Just ensure on the clab side that we set |
|
That would be greatly appreaciated @kaelemc! |
@kaelemc What exactly do you mean by that? |
|
We just shift the config gen to clab for vIOS only. Not the other NOSes like Cat8k, CSR, SROS etc. |
@kaelemc Sorry for my dumb questions, but I still am not sure what's the meaning.. And then, should it be done in this PR or better it another? Thanks for your patience : ) |
|
No problem, it is not a dumb question. What I mean is we can move the config generation onto the clab side for vIOS only in the current opened PRs, of which I myself am happy to assist you guys on this. The other vrnetlab platforms can be done as needed, and in other PRs. |
|
@torbbang, what exactly do you miss from the IOL L2 image as features? If you don't mind, please write a list of features that do not work for you on the IOS XE image, but work on old IOS classic image.
|
|
apologies for the delay to getting around to this one. I made the relevant changes (on the vrnetlab side too) so that bootstrap config is handled in clab, the partials and override configs should work too, I will later find an L2 image to test. Pelase make any tweaks to the config if you want, and let me know how this works for you @torbbang |
|
anything else to be done here? |
|
Don't think so, just need someone to sanity check the config generation changes I made (also applies to the vrnetlab PR since the generation was moved from vrnetlab into clab). @torbbang @tvarohohlavy please take a look when you get some time :) |
|
Config works great @kaelemc! Thank you for moving the config generation |
|
thanks all! |
|
I tested cisco_vios on 0.72. Works beautifully. Thank you very much. |
Adds support for Cisco vIOS and vIOSL2 nodes