-
Notifications
You must be signed in to change notification settings - Fork 23.7k
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
New voss_config module #47533
New voss_config module #47533
Conversation
Hi @LindsayHill, thank you for submitting this pull-request! |
Looks like #46996 changed import statements for tests. Updated. |
CI is failing due to unrelated transient failures for some systems (e.g. yum repo metadata download failures). Will close/re-open to re-trigger CI |
CI failures are due to unrelated things - e.g. upstream issues. Will try re-running CI tomorrow. |
Hopefully CI will get cleaned up quickly. |
shipit |
Made a small docstring change to the |
Well, we're at "UNSTABLE" now. Guess that's an improvement. Needs this resolved: #47582 |
Still more random unrelated CI failures. At least the MySQL issues seem to be resolved now |
Still a few random failures due to unrelated upstream things. Will trigger rebuild next week. |
@LindsayHill @bigmstone Thank you! |
* New voss_config module * Updated test import paths as per ansible#46996
SUMMARY
New module for managing configurations on Extreme Networks (née Avaya) VOSS-based devices (VSP).
ISSUE TYPE
COMPONENT NAME
voss_config
ANSIBLE VERSION
ADDITIONAL INFORMATION
VOSS uses a 'flat' configuration file, with no indentation. Instead it uses
exit
to identify the end of an interface-specific, or routing protocol-specific section, e.g.This is similar to Dell OS 6, but with only a single level of sub-commands. This module identifies the beginning & end of such sections, and maps to 'parents' and 'children' in the ConfigLine object.
There is an additional complexity element in that it may repeat the same "interface XX" or "router XXX" top-level command. Typically this is used to separate out IPv6 configuration options, e.g.:
This module internally treats those as a combined object under the same parent.
Example playbook:
Example first run:
Example second run (no change needed):