| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Fix converts commit_timeout to string as
Elementree.SubElement requires text as string.
Fixes #24611
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
|
|
|
|
|
|
|
|
| |
* Try to handle unicode output more sensibly
* Appears I'm getting latin1 instead
Ugh.
|
|
|
|
| |
If config is in xml format append it to <configuration>
tag as a instance of Element class.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Make warning logs consistent
Arguments outside provider with default
value should not log as warning in case
it is not mentioned in play.
* Make nxos timeout default consistent and add comments
* Make comments more verbose
|
| |
|
|
|
|
|
|
|
|
| |
* Check for provider values inside check_args of respective network code
* Partial revert of b9ee5aa
The no_log change is okay, but take out the action result munging
|
|
|
|
|
|
| |
* Fixes #23388 Network provider masks too much
* Fix trailing whitespace
|
| |
|
|
|
|
|
|
|
| |
format (#23225)
* Remove reliance on ability to output configuration in `set` format
* Support multiple warnings per rpc-reply
|
|
|
|
|
|
|
| |
The provider argument on the network modules argspec can contain
credentials.
Make sure we don't log it.
Fixes #21892
|
|
|
|
|
| |
* candidate var can now be string, list or element
* fixes minor bug in junos_template for backup argument
* disabled invalid integration test for junos_template
|
|
|
|
|
|
|
|
|
| |
* removes cli functions
* adds comment and confirm to arguments
* implements zeroize argument
* fixes get_diff function in junos shared lib to return diff
* lots of minor bug fixes in junos_config
* minor syntax fixes in junos_netconf
* updates netconf integration tests
|
|
|
|
|
|
|
| |
* removes cli functions from shared lib
* adds cli functions to junos_netconf module
* statically pins junos_netconf to cli transport
* all other modules use netconf transport
* adds command rpc function to junos shared
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fixes for junos_config errors
* Check transport settings for core Junos
* Don't pop from the same list you iterate over
* use of persistent connections are now explicitly enabled in junos
* modules must now explicitly enable persistent connections
* adds rpc support to junos_command
fixes #22166
|
|
|
|
|
|
|
|
|
|
| |
* Restore `provider` to junos_*
Fixes #21824
Fixes #21824
Fixes #21827
* Fix `confirm_timeout` related errors
* Fix glaring issues with _junos_template
|
|
|
|
|
|
|
|
| |
* updates junos_netconf module
* updates junos_command module
* updates junos_config module
* updates _junos_template module
* adds junos_rpc module
* adds junos_user module
|
|
|
|
|
|
|
|
| |
* Add update parameter in junos_config module which supports
configuration action like merge, replace and overwrite.
* Add support for replace along with update
argument
|
|
|
|
|
|
|
|
|
| |
The overwrite parameter is forcibly set to false, meaning a module
passing that parameter will have no effect. The overwrite facility
is necessary to ensure that conflicting options can be written the
configuration (which, in replace mode, they cannot).
This change ensures that if overwrite is set, it will not be changed
to False in the logic.
|
|
|
|
| |
This change will now cause the netconf provider to honor the module
timeout value when making calls to pyez.
|
|
|
|
| |
The junos run_commands() method should raise an error when an RpcError is
returned but didn't when using display=text. This fixes that error
|
|
|
|
| |
The junos config should convert the returning configuration to unicode
not str. This fixes that issue.
|
|
|
|
|
|
|
|
|
| |
The conditional processing was failing due for two reasons:
1) The xml to json conversion string was not happening before the runner
was processing the results
2) The Conditional instance was not parsing conditionals encoded with []
This fix address both issues.
|
|
|
|
|
| |
The junos load_config() method supports operations of overwrite, replace
and merge. This adds the missing overwrite keyword arg to load_config()
so that action in junos_template can be procesed correctly.
|
|
|
|
|
|
|
| |
This fixes a problem with the Netconf transport in which the ssh keyfile
wasn't being used if it was defined. The ref issue is filed against 2.1.1
but have been unable to replicate the problem in that version
ref: ansible/ansible-modules-core#4966
|
|
|
|
| |
The module didn't perform a commit confirm check which would cause
checking commits to be non idempotent. This change will fix that problem.
|
|
|
| |
this cleans up the old import mechanisms in the junos shared module
|
|
|
|
| |
This cleans up the junos module removing some unneeded commands and fixing
method signature with unneeded **kwargs
|
| |
|
|
|
| |
Closes #17411
|
|
|
|
|
|
| |
* cleans up load_config() arguments to simply
* removes unused methods in Cli transport
* updates error regexp
|
|
|
|
|
| |
This will prevent the junos shared module from throwing an exception if
the session is trying to be closed when it doesn't exist
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Clean up EOS, IOS, IOS-XR, Junos, NX-OS, and OpenSwitch
* Cleanup net* files
* Re-add NetworkModule import to network module_utils files
This will trick modules into importing code from module_utils code, thus
including it in the final Ansiballz zipfile.
* Give asa a look over, too
|
|
|
|
|
|
| |
* adds implementation for Network methods
* adds action plugin junos_config
* removes _log() and raises exceptions instead to be handled by the module
|
|
|
|
|
| |
* Junos NetworkModule adaption.
* Take CLI_PROMPTS_RE & CLI_ERRORS_RE from ios.py
|
| |
|
| |
|
|
|
|
|
|
| |
The junos network module will now properly use the ssh key file if its
passed from the playbook to authenticate to the remote device. Prior
to this commit, the ssh keyfile was ignored.
|
|\
| |
| | |
Allow ssh agent usage for junos_netconf
|
| |
| |
| |
| |
| |
| |
| | |
By default the `Shell` class disables ssh agents. The `junos_netconf`
module uses this class, but doesn't re-enable agents.
Here it's explicitly enabled again, so an ssh agent can be used to
connect to and configure Junos devices.
|
| |
| |
| |
| |
| |
| | |
Since the modules can use a paramiko transport (ergo
python 2.4 syntax), we need to keep compat with 2.4 and python 3,
so we need to use the get_exception trick, even if the various juniper
libraries are not compatible with 2.4.
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Clarify exception handling in EOS
Also modify to EOS to standardize modules. It makes vimdiff a lot less angry
* Move IOS exception handling into Cli
* Move IOS-XR exception handling into Cli
* Move JUNOS exception handling into Cli
* Move NXOS exception handling into Cli
And reorganize to make it match the other modules
* Move OpenSwitch exception handling into Cli
More speculative restructuring here
|
|
|
|
|
|
| |
This adds a check to validate the arugment for config_format kwarg in
get_config. If the specified format is not a valid option, the shared
module will call fail_json
|
|
|
| |
Add options to get_config to accept format (text, set or xml)
|
|
|
|
|
|
|
|
|
|
| |
Netconf support is provided using the junos-eznc library and the shared
module depends on junos-eznc to be installed on the local Ansible host. This
commit also adds changes to the netcfg library to handle receiving messages
over netconf.
To use netconf, specify transport=netconf for junos module. Be sure that
netconf has been enabled on the remote device.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Ziploader proof of concept (jimi-c)
* Cleanups to proof of concept ziploader branch:
* python3 compatible base64 encoding
* zipfile compression (still need to enable toggling this off for
systems without zlib support in python)
* Allow non-wildcard imports (still need to make this recusrsive so that
we can have module_utils code that imports other module_utils code.)
* Better tracebacks: module filename is kept and module_utils directory
is kept so that tracebacks show the real filenames that the errors
appear in.
* Make sure we import modules that are used into the module_utils files that they are used in.
* Set ansible version in a more pythonic way for ziploader than we were doing in module replacer
* Make it possible to set the module compression as an inventory var
This may be necessary on systems where python has been compiled without
zlib compression.
* Refactoring of module_common code:
* module replacer only replaces values that make sense for that type of
file (example: don't attempt to replace python imports if we're in
a powershell module).
* Implement configurable shebang support for ziploader wrapper
* Implement client-side constants (for SELINUX_SPECIAL_FS and SYSLOG)
via environment variable.
* Remove strip_comments param as we're never going to use it (ruins line
numbering)
* Don't repeat ourselves about detecting REPLACER
* Add an easy way to debug
* Port test-module to the ziploader-aware modify_module()
* strip comments and blank lines from the wrapper so we send less over the wire.
* Comments cleanup
* Remember to output write the module line itself in powershell modules
* for line in lines strips the newlines so we have to add them back in
|
|
|
|
|
|
| |
This commit fixes a situation where connection errors would be caught
but no useful information display. The connection error is now caught
and emitted in a call to fail_json
|
| |
|