Commit Graph

2011 Commits (e94e80c79eab425637638205efa0eae368389dcd)

Author SHA1 Message Date
Toshio Kuratomi bd072fe83a
Make the timeout decorator raise an exception out of the function's scope (#49921)
* Revert "allow caller to deal with timeout (#49449)"

This reverts commit 63279823a7.

Flawed on many levels

* Adds poor API to a public function
* Papers over the fact that the public function is doing something bad
  by catching exceptions it cannot handle in the first place
* Papers over the real cause of the issue which is a bug in the timeout
  decorator
* Doesn't reraise properly
* Catches the wrong exception

Fixes #49824
Fixes #49817

* Make the timeout decorator properly raise an exception outside of the function's scope

signal handlers which raise exceptions will never work well because the
exception can be raised anywhere in the called code.  This leads to
exception race conditions where the exceptions could end up being
hanlded by unintended pieces of the called code.

The timeout decorator was using just that idiom.  It was especially bad
because the decorator syntactically occurs outside of the called code
but because of the signal handler, the exception was being raised inside
of the called code.

This change uses a thread instead of a signal to manage the timeout in
parallel to the execution of the decorated function.  Since raising of
the exception happens inside of the decorator, now, instead of inside of
a signal handler, the timeout exception is raised from outside of the
called code as expected which makes reasoning about where exceptions are
to be expected intuitive again.

Fixes #43884

* Add a common case test.

Adding an integration test driven from our unittests.  Most of the time
we'll timeout in run_command which is running things in a subprocess.
Create a test for that specific case in case anything funky comes up
between threading and execve.

* Don't use OSError-based TimeoutError as a base class

Unlike most standard exceptions, OSError has a specific parameter list
with specific meanings.  Instead follow the example of other stdlib
functions, concurrent.futures and multiprocessing and define a separate
TimeoutException.

* Add comment and docstring to point out that this is not hte Python3 TimeoutError
6 years ago
Yannig Perré 6b41588e93 Fix with_ini example and unittest
* Fix example in ini.py
* Fix unittest in test_ini.py to pass CI as latest ansible returns list in
  different order. To prevent such issues in future results are sorted
* PEP8 E501 styling improvements

Co-Authored-By: Sergii Golovatiuk <sgolovat@redhat.com>
6 years ago
Abhijeet Kasurde 139e3477a7 Review comments
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Abhijeet Kasurde 44bd8fc0a8 Update unit tests for configmanager
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
rajaspachipulusu17 d28e700a22 Pluribus networks admin session timeout module with unit tests (#50012)
* Pluribus networks admin session timeout module with unit tests
* Doc fix
* Removed unused imports
* Removed unwanted global variable
6 years ago
rajaspachipulusu17 cf00880ab3 Pluribus Networks dscp map module with unit tests (#49849)
* Pluribus Networks dscp map module with unit tests
* Doc string fix
6 years ago
rajaspachipulusu17 4d88cdd83a Pluribus Networks cpu class module with unit tests (#49847)
* Pluribus Networks cpu class module with unit tests
* Doc string fixes
6 years ago
Matt Martz 7eb1ab45a7
Allow tags to be templated from a variable (#49833)
* Allow tags to be templated from a variable. Fixes #49825

* Restore _load_tags to ensure we do csv tag splitting

* Add tests for csv tags and templated tags

* evaluate_tags doesn't need to accept strings, because _load_tags handles this
6 years ago
Toshio Kuratomi 61b1daa65f Port from plaform.dist to ansible.module_utils.distro.linux_distribution
ci_complete
6 years ago
Adrian Likins e872811b8d WIP: add tests to compare to platform.*dist
Can be removed once everything is ported.
6 years ago
Adrian Likins 5e1f8a48f3 Bundle a copy of github.com/nir0s/distro/distro.py
Since the 'platform.dist()' and 'platform.linux_distribution()'
methods will be removed from future versions of python, this
provides an alternative to replace ansibles use of those
methods.

lib/ansible/module_utils/distro.py is a copy of
https://github.com/nir0s/distro/blob/master/distro.py

This module is originally from https://github.com/nir0s/distro
and is license under the Apache License, Version 2.0.
6 years ago
f-bor 134c1a624e new network module: edgeswitch_vlan (#48041)
* initial commit

* better commands generation
6 years ago
anasbadaha 369354547e Issue: 46475 Fix onyx magp module for supporting new json format (#49417)
Signed-off-by: Anas Badaha <anasb@mellanox.com>
6 years ago
Toshio Kuratomi 175f3b51e5 Ensure that current uses of BaseException are required
* In some cases, it appears that Exception should have been used instead
  as there's no need to catch sys.exit KeyboardInterrupt and similar.
* In a few cases, it appears that BaseException is used because
  a library we depend on calls sys.exit() contrary to good coding
  design.  Comment those so that we know that those have been audited
  and found to be correct and change to use (Exception, SystemExit)
  instead.
6 years ago
Toshio Kuratomi 3fba006207 Update bare exceptions to specify Exception.
This will keep us from accidentally catching program-exiting exceptions
like KeyboardInterupt and SystemExit.
6 years ago
anasbadaha c0dbc1a441 Issue/38837 (#49873)
* Fix Issue #38837

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Issue #38837 2

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Enhance decumentation

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Failures in Shippable

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Version Added

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Add version_added:2.8 in purge attributes

Signed-off-by: Anas Badaha <anasb@mellanox.com>
6 years ago
Abhijeet Kasurde 162d9497ba
Ad-hoc command: fix 'any' call in play_ds (#49852)
* Ad-hoc command: fix 'any' call in play_ds
* Unit test for ad-hoc cli
* Review comments

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Abhijeet Kasurde 013c42b14f
Misc typo fixes (#49816)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Susant Sahani 59dcf3f277 nmcli: Introduce SIT Tunnel (#45937)
This work enables to add sit tunnel via nmcli module

Signed-off-by: Susant Sahani susant@redhat.com

SUMMARY
ISSUE TYPE
Feature Pull Request
COMPONENT NAME
nmcli

ANSIBLE VERSION
2.8
ADDITIONAL INFORMATION
  - nmcli:
       state: present
       type: sit
       conn_name: sit_test1
       autoconnect: yes
       ip_tunnel_dev: enp0s8
       ip_tunnel_local: 192.168.1.2
       ip_tunnel_remote: 192.168.1.5
6 years ago
cma0 974c45a5f5 itential iap_token module (#46773) 6 years ago
WhyIsThisOpen 7bdca72713 rhn_register fixes for username and password when unregistering
- Require username and password for unregistering and avoid "cannot marshal None unless allow_none is enabled" error when using an activation key and no channels specified.
- Update test fixtures and add changelog


Co-authored-by: WhyIsThisOpen <WhyIsThisOpen@users.noreply.github.com>
6 years ago
rajaspachipulusu17 b47cde9d4c Pluribus Networks pn access list ip module with unit test cases (#49604)
* Pluribus Networks pn access list ip module with unit test cases

* Changes according to ansibot standards in unit test modules

* Remove unwanted variables

* Removed unwanted super call
6 years ago
Chris Archibald 8ad5035ce6 Bug Fix and rewrite (#49508) 6 years ago
Abhijeet Kasurde d36922064b Add support for hex color in slack module (#49804)
Fixes: #11935

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Josue David Hernandez 9202ef60b0 set ansible_os_family from name variable in os-release for clearlinux OS (#49639)
* set ansible_os_family from name variable in os-release for clearlinux system

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>

* Add os_family for clear linux and clear linux mixes

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>
6 years ago
Matt Martz 2a469fd959 Consolidate handler tracking (#49338)
* Consolidate handler tracking
  -  Remove unused code. ci_complete
  - unit test fixes. ci_complete
  - Restore previous behavior of matching a single handler
  - when notifying a host for a handler, return True if it was added, False otherwise, to reduce copied logic
  - rename funcitons for clarity. ci_complete
  - Remove handler logic for static includes which was disabled previously
6 years ago
Andreas Calminder 876b637208 move some of basic into common (#48078)
* move file functions into common.file

* move *_PERM_BITS and mark as private (_*_PERM_BITS)

* move get_{platform, distribution, distribution_version} get_all_subclasses and load_platform_subclass into common.sys_info

* forgot get_distribution_version, properly rename get_all_subclasses

* add common/sys_info.py to recursive finder test

* update module paths in test_platform_distribution.py

* update docstrings, _get_all_subclasses -> get_all_subclasses

* forgot to update names

* remove trailing whitespace
6 years ago
Pavlos Tzianos a4eb4b2551 Rabbitmq user permission fixes (#49404)
* Simplify permission changing code for rabbitmq_user module

* Add check for multiple permission dicts for same host to rabbitmq_user module

* Add docstring for _get_permission method of rabbitmq_user

* Fix method that compares vhost permissions in rabbitmq_user

* Add tests for rabbitmq_user module

* Add helper function for simulating collections.Counter functionality
6 years ago
Sean Myers 9434f8608a Add rhsm_repository_release module (#43211)
* Add rhsm_repository_release module

* bump ansible version_added

* Fix imports in rhsm_repository_release unit test
6 years ago
Tim Rupp 1c3fa2b07f
Deprecate the bigip_asm_policy module (#49574)
Specific import and export modules should be used instead
6 years ago
Anil Kumar Muraleedharan dd004321d4 Refactoring code of cnos_portchannel as cnos_linkagg in tune with other vendors. (#49467)
* Refactoring code of cnos_portchannel as cnos_linkagg in tune with other vendors.
6 years ago
Josue David Hernandez 6d42c5020a Fix for changes in clearlinux (#49344)
* Fix for changes in clearlinux

clearlinux is now providing /etc/os-release file and ansible is identifying as NA
then this change allow ansible to find it

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>

* Add changelog fragment for clearlinux changes

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>
6 years ago
Naval Patel 880390ca0a Added new module lxca_nodes for Lenovo XClarity Administrator (#46767)
* Added new module lxca_nodes
6 years ago
Toshio Kuratomi c817bef3ae Fix for callback plugins on Python3 when a module returns dictionary keys that aren't strings
This fixes one of the problems reported in https://github.com/ansible/ansible/issues/49343

Upstream Python3 bug for the json traceback:
https://bugs.python.org/issue25457

and PR that may fix it:
https://github.com/python/cpython/pull/8011
6 years ago
Tim Rupp 60b75c2cfd
Adds ASM policy import module (#49526) 6 years ago
Tim Rupp 7a4c7b8c0f
Adds module for gtm topology regions (#49510) 6 years ago
Tim Rupp c7dd13758e
Adds bigip_profile_analytics module (#49499) 6 years ago
Tim Rupp caa6ed3c66
Adds ASM policy fetch module (#49494) 6 years ago
Tim Rupp 138690519d
Various small fixes for f5 ansible modules (#49492) 6 years ago
Sam Doran 40a5f7bfdf Add better error when k=v syntax is used with YAML in tasks (#41754)
* Add error message for k=v and YAML in a single task

Find the correct line, column, and position for k=v errors since they are different than the position reported initially.

Document bug in quoting syntax check.

* Change tense or error message

Since the error still exists, switch to present tense rather than past tense.

* Remove double spaces after periods in error messages.

http://www.slate.com/articles/technology/technology/2011/01/space_invaders.html

* Add changelog fragment

* Add tests for new error message

* Fix tests

* Add clarifying comments to unit test
6 years ago
Abhijeet Kasurde 1b04571ea0
VMware: Fix module usages in module_utils (#49421)
* VMware: Fix module usages in module_utils
* Skip test for Python 2.6 as SSL context is not available in Python 2.6

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
John Kerkstra 672acbea68 Adds `redshift_cross_region_snapshots` module (#35527)
* add redshift_cross_region_snapshots module, unit tests.

* fix errors

* use ec2_argument_spec as the basis for the argument spec. fixed
metadata_version

* follow best practices by naming example tasks.

* code review changes

* fix linting errors

* Update version added
6 years ago
Chris Archibald 62dd1fe29e New options of na_ontap_aggregate (#48906)
* add new options for na_ontap_aggregate

* add gpl line

* remove dup option

* Put files in wrong directory

* change unit test to match the request from PR 48941

* Changed for review comments

* pep8
6 years ago
ftntcorecse b4ce4e1571 Fortinet FortiManager Device Group Module (#46086)
* fmgr_device_group PR candidate

* fgmr_device_group PR candidate

* PR candidate

* PR candidate

* Fixing Edits.

* Fixing Edits.

* Fixing Authors

* Removed State Parameter and replaced with Mode, per request of justjais
6 years ago
Felix Fontein 3726d467ec Code style adjustment. (#49329) 6 years ago
Paul Neumann a914f494a8 ios_facts: Gather CDP neighbor data (#49129)
* ios_facts: Gather CDP neighbor data

* ios_facts: Create tests for ansible_net_neighbors
6 years ago
Pilou 62c05033d6 templar: ensure that exceptions are handled, fix 'AttributeError' (#48792)
* templar: ensure that exceptions are handled

* Fix AttributeError: object has no attribute 'message'

'message' attribute is deprecated since Python 2.6 and not available
with Python 3.

Simple reproducer:

    - hosts: localhost
      vars:
        not_json: "{{ 'test str' | from_json }}"
      tasks:
        - command: "echo {{ not_json }}"
6 years ago
Felix Fontein 1e0ab16247 Add basic unit tests for module_utils/acme.py. (#49103) 6 years ago
Anil Kumar Muraleedharan 7a81d859c5 Refactoring cnos_vlan in line with ios, eos etc. (#48924)
* Refactoring cnos_vlan in line with ios, eos etc.
6 years ago
Lars Kellogg-Stedman bafc1f8a41 fix constructed functionality in openstack inventory plugin (#48833)
* test for openstack inventory constructed functionality

this adds unit tests for the compose, groups, and keyed_var features
of the openstack inventory plugin

* fix constructed functionality in openstack inventory plugin

The compose, groups, and keyed_groups functionality of the openstack
inventory plugin was broken:

- the plugin was not passing the correct variables to the
  Constructable methods for compose and groups
- the plugin was simply never calling the appropriate method for
  implementing keyed_groups

This commit fixes both issues.
6 years ago
Toshio Kuratomi 61e5d04a60 Replace nose with pytest 6 years ago
Brian Coca 91150423f4
ignore netapp tests when no libs (#48941)
* ignore tests when no libs
6 years ago
ftntcorecse fb7b6f9521 Fortinet FortiManager Device Add Module (#45954)
* fmgr_device PR candidate

* fmgr_device PR candidate

* fmgr_device PR candidate

* fmgr_device PR candidate

* fmgr_device PR candidate

* fmgr_device PR candidate

* fmgr_fwobj_address PR candidate

* Grammar

* grammar changes

* pylint changes

* Fixing Authors
6 years ago
ftntcorecse 050a2c51dd Fortinet FortiManager Device Config Module (#46080)
* fmgr_device_config PR candidate

* fmgr_fwobj_address PR candidate

* PR candidate

* Resolving Edits

* Resolving Edits

* Fixing Authors
6 years ago
ftntcorecse 1da3c5c302 Fortinet FortiManager Firewall Objects - Addresses (#46084)
* fmgr_fwobj_address PR candidate

* fmgr_fwobj_address PR candidate

* PR candidate

* PR candidate

* Adding requested changes by @samccann

* minor issue...

* minor pylint issue

* More changes from @samccann

* more grammar

* Author Mention Change

* Fixing Authors
6 years ago
ftntcorecse 86222fd4c4 Fortinet FortiManager HA Configuration Module (#46085)
* fmgr_ha PR candidate

* PR candidate

* PR candidate

* PR candidate

* PR candidate

* Fixing Edits.

* Fixing Edits.

* Fixing Edits.

* Fixing Edits.

* Fixing Authors
6 years ago
Tim Rupp 212b48b6fd
Adds module to configure ldap device auth on a bigip (#48974) 6 years ago
ftntcorecse 44b20fbf96 Fortinet Firewall Object - Virtual IPs (#47637)
* PR Candidate

* PR Candidate - pylint fix

* PR Candidate minor pylint fix v2

* Fixed Odd type annotation -- needed double comments

* Missed one of the # type: comments in fixture...

* Fixing Edits. Nixing Stale CI Flag

* Fixing Edits.

* Fixed Authors -- Fixed Changes.

* Fixing pep8...

* Fixing a description
6 years ago
ftntcorecse 4862a4aeb4 FortiManager security profile group module (#46220)
* Initial Commit

* Initial Commit

* Initial Commit

* Fixing syntax errors

* After running sanity tests, fixed pylint and pep8 errors

* After running sanity tests, fixed pylint and pep8 errors

* Fixing more syntax issues

* Fixing more syntax issues

* Adding username to doc block

* PR candidate

* PR candidate

* fixed pep8 and docs issues

* fixed 2.6 function issues

* fixed 2.6 function issues part duex

* Initial commit for security profile group module

* Adding better playbook example to module

* Adding another commit to test shippable tests

* Fixing shippable errors, pep8 in unit test file and doc block problem in main module

* Fixing documentation module error

* Fixing pep8 line too long in unit test

* Fixing utility function with nested dictionaries

* Fixing utility function with pep8 issue

* Adding change to allow for multiple list of dictionaries to be submitted via a single playbook

* Fixing review changes

* Adding @ in author names per @Gundalow's request per Ansible's guidelines
6 years ago
ftntcorecse 64c4881d58 FortiManager DNS security profile (#46239)
* Initial Commit

* Initial Commit

* Initial Commit

* Fixing syntax errors

* After running sanity tests, fixed pylint and pep8 errors

* After running sanity tests, fixed pylint and pep8 errors

* Fixing more syntax issues

* Fixing more syntax issues

* Adding username to doc block

* PR candidate

* PR candidate

* fixed pep8 and docs issues

* fixed 2.6 function issues

* fixed 2.6 function issues part duex

* Initial commit for security profile group module

* Adding better playbook example to module

* Initial commit for FMG DNS security profile

* Fixing pep8 line too long in unit test

* Removing excess modules and unit tests

* Fixing trailing white space for dns module

* Fixing utility function with nested dictionaries

* Fixing utility function with pep8 issue

* Adding change to allow for multiple list of dictionaries to be submitted via a single playbook

* Fixing review changes

* Adding @ in author names per @Gundalow's request per Ansible's guidelines
6 years ago
ftntcorecse 37e932c4ee Fortinet FortiManager IPv4 Policy Module (#47638)
* Needs unit test fix -- the "delete" calls a GET command and another function to get policy ID of a firewall policy before deleting it. Nested functions like this, where a GET occurs to determine a new call, breaks the unitTestGen output. Need to figure out what's going on, and adjust the generator.

* PR Candidate

* PR Candidate (fixes)

* Reverting

* Fixing Edits.

* Fixing Authors - Fixing Requested Changes
6 years ago
ftntcorecse d7e1e6429c FortiManager Web Application Firewall Security Profile (#46967)
* Initial Commit

* Initial Commit

* Initial Commit

* Fixing syntax errors

* After running sanity tests, fixed pylint and pep8 errors

* After running sanity tests, fixed pylint and pep8 errors

* Fixing more syntax issues

* Fixing more syntax issues

* Adding username to doc block

* PR candidate

* PR candidate

* fixed pep8 and docs issues

* fixed 2.6 function issues

* fixed 2.6 function issues part duex

* Initial commit for security profile group module

* Adding better playbook example to module

* Adding another commit to test shippable tests

* Fixing shippable errors, pep8 in unit test file and doc block problem in main module

* Fixing documentation module error

* Fixing pep8 line too long in unit test

* Fixing utility function with nested dictionaries

* Fixing utility function with pep8 issue

* Adding change to allow for multiple list of dictionaries to be submitted via a single playbook

* Initial commit for FMG Security Profile Web Application Firewall

* adding extra line at bottom for pep8 conditions

* Adding descriptions to documentation

* Fixing more pep8 issues

* New commit for new PR

* Removing todo in documentation

* Changing module name in documentation to match actual module name

* Fixing yaml syntax for long choices list

* Fixing yaml syntax for long choices list

* Fixing review changes

* Adding @ in author names per @Gundalow's request per Ansible's guidelines
6 years ago
ftntcorecse a171b80a0c FortiManager Web Filter Security Profile (#47150)
* Initial Commit

* Initial Commit

* Initial Commit

* Fixing syntax errors

* After running sanity tests, fixed pylint and pep8 errors

* After running sanity tests, fixed pylint and pep8 errors

* Fixing more syntax issues

* Fixing more syntax issues

* Adding username to doc block

* PR candidate

* PR candidate

* fixed pep8 and docs issues

* fixed 2.6 function issues

* fixed 2.6 function issues part duex

* Initial commit for security profile group module

* Adding better playbook example to module

* Adding another commit to test shippable tests

* Fixing shippable errors, pep8 in unit test file and doc block problem in main module

* Fixing documentation module error

* Fixing pep8 line too long in unit test

* Fixing utility function with nested dictionaries

* Fixing utility function with pep8 issue

* Adding change to allow for multiple list of dictionaries to be submitted via a single playbook

* Initial commit for FMG Security Profile Web Application Firewall

* adding extra line at bottom for pep8 conditions

* Adding descriptions to documentation

* Fixing more pep8 issues

* New commit for new PR

* Removing todo in documentation

* Changing module name in documentation to match actual module name

* Fixing yaml syntax for long choices list

* Fixing yaml syntax for long choices list

* Initial commit for fmgr web filter security profile

* Fixing pep8 syntax issues

* Fixing documentation yaml syntax errors with choices on new lines

* Fixing documentation yaml syntax errors, removing Todo comments

* Fixing choices additional tab

* Fixing choices on multiple lines

* Fixing choices on multiple lines

* Adding yaml block scalar for multiline choices

* Changing YAML syntax for multiline to YAML sequence for choices

* Fixing all sanity test errors

* Fixing review changes

* Adding @ in author names per @Gundalow's request per Ansible's guidelines
6 years ago
ftntcorecse 199cd1bc77 FortiManager SSL SSH Security Profiles (#47152)
* Initial Commit

* Initial Commit

* Initial Commit

* Fixing syntax errors

* After running sanity tests, fixed pylint and pep8 errors

* After running sanity tests, fixed pylint and pep8 errors

* Fixing more syntax issues

* Fixing more syntax issues

* Adding username to doc block

* PR candidate

* PR candidate

* fixed pep8 and docs issues

* fixed 2.6 function issues

* fixed 2.6 function issues part duex

* Initial commit for security profile group module

* Adding better playbook example to module

* Adding another commit to test shippable tests

* Fixing shippable errors, pep8 in unit test file and doc block problem in main module

* Fixing documentation module error

* Fixing pep8 line too long in unit test

* Fixing utility function with nested dictionaries

* Fixing utility function with pep8 issue

* Adding change to allow for multiple list of dictionaries to be submitted via a single playbook

* Initial commit for FMG Security Profile Web Application Firewall

* adding extra line at bottom for pep8 conditions

* Adding descriptions to documentation

* Fixing more pep8 issues

* New commit for new PR

* Removing todo in documentation

* Changing module name in documentation to match actual module name

* Fixing yaml syntax for long choices list

* Fixing yaml syntax for long choices list

* Initial commit for fmgr web filter security profile

* Initial commit for SSL and SSH security profiles in FMG

* Fixing pep8 syntax issues

* Adding better playbook example

* Fixing review changes

* Adding @ in author names per @Gundalow's request per Ansible's guidelines
6 years ago
Tim Rupp cd02b3637c
Removes remaining nose usage from f5 unit tests (#48973) 6 years ago
Tim Rupp c1118389cf
Remove nose usage from a bigip unit test (#48964) 6 years ago
Tim Rupp fb782fa3e9
Adds the bigip_password_policy module (#48951)
This module can be used to manage password policy settings on a BIG-IP
6 years ago
Tim Rupp 10095a397c
Adds the bigip_monitor_gateway_icmp module (#48915) 6 years ago
Tim Rupp fdbc0e5798
Adds the bigip_dns_cache_resolver module (#48914) 6 years ago
Tim Rupp e7d1c0fb77
Removes f5-sdk references from bigip modules (#48911) 6 years ago
Tim Rupp 8e6c3b06b8
Adds the ip_intelligence_policy parameter to vs module (#48903) 6 years ago
Tim Rupp e6d586f703
Change port to allow strings too (#48899)
The port technically supports an asterisk, but the argument spec was
requiring integers only.
6 years ago
Chris Archibald 50808ffa8f Add common files for ONTAP and SOLIDFIRE unit tests (#48739)
* And unit test files

* Changes to netapp.py

* Matt's changed, and pep8 change for test_netapp.py
6 years ago
Susant Sahani 88dcb11695 nmcli: Introduce IPIP Tunnel (#45933)
This work enables to add ipip tunnel via nmcli module

```
  - nmcli:
       state: present
       type: ipip
       conn_name: ipip_test1
       autoconnect: yes
       ip_tunnel_dev: enp0s8
       ip_tunnel_local: 192.168.1.2
       ip_tunnel_remote: 192.168.1.5
```

version2: Added tests
Signed-off-by: Susant Sahani <susant@redhat.com>

Rebase
6 years ago
Tim Rupp 9af5724bd4
Remove the f5-sdk from bigip_remote_syslog (#48539) 6 years ago
Tim Rupp dd2629ff0b
Adds new module for gtm topology records (#48817) 6 years ago
Tim Rupp 0e1dca6e8f
Adds the bigip_imish_config module. (#48779)
This can be used to manage bgp configuration on a BIG-IP.
6 years ago
lwm ae0054a79e Add new linode_v4 module. (#46151)
Refs:
  * https://github.com/ansible/ansible/issues/36348
  * https://github.com/ansible/ansible/pull/41875
6 years ago
Anton Nikulin 9770ac70f9 FTD modules: upsert functionality and bug fixes (#47747)
* FTD modules: bug fixes and upsert functionality

* Fix sanity checks

* Fix unit tests for Python 2.6

* Log status code for login/logout

* Use string formatting in logging
6 years ago
Tim Rupp a7b7c07ad2
Adds bigip_file_copy module (#48770)
This module can be used to copy files to specific datastores on
a bigip
6 years ago
Matt Clay feb5b0b299 Fix unit test issues with pytest >= 4.0.0. 6 years ago
Sumit Jaiswal feac12f9b7
fix nios modules (#48559)
* resolves 47839

* update name

* update name

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* update name tests

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* update name tests

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* modifying the condn

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
6 years ago
Abhijeet Kasurde 03f71e778b
Refactor ingate module_utils (#47959)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Olivier Bourdon cf3483e752 Add tests filters (#43221)
This will allow tests to be carried out condtionally if necessary
using regexp include and/or exclude filters
Reorganize imports into alphabetical order for easier insertion
6 years ago
Tim Rupp 5e7a02d574
Remove f5-sdk from bigip_vcmp_guest (#48541) 6 years ago
Tim Rupp 62332155b5
Removes the f5-sdk from bigip_routedomain (#48543) 6 years ago
Tim Rupp 708c2b4b71
Removes the f5-sdk from bigip_selfip (#48544) 6 years ago
Tim Rupp 452cf2b1a3
Adds the bigip_dns_resolver module (#48540) 6 years ago
Tim Rupp 232fcb9f34
Adds the bigip_profile_server_ssl module (#48532) 6 years ago
Tim Rupp 69d24cc7fc
Remove f5-sdk from bigip_profile_udp module (#48534) 6 years ago
Tim Rupp d89fa23412
Remove f5-sdk from bigip_profile_tcp module (#48533) 6 years ago
Tim Rupp b292f8338f
Corrects parameters to flatten correctly. (#48531)
Also fixes unit tests and adds other code patterns that other f5
modules use
6 years ago
Tim Rupp 4e2891e38f
Adds bigip_profile_fastl4 module (#48527) 6 years ago
Tim Rupp 6134281d28
Remove f5-sdk from bigip_profile_oneconnect (#48530) 6 years ago
Tim Rupp 875d83df50
Fixes unit tests in bigip_profile_http_compression (#48529) 6 years ago
Tim Rupp 77afc32621
Adds new parameters to bigip_profile_http (#48528) 6 years ago
Tim Rupp f126db7f21
Remove f5-sdk from bigip_profile_client_ssl (#48525) 6 years ago
Tim Rupp 50fb2d7795
Remove f5-sdk from bigip_profile_dns (#48526) 6 years ago
Tim Rupp ed818edd5a
Remove f5-sdk from bigip_partition. Fix partition descriptions. (#48522) 6 years ago
Tim Rupp 0c3f168087
Remove f5-sdk from bigip_policy_rule (#48524) 6 years ago
Tim Rupp dbbc752d56
Removes the f5-sdk from bigip_policy (#48523) 6 years ago
Tim Rupp 4dc5a26293
Adds new params to bigip_node. Fix unit tests. (#48521) 6 years ago
Tim Rupp 1e57b91c35
Add new parameters to bigip monitor modules (#48520) 6 years ago
Tim Rupp 240d2baebd
Removes f5-sdk from bigip_management_route (#48519) 6 years ago
Tim Rupp 73ec37b6b6
Remove f5-sdk from bigip_log_destination (#48517) 6 years ago
Tim Rupp 94d04b7da4
Remove the f5-sdk from bigip_irule (#48516) 6 years ago
Tim Rupp 25344da0ad
Remove f5-sdk from bigip_log_publisher (#48518) 6 years ago
Tim Rupp a260e86729
Remove f5-sdk from bigip_iapp_service module (#48511) 6 years ago
Tim Rupp 1a226a86b5
Remove f5-sdk from bigip_iapplx_package (#48513) 6 years ago
Tim Rupp 4579b6516f
Remove f5-sdk from bigip_iapp_template (#48512) 6 years ago
Tim Rupp 8dabd0cde3
Remove f5-sdk from bigip_gtm_virtual_server (#48508) 6 years ago
Tim Rupp ce06cfe8ef
Remove f5-sdk from bigip_gtm_wide_ip (#48509) 6 years ago
Tim Rupp 4a74c1fec6
Add new features to gtm server module (#48507)
Remove the f5-sdk. Fix unit tests. Add new prober parameters
6 years ago
Tim Rupp 364ed4e660
Remove f5-sdk from bigip_hostname (#48510) 6 years ago
Tim Rupp bfd8dc56ea
Remove the f5-sdk from bigip_gtm_pool_member (#48506) 6 years ago
Tim Rupp 830f1880b7
Remove f5-sdk from bigip_gtm_pool (#48505) 6 years ago
Tim Rupp 98a15013dc
Remove f5-sdk from bigip_gtm_monitor_tcp_half_open (#48504) 6 years ago
Tim Rupp 8a57ae1702
Remove f5-sdk from bigip_gtm_monitor_tcp (#48503) 6 years ago
Tim Rupp 530a21dfc0
Remove the f5-sdk from bigip_gtm_monitor_https (#48502) 6 years ago
Tim Rupp 0f2ea94c00
Remove f5-sdk from bigip_gtm_monitor_firepass (#48499) 6 years ago
Tim Rupp ce1c88a7b8
Remove the f5-sdk from bigip_gtm_monitor_http (#48500) 6 years ago
Tim Rupp 75661cc5f6
Removes the f5-sdk from bigip_gtm_monitor_external (#48498) 6 years ago
Tim Rupp 7664d1d91c
Removes the f5-sdk from bigip_gtm_monitor_bigip (#48497) 6 years ago
Tim Rupp 7ce3d7c8ef
Removes the f5-sdk from bigip_gtm_global (#48496) 6 years ago
Tim Rupp 3186f2b576
Removes the f5-sdk from bigip_gtm_datacenter (#48495) 6 years ago
Tim Rupp 3132ce8404
Fixes unit tests and move client variable (#48494) 6 years ago
Tim Rupp 7d11e6e3e5
Adds token cleanup and fixes unit tests (#48493) 6 years ago
Tim Rupp 1afbe4d61b
Remove the f5-sdk from bigip_firewall_port_list module (#48492) 6 years ago
Tim Rupp fd0f3ad648
Fixes unit tests for bigip_firewall_policy module (#48490) 6 years ago
Tim Rupp 112ce6da89
Adds bigip_firewall_dos_vector module (#48487)
This module can be used to manage DoS vectors in a DoS profile or
device config
6 years ago
Tim Rupp d1288f9ea1
Adds bigip_dns_zone module (#48482)
This module can be used to manage zones on a BIG-IP. The managed
zones should **not** be confused with ZoneRunner zones as they are
not the same.
6 years ago
Tim Rupp 9a396cc45d
Fixes unit tests broken in ansible 2.8 and minor module cleanup (#48484) 6 years ago
Tim Rupp 1378e9fca2
Removes the f5-sdk from bigip_firewall_address_list module (#48483) 6 years ago
Tim Rupp b5ee96a576
Adds bigip_dns_nameserver module (#48480)
This module can be used to manage DNS nameservers (usually used for
DNS express) functionality on a BIG-IP.
6 years ago
Tim Rupp 0c14b75eec
Remove f5-sdk from bigip_device_trust (#48479) 6 years ago
Tim Rupp 1c7e6d354c
Remove f5-sdk from bigip_device_sshd (#48478) 6 years ago
Tim Rupp 90857004c9
Remove f5-sdk from bigip_device_ntp (#48477) 6 years ago
Tim Rupp ccb6349e70
Removes f5-sdk from bigip_device_license (#48476) 6 years ago
Tim Rupp 0873043e5a
Fixes ssl cipher ordering in bigip_device_httpd. Also fix unit tests (#48475) 6 years ago
Tim Rupp fccbbf3405
Removes f5-sdk from bigip_device_group_member (#48464) 6 years ago
Tim Rupp 70cdf477e4
Remove f5-sdk from bigip_device_group (#48463) 6 years ago
Tim Rupp 03ccf50466
Remove f5-sdk from bigip_device_dns (#48461) 6 years ago
Tim Rupp a1a899353c
Remove f5-sdk from bigip_device_facts and add more facts (#48462) 6 years ago
Tim Rupp de066ceef8
Removes f5-sdk from bigip_device_connectivity (#48460) 6 years ago
Tim Rupp c161ffef81
Fixes unit tests for bigip_device_auth that were broken in 2.8 (#48459) 6 years ago
Tim Rupp 68084d989c
Removes f5-sdk from bigip_data_group (#48458) 6 years ago
Tim Rupp effa22245e
Remove the f5-sdk from bigip_configsync_action (#48457) 6 years ago
Tim Rupp e6fad87e20
Removes the f5-sdk from bigip_config (#48456) 6 years ago
Tim Rupp ec2933e20b
Removes the f5-sdk from bigip_command (#48455) 6 years ago
Tim Rupp d97abff0ad
Fixes unit tests that were broken in ansible 2.8 (#48454) 6 years ago
Tim Rupp 5196188b97
Minor fixes to bigip_cli_alias (#48452) 6 years ago
Tim Rupp 70cf5acf13
Remove f5-sdk from bigip_asm_policy (#48451) 6 years ago
Tim Rupp 77d14b36b0
Remove the f5-sdk from as3 module (#48449) 6 years ago
Tim Rupp f4c2587d47
Adds new parameters to bigip_pool_member (#48448) 6 years ago
Tim Rupp 55f5a707fe
Removes f5-sdk from bigip_pool (#48431)
Additionally fixes forwarding, small bugs, and adds small enhancements
6 years ago
Tim Rupp 7290bc23b8
Removes the f5-sdk from bigip_provision (#48397) 6 years ago
Tim Rupp 38806e8507
Fixes for bigip_qkview (#48396)
Fixes unit tests for ansible 2.8 and adds more error handling
for qkview generation
6 years ago
Jack Haden-Enneking 15e77ebfe8 ipaddr filter - return a network address when given an address with /32 subnet (#47539)
* fix #17872

* add changelog fragment and enable unit test
6 years ago
Martin Krizek 421d67f1ee
conditional: fix direct boolean "shortcut" (#47941)
* conditional: fix direct boolean "shortcut"

* Add unit tests
6 years ago
Matt Martz 0d068f1e3a
Support list of dicts with omit. Fixes #45907 (#45923) 6 years ago
Raphael Meudec c062f37984 Bug 42787 create volume with label (#46527)
* add None value to docker-version so it can be mocked in tests
6 years ago
Michael Cassaniti a2f3f16930 win_updates: Add post search category matching to support product matching (#45708)
* win_update: Add post search category matching to support product matching

* win_updates: Return categories of each update

* win_updates: Documentation fix-up

* win_updates: Adjusted documentation to reflect regex vs sub-string match of post-cat strings

* win_updates: Sped up post-category checking

* win_updates: Updated documentation to suggest querying post-category strings

* win_updates: Simplified saving and checking post-categories

* fixed some issues and added filtered categories to return value

* win_updates: Moved all category matching to occur after initial search

* win_updates: Adjustments to satisfy PowerShell lint checks

* win_updates: Dropped category validation from action plugin

* win_updates: Documentation updates

* win_updates: Fixed plugin unit tests
6 years ago
Adam Miller 091fb1dc3f yum also parse obsolete package output (#45365)
* yum also parse obsolete package output

This is a rebase of the patch originally proposed in
https://github.com/ansible/ansible/pull/40001 by machacekondra

Fixes #39978

Signed-off-by: Adam Miller <admiller@redhat.com>

* properly parse the obsoletes, provide a new output entry, add changelog

Signed-off-by: Adam Miller <admiller@redhat.com>

* make pep8 happy

Signed-off-by: Adam Miller <admiller@redhat.com>

* remove q debugging output

Signed-off-by: Adam Miller <admiller@redhat.com>
6 years ago
Andrew Herrington 43bbc505a1 Add threading to slack notification module (#47333)
* Add threading to slack notification module

* Fix sanity check

* Change thread_ts to thread_id
6 years ago
Lars b6b238ae43 facts: suse: fix SLES4SAP12 detection (#44388) 6 years ago
Tim Rupp 16032d37c4
Removes f5-sdk from bigip_service_policy (#48033) 6 years ago
Tim Rupp 11ff831998
Remove f5-sdk from bigip_snat_pool (#48030) 6 years ago
Tim Rupp 1373a25ed3
Remove the f5-sdk from bigip_smtp (#48032) 6 years ago
Tim Rupp 438827ca4d
Remove f5-sdk from bigip_snmp (#48029) 6 years ago
Tim Rupp 45e990c5f8
Remove the f5-sdk from snmp community module (#48028) 6 years ago
Tim Rupp 6b14bab750
Fixes ansible unit tests for bigip_software_install (#48025) 6 years ago
Tim Rupp 5afe77933b
Removes the f5-sdk from bigip_snmp_trap (#48027) 6 years ago
Tim Rupp b45b2b3cc4
Fixes unit tests for bigip_software_image (#48026) 6 years ago
Tim Rupp a90bf9fb32
Removes f5-sdk from bigip_software_update (#48024) 6 years ago
Tim Rupp 787b12e016
Adds the bigip_ssl_ocsp module (#48018)
This module can be used to manage OCSP profiles on a BIG-IP
6 years ago
Tim Rupp 32e77c12e0
Fixes to bigip_static_route (#48017)
Corrects documentation. Fixes unit tests, Fixes ip address checks
for gateway_address
6 years ago
Tim Rupp f25d9a1b30
Remove sdk and deprecated features (#48016)
This removes deprecated params and the f5-sdk from the sys_global module
6 years ago
Tim Rupp 96c9d9fdaa
Removes the f5-sdk from bigip_sys_db (#48015) 6 years ago
Tim Rupp f9402e5a91
Removes the f5-sdk from timer policy module (#48014) 6 years ago
Tim Rupp d8a8c21efe
Removes the f5-sdk from the traffic group module (#48008) 6 years ago
Tim Rupp 24be9c030c
Remove f5-sdk and add qinq ethertype (#48006)
This patch removes the f5-sdk from bigip trunk and adds the qinq
ethertype parameter
6 years ago
Tim Rupp b4af058c55
Fixes unit tests and token cleanup (#48005)
The unit tests in 2.8 were broken. this fixes them and adds a token
cleanup to the bigip_tunnel module
6 years ago
Tim Rupp 2a69dfb22f
Removes f5-sdk from bigip_ucs module (#48003)
This patch removes the usage of the f5-sdk from the bigip_ucs module
6 years ago
Tim Rupp f6309d19a3
Removes f5-sdk from bigip_uce_fetch module (#48002)
This is part of the ongoing effort to fully remove the f5-sdk from
the f5 ansible modules
6 years ago
Tim Rupp 5b5d41e958
Removes the f5-sdk from bigip_user (#47794)
This is more work in the ongoing effort to remove the f5-sdk from
all f5 ansible modules
6 years ago
f-bor 35b97a2fa7 edgeswitch_facts (#47618) 6 years ago
saichint b92556549e Add new configurations for nxos_vxlan_vtep (#47834)
* add new commands for vxlan

* review comments

* fix unit test

* fix sanity yaml spaces
6 years ago
Stephan Müller 00bab2d24d [docker_network] add ipv6 support (#47492)
* [docker_network] add ipv6 support

* docker_network: review ipam_options

* docker_network: fix requirements

* docker_network: fix deprecation notice

* docker_network: add minimum docker version change

* docker_network: remove trailing whitespace

* docker_network: revert rename of network_four #discussion_r228707101

* docker_network: refactor IPAM config comparison #discussion_r228707255, #discussion_r228707280

* docker_network: correct spelling of IPv4 and IPv6 #discussion_r228707114, #discussion_r228707138

* docker_network: manually remove networks #discussion_r228709051

* docker_network: refactor enable_ipv6 condition #discussion_r228707317

* docker_network: add mutually_exclusive #discussion_r228707185

* docker_network: fix iprange #discussion_r228709072

* docker_network: add auxiliary addresses in examples and tests

* docker_network: link to docker docs #discussion_r228707018

* docker_network: remove list default #discussion_r228707060, #discussion_r228709091

* docker_network: introduce params syntax for create_network() #discussion_r228709031

* docker_network: beautify code

* docker_network: resolve change requests

* docker_network: add yaml header

* docker_networking: fix get_ip_version

* docker_network: extend CIDR test

* docker_network: use backported unittest2 for python 2.6

* docker_network: migrate unittest to pytest
6 years ago
Matt Martz 042a0cff23
Add unit tests for unsafe_proxy (#47887)
* Add unit tests for unsafe_proxy

* Remove unused import

* Address comments

* Add inheritance test
6 years ago
anasbadaha dc8b3e94ad Adding IGMP vlan module for onyx switches (#47811)
Signed-off-by: Anas Badaha <anasb@mellanox.com>
6 years ago
anasbadaha 760e57f877 Adinng new module for supporting PTP interface in Onyx switches (#47489)
Signed-off-by: Anas Badaha <anasb@mellanox.com>
6 years ago
anasbadaha dea9e9b4c8 Adding new module for supporting PTP Global Protocol (#47501)
Signed-off-by: Anas Badaha <anasb@mellanox.com>
6 years ago
Lindsay Hill a1b0d20368 New voss_config module (#47533)
* New voss_config module

* Updated test import paths as per #46996
6 years ago
Felix Fontein 73533d3fc2 docker_* modules: simplify idempotency comparisons (#47709)
* More generic comparison code from docker_container to docker_common.

* More flexibility if a is None and method is allow_to_present.

Note that this odes not affect docker_container, as there a is never None.

* Update docker_secret and docker_config: simplify labels comparison.

* Added unit tests.

* Use proper subsequence test for allow_more_present for lists.

Note that this does not affect existing code in docker_container, since lists
don't use allow_more_present. Using allow_more_present will only be possible
in Ansible 2.8.

* pep8
6 years ago
Susant Sahani 2596ac196f nmcli: Introduce VxLan (#45932)
This work enables to add vxlan via nmcli module

```
  - nmcli:
      type: vxlan
      conn_name: vxlan_test1
      vxlan_id: 16
      vxlan_local: 192.168.1.2
      vxlan_remote: 192.168.1.5
```
ansible 2.8.0

revision 1: Added tests

Signed-off-by: Susant Sahani <susant@redhat.com>
6 years ago
Tim Rupp 1ddfac5ad5
Fixes unit tests for vcmp guest module (#47792)
Tests were not working for ansible 2.8
6 years ago
Tim Rupp 1aae9ad282
Remove f5-sdk from bigip_virtual_address module (#47791)
Removes the f5-sdk and fixes unit tests for ansible 2.8
6 years ago
Tim Rupp 3ad1cb5619
Adds bigip_device_syslog module (#47790)
This module can be used to alter the device syslog settings and
priorities for syslog settings
6 years ago
Tim Rupp e0d2419683
Adds firewall global rules module (#47789)
This module allows the user to change global rules in AFM firewalls
6 years ago
Tim Rupp 10f3e0c187
Adds module to manage cookie persistence profiles in BIG-IP (#47786) 6 years ago
Tim Rupp 7336dd595b
Adds ipsec policy module for BIG-IP (#47785)
Allows users to manage IPSec policies on a BIG-IP
6 years ago
Tim Rupp 9d2f68e00a
Adds bigip_traffic_selector module (#47784)
This module enables the user to manage traffic selector policies on a BIG-IP
6 years ago
Tim Rupp d69b8e4bfd
Import mdule for managing sys daemon logs in BIG-IP (#47783)
This module allows one to manage the daemon log settings in tmm on BIG-IP
6 years ago
Tim Rupp 9d351f2ee7
Adds bigip profile for http2 (#47782)
This allows one to manage HTTP2 profiles on a BIG-IP
6 years ago
Tim Rupp f80288c0c4
Adds bigip_monitor_ldap module (#47781)
Adds new module to manage LDAP monitors on a BIG-IP
6 years ago
Tim Rupp 114d591f31
Adds bigip_ike_peet module (#47780)
Adds new module to managing IKE peers
6 years ago
Tim Rupp 8edbfb488c
Adds new parameters to bigip_vlan (#47777)
Also fixes unit tests to work in ansible 2.8
6 years ago
Tim Rupp 7c84ba8051
Fixes tests in bigip_wait for ansible 2.8 (#47773) 6 years ago
Tim Rupp 38844194ae
Fixes bigiq unit tests for ansible 2.8 (#47771)
fixes the unit tests for bigiq in ansible 2.8 because changes broke them
6 years ago
Tim Rupp 8ede4c5e60
Adds more facts to bigiq_device_facts (#47765)
Adds more facts to the bigiq_device_facts module
6 years ago
Tim Rupp cbc8571809
Adds fixes to the bigiq unit tests (#47763)
The tests were not working on ansible 2.8. This fixes that.
6 years ago
Tim Rupp 6e28b7d572
Remove the f5-sdk from more bigiq modules (#47721) 6 years ago
Ganesh Nalawade 17fea30841
Revert "enhance recv calls in network_cli (#47345)" (#47731)
This reverts commit c649d0ea32.

The change results in deadlock in network_cli while it is
waiting to check the return value of recv_ready() which
was added in this commit to improve performance
6 years ago
Tim Rupp d5d18a995a
Removes f5 sdk from bigiq modules and fixes unit tests (#47720) 6 years ago
Tim Rupp b7a937cb0d
Updates bigiq_utility_license_assignment for ansible 2.8 (#47719) 6 years ago
f-bor c649d0ea32 enhance recv calls in network_cli (#47345)
* enhance recv calls in network_cli

* updated network_cli test unit

* enhance recv calls in network_cli

* fix mistake

* better timeout management

* remove exception trigger

* test

* test2

* restore exception and timeout

* ganeshrn's way

* correction

* timeout and exception return
6 years ago
Ingate Systems 9fe20123cf modules: network: Add initial support for Ingate modules (#47494)
* modules: network: Add initial support for Ingate modules

* modules: network: Add ingate module ig_unit_information

* module_utils: network: ingate: Use default 'v1' for version

* modules: network: ingate: Remove unused code
6 years ago
Matt Clay 8f072ea0f5 Fix sanity test failure. 6 years ago
Brian Coca 581b6aed2e really skip if no boto3
makes no sense to check/skip after you already fail to import
6 years ago
Jocelyn Jaubert 4352a4e54d interfaces_file: Add test for pre-up/post-up with inet/inet6 6 years ago
Jocelyn Jaubert bd7001cdb6 interfaces_file: Add test for changing ipv4 or ipv6 address through address_family 6 years ago
Jocelyn Jaubert a4916e848d interfaces_file: Add test for multiple address_family for same iface 6 years ago
Ganesh Nalawade 335a979f1d
Fix prompt mismatch issue for ios (#47004)
* Fix prompt mismatch issue for ios

Fixes #40884 #44463

*  If the command prompt is matched check if data is
   still pending to be read from buffer.
*  This fix adds a new timer `buffer_read_timeout`
   which will be trigerred after command prompt
   is matched and data is attempted to be read from channel.
   If not data is present of channel the timer will expire
   and response we be returned to calling function.

* Fix unit test failure

* Update to make buffer timeout float

* Update doc and fix review comment

* Fix CI issues

* Update doc

* Fix review comments

* Fix review comments
6 years ago
Matt Clay 37b013aca3
Enable additional pylint rules and resolve issues found. (#47221)
* Resolve unneeded-not.
* Resolve global-at-module-level.
* Resolve useless-import-alias.
* Resolve bad-whitespace.
* Resolve global-variable-not-assigned.
* Resolve logging-not-lazy.
* Resolve comparison-with-itself.
6 years ago
Aaron 9c08ff7a94 [aws] New module: iam_password_policy (#36200)
* Adding iam_password_policy module

* fixing various issues -- error handling, bugs

* fixing various issues based on tests

* renaming dummy var

* fixing type reference in documentation

* adding int tests and other updates

* removing typo

* fixing auth for int tests

* removing int tests for now

* readding integration tests w/ unsupported designation

* removing conflicting group

* Update aliases

* Fix unused variable
6 years ago
Steve Dodd ee6ab5d5aa Add support for IOS vlan parsing filter. (#40555)
* Add support for IOS vlan parsing filter.
Example usage below:

{% set parsed_vlans = vlans | vlan_parser %}
switchport trunk allowed vlan {{ parsed_vlans[0] }}
{% for i in range (1, parsed_vlans | count) %}
switchport trunk allowed vlan add {{ parsed_vlans[i] }}

* Update test_network.py

Add import statement for filter

* Fixed PEP8 issues relating to comments

* Fix PEP8 issues related to blank lines

* Removed magic numbers for line lengths. This should generalize support
to other IOS-like NOS that use similar methods for listing vlans. The
default arguments for line lengths will still be specific to Cisco IOS.
The unit tests for line length are still specific to Cisco IOS.
6 years ago
Fran Fitzpatrick ab8ed2f84d Add unit tests for junos terminal (#47103) 6 years ago
Matt Clay 3033fd96b0
Move unit test compat code out of `lib/ansible/`. (#46996)
* Move ansible.compat.tests to test/units/compat/.
* Fix unit test references to ansible.compat.tests.
* Move builtins compat to separate file.
* Fix classification of test/units/compat/ dir.
6 years ago
Matt Martz a06a5ded61
Do not use mutable defaults in FieldAttribute, instead allow supplying a callable for defaults of mutable types. Fixes #46824 (#46833) 6 years ago
dangoscomb fb72a5424c nmcli: fix vlan connection modification Fixes #42322 (#42415)
* ensure optional items are set to empty strings rather than not presented
fix syntax of vlan modification command

* extended tests for nmcli
6 years ago
anasbadaha 2c24cfb401 Add support for IGMP interfaces on onyx switches (#46218)
Signed-off-by: Anas Badaha <anasb@ufm-host08-004.mtr.labs.mlnx>
6 years ago
Matt Clay 0785656344 Fix vmware_inventory unit tests so they run. 6 years ago
lwm 8d0f823de0 Add a Linode v4 dynamic inventory plugin. (#45902)
* Add a Linode v4 dynamic inventory plugin.

Closes https://github.com/ansible/ansible/issues/44721.

* Use the latest API for accessing host variables.

References:

  * https://github.com/linode/linode_api4-python/issues/141

* Minor docs formating
6 years ago
Toshio Kuratomi 473f70c21a Mocking out __future__ could cause problems 6 years ago
Matt Clay a11f631ee4 Python 3.8 collections compatibility fixes.
Includes a new pylint blacklist plugin to prevent regressions.
6 years ago
Matt Clay 1a28898a00 Fix parametrize warning in unit tests. 6 years ago
Sloane Hertel 27534e9b47 Move network utils that are used by AWS modules (#45579)
* Separate networking tools that may be used by modules outside of networking so changes to networking-only utilities don't trigger AWS integration tests

* Add unit tests for moved network utils

* Add comment to prevent imports from being mistakenly removed

* Move to_bits as well
6 years ago
Egor Zaitsev 6df1f6b203 New module: routeros_facts – collect facts from RouterOS devices (#46114)
* feat(routeros): implement routeros_facts module

* fix(routeros): review by felixfontein

* fix(routeros): review by ganeshrn

* fix(routeros): review by felixfontein
6 years ago
Brian Coca d3d812b604 avoid tests when ncclient is not installed 6 years ago
Dag Wieers d6bd52ad59 Add unit tests 6 years ago
Matt Clay 04ddadd89b Move module tests using TQM to integration tests. 6 years ago
Brian Coca 32ec69d827
allow jinja2 unique filter compat (#45637)
* allow jinja2 unique filter compat
* detect if unique is provided, fallback with warning
* handle j2 specific params
* now all filters using unique must pass environment
* added env to tests

also normalized on how we normally import and use exceptoins
6 years ago
Dan a6c20488d3 Add ospf net type (#45904)
* Added ospf network type option to nxos_interface_ospf module

* Added documentation and example for the 'network' parameter

* adding version
6 years ago
Matt Martz c0915e2f5a
Support nested JSON decoding in AnsibleJSONDecoder (#45924)
* Support nested JSON decoding in AnsibleJSONDecoder

* Add tests for vault portion of AnsibleJSONDecoder
6 years ago
Sam Doran b60854357b
Unify terms and UI between 1Password lookups and facts module (#45427)
* Unify login behavior between 1Password lookup plugins and module

- Use the same names for all credential aspects
- Only require the minimal amount of information for each
- Add more examples

* Change parameter terms

- use terms in line with 1Password documentation.
- update examples
- update tests

* Improve error messages in lookup plugin

* Unify onepassword_facts with lookup plugins

- use same methods and logic for signing in or reusing existing session
- unify terms with lookup plugins

* Change rc test for determing login

An rc other than 1 can be returned when a current login session does not exist.

* Create AnsibleModuleError class

ansible.errors is not available to modules, so create an AnsibleModuleError class within the module

Do not user os.path.expanduser since this is already done by virtue of the type being "path" in the argument spec.

* Add note about risk with fact caching sensitive data

* Add note on op version that was used for testing
6 years ago
Matt Martz 95e77ac853
Ensure that the src file contents is converted to unicode in diff info (#45744)
* Ensure that the src file contents is converted to unicode in diff info. Fixes #45717

* Fix up and cleanup

* The diff functionality in the callback plugins should have the
  to_text() calls removed since we're now doing it in ActionBase
* catching of UnicodeError and warnings in the callback diff
  functionality from 61d01f549f haven't been
  needed since we switched to to_text so remove them.
* Add a note to ActionBase's diff function giving an example of when the
  diff function will be inaccurate and how to fix it

* Fix callback get_diff() tests

I believe the unittests of callback's get_diff() were wrong.  They were
sending in a list where strings were expected.  Because previous code
was transforming the lists into strings via their repr, the previous
tests did not fail but they would have formatted the test cases output
in an odd way if we had looked at it.
6 years ago
Nathaniel Case 406b59aeba
Move persistent connections to only use registered variables (#45616)
* Try to intuit proper plugins to send to ansible-connection

* Move sub-plugins to init so that vars will be populated in executor

* Fix connection unit tests
6 years ago
Dag Wieers cb4bf04be6 Fix pylint error on utf8 character in string (#45880)
Small fix
6 years ago
Felix Fontein bc69aeca7f Fixing HTTPError case of fetch_url for Python 3 compatibility. (#45628)
* Fixing HTTPError case of fetch_url for Python 3 compatibility.

* Adding unit test.

* PEP8.

* Changelog.
6 years ago
Tim Rupp ccfbed3dbc
Adds bigiq_device_facts module (#45822)
This module can be used to query a variety of facts from a BIG-IQ
6 years ago
Matt Clay abe8e4c9e8
Run unit tests in parallel. (#45812) 6 years ago
Matt Clay 53b230ca74 Fix unit test parametrize order on Python 3.5. 6 years ago
Matt Clay 0686450cae
Fix unit tests which modify the source tree. (#45763)
* Fix CNOS unit test log usage.
* Use temp dir for Galaxy unit tests.
* Write to temp files in interfaces_file unit test.
* Fix log placement in netapp_e_ldap unit test.
6 years ago
Sloane Hertel 2167ce6cb6
Remove placeboify from unit tests that are not calling AWS (i.e. creating a recording) (#45754) 6 years ago
Sloane Hertel 5467ac3454
[aws unit test utils] only create a recordings directory when the env var is set (#45752)
* Only create placebo recording test directories when the environment variable PLACEBO_RECORD is set
6 years ago
Aidan Feldman fa18d45eb3 Link to the Galaxy platforms list from the meta file template (#34046)
* Link to the Galaxy platforms list from the meta file template
Fixes https://github.com/ansible/galaxy/issues/52.
* make ansible/ansible text match mazer text on platforms
6 years ago
Maugli 235b11f681 Return correct version on installed VyOS (#39115)
* Return correct version on installed VyOS

Previously existing regexp will shows only "VyOS" without numeric output of router version.
For example: from  "Version:      VyOS 1.1.6" only VyOS will be written in ansible_net_version variable
For more informative output numeric value should be returned as well

* Fixed unittests
6 years ago
Anton Nikulin b7263eab1d Store Authorization header inside HttpApi connection plugin (#45598) 6 years ago
Nathaniel Case 285b927889
network command modules cleanup (#45242)
* Standardize _command modules

* Centralize command transformation process

* Fix check mode error test
6 years ago
Nathaniel Case 0b433b3ea9
Clean up after cnos tests (#45564) 6 years ago
Anil Kumar Muraleedharan ac58c36ad0 Lenovo cli bugfixes (#45278)
* To change all CLIs present in the code to latest CNOS CLI. One bug of executing with Lenovo Jakku switch is also getting fixed.

* To change the file names as the commands have changed from display to show

* To change to new CLI in test_cnos_comand.py as well
6 years ago
Matt Clay c0bf9815c9 Fix ACI unit test on Python 3.7.0.
The previous logic was only needed for pre-release versions of 3.7.
6 years ago
James Cassell 211aeebd0d remove unused templar._clean_data() (#42739) 6 years ago
Jon Dufresne ef67d4074b Prefer io.BytesIO over six; available on all supported Pythons (#45388)
On all supported Pythons, the io.BytesIO is always a stream
implementation using an in-memory bytes buffer. Makes code slightly more
forward compatible by reducing use of the six module.
6 years ago
Matt Clay f7979e4938 Skip ipaddr test that fails on Python 3.7+. 6 years ago
Abhijeet Kasurde 4e9b8136c2 Add support for Devuan (#45148)
Devuan is part of Debian family. This fix adds support for Devuan OS.

Fixes: #45047

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Ganesh Nalawade c0326aea2f
Fix cli_command multiple prompt issue (#44922)
* Add check in network_cli to handle all prompts

* Add check_all flag to mandatory handle all the command prompt
  in prompts list. By default if any one prompt is handled
  remaining prompts are ignored.

* Fix cli_command multiple prompt issue

* If multiple prompt and answers are given as input network_cli
  handles only the first prompt that matched by default
* If a command execution results in muliple prompt the fix
  add support to set a boolean option C(check_all) to indicate
  network_cli to wait till all the prompts and answers are processed.

* Update cli_command

* Update api doc

* Fix unit test failure

* Fix CI failure

* Update network_cli

* Fix review comment
6 years ago
Deepak Agrawal 50c7702e46
cisco firepower : Make API endpoints configurable via hostvars (#44952)
* httpapi host vars

* Make configurable end-points for firepower

* pep8 fix
6 years ago
Alex Stephen 276ad32a45 removing libcloud secrets support for legacy gcp modules (#44932)
* removing libcloud secrets support for legacy gcp modules

* test fixes
6 years ago
Nilashish Chakraborty 0f268e70a1
Fix ios_user issues (#44904)
* Fix ios_user issues

* Modify regex and fix unittests
6 years ago
Alex Stephen 3550f342e0 Gcp auth deprecation (#44866) 6 years ago
Sam Doran 8cd8d17980
Add ability to unlock 1Password vault to lookup plugins (#44923)
* Add ability to use login to 1Password vault to 1Password lookups

* Adjust unit tests

* Add changelog
6 years ago
Senthil Kumar Ganesan a64b97da42 Support for Openswitch (OPX) Control Plane Services (CPS) Module (#44745)
* Generic module to support Openswitch (OPX) Contorl Plane Services (CPS)

* Address ansible-test sanity issues
6 years ago
Ganesh Nalawade 1a684df109
Fix iosxr cli_config module diff issue (#44898)
* Fix iosxr cli_config module diff issue

* Modify iosxr plugin to support configuration
  diff capability (get_diff()) within Ansible
  to be in sync with iosxr_config module.

* Fix unit test case failure
6 years ago
Matt Martz 0221d1ad20
Introduce and use locale-naive rfc2822 date format function (#44868)
* Introduce and use locale-naive rfc2822 date format function. Fixes #44857

* Adjust test expected response
6 years ago
Ghilli3 7bc2660017 fortimanager/fmgr_provisioning.py (#35743)
* Initial commit for new provisioning module
6 years ago
pierremahot d11e078366 adding an option for the filter ipsubnet and testing (#40670)
* adding an option for the filter ipsubnet
6 years ago
lwm fbcdf8ba5b Linode: Mark 'name' as required. Fixes #29785 (#44699)
* Mark 'name' parameter as required.

Closes https://github.com/ansible/ansible/issues/29785.

* Add the `linode-python` dependency for unit tests.

* Add unit test for linode name parameter.

* Add note about where to find required arguments.

Closes https://github.com/ansible/ansible/issues/44696.
6 years ago
Anton Nikulin 40a97d43d1 New modules and updated HTTP API plugin for FTD devices (#44578)
* Add common and Swagger client utils for FTD modules

* Update FTD HTTP API plugin and add unit tests for it

* Add configuration layer handling object idempotency

* Add ftd_configuration module with unit tests

* Add ftd_file_download and ftd_file_upload modules with unit tests

* Validate operation data and parameters

* Fix ansible-doc, boilerplate and import errors

* Fix pip8 sanity errors

* Update object comparison to work recursively

* Add copyright
6 years ago
Michael Price 70fd1ec130 Define module for NetApp E-Series iSCSI targets (#40632)
Create a new module for managing E-Series iSCSI targets.
6 years ago
ndswartz d31e25acbd Define netapp_e_mgmt_interface storage module. (#42519)
* Define netapp_e_mgmt_interface storage module.

The netapp_e_mgmt_interface module provides management configuration for
e-series storage array interface points including remote ssh access, NTP
and DNS services.

This patch also includes integration and unit tests.

* Fix netapp_e_mgmt_interface ssh option documentation and name/channel exclusivity.
6 years ago
Michael Price 054b87acb8 Define module for managing E-Series email alerts (#42643)
Email alerts can be enabled for an E-Series system to provide
information to interested users by email when a warning or critical
level event occurs on the system. This module will allow a system owner
to configure whether or not system alerts are enabled, and who will
receive them.
6 years ago
Michael Price 97157cf876 New module for managing NetApp E-Series iSCSI Interfaces (#39877)
* New module for NTAP E-Series iSCSI Interfaces

Define a new module for configuring NetApp E-Series iSCSI interfaces.

* Improve netapp_e_iscsi_interface integration tests

Restructured integration test to set all iscsi ports to disabled, then
defines the ports either statically or with dhcp, next updates the ports
with the other definition type (static <-> dhcp), and lastly disables
all ports.  Each netapp_eseries_iscsi_interface call is verified with the
array.
6 years ago
Michael Price f781f341a2 Define NetApp E-Series ASUP module (#41153)
* Define NetApp E-Series ASUP module

ASUP, or Auto-Support, is a mechanism that allows NetApp support
to receive information on the status of E-Series storage-systems
in order to proactively resolve issues for customers. This module
gives customers the ability to tune ASUP settings to their liking,
including disabling the feature entirely.

* Improved testing for netapp_e_asup module

Added coverage and validation to asup integration and unit testing
6 years ago
Michael Price 1f2ae0d4cd Define a module for managing E-Series settings (#41010)
There are multiple settings that are defined at a global level for
E-Series systems, but don't necessarily fit with anything else. This
module is intended to provide a place to encapsulate those.
6 years ago
ndswartz cf41415bdf Define netapp_e_auditlog storage module. (#42535)
This module allows NetApp E-Series storage system's audit-log feature to be configured.
6 years ago
ndswartz 7eda94dc8d Defined netapp_e_syslog storage module (#42421)
Module allows syslog server configuration on NetApp E-Series storage arrays.
6 years ago
Michael Price feb212b0a1 Define module for managing LDAP for E-Series (#42356)
This module will allow users to manage LDAP authentication domains for
accessing E-Series systems.
6 years ago
Tim Rupp 0dacc606b4
Various fixes for f5 modules (#44734)
A number of bugfixes for the remaining 2.7 work on the F5 modules.
6 years ago
Tim Rupp c7eeb37f64
Adds bigip_software_install module (#44733)
This module can be used to install existing images on a bigip.
6 years ago
Matthias Fuchs 7871027c9d Share the implementation of hashing for both vars_prompt and password_hash (#21215)
* Share the implementation of hashing for both vars_prompt and password_hash.
* vars_prompt with encrypt does not require passlib for the algorithms
  supported by crypt.
* Additional checks ensure that there is always a result.
  This works around issues in the crypt.crypt python function that returns
  None for algorithms it does not know.
  Some modules (like user module) interprets None as no password at all,
  which is misleading.
* The password_hash filter supports all parameters of passlib.
  This allows users to provide a rounds parameter, fixing #15326.
* password_hash is not restricted to the subset provided by crypt.crypt,
  fixing one half of #17266.
* Updated documentation fixes other half of #17266.
* password_hash does not hard-code the salt-length, which fixes bcrypt
  in connection with passlib.
  bcrypt requires a salt with length 22, which fixes #25347
* Salts are only generated by ansible when using crypt.crypt.
  Otherwise passlib generates them.
* Avoids deprecated functionality of passlib with newer library versions.
* When no rounds are specified for sha256/sha256_crypt and sha512/sha512_crypt
  always uses the default values used by crypt, i.e. 5000 rounds.
  Before when installed passlibs' defaults were used.
  passlib changes its defaults with newer library versions, leading to non
  idempotent behavior.

  NOTE: This will lead to the recalculation of existing hashes generated
        with passlib and without a rounds parameter.
        Yet henceforth the hashes will remain the same.
        No matter the installed passlib version.
        Making these hashes idempotent.

Fixes #15326
Fixes #17266
Fixes #25347 except bcrypt still uses 2a, instead of the suggested 2b.

* random_salt is solely handled by encrypt.py.
  There is no _random_salt function there anymore.
  Also the test moved to test_encrypt.py.
* Uses pytest.skip when passlib is not available, instead of a silent return.
* More checks are executed when passlib is not available.

* Moves tests that require passlib into their own test-function.

* Uses the six library to reraise the exception.

* Fixes integration test.

When no rounds are provided the defaults of crypt are used.
In that case the rounds are not part of the resulting MCF output.
6 years ago
Tim Rupp 24a379f0b7
adds the bigip_cli_script module (#44674)
This module can be used to manage tmsh cli scripts on a BIG-IP
6 years ago
Toshio Kuratomi 8ec973b453 Fix unittests for always adding basic to the AnsiBallZ zips 6 years ago
Tim Rupp ee1b899b18
Adds AS3 module (#44655)
This adds the as3 module for bigip to ansible.
6 years ago
Tim Rupp 639cfe3b6f
Refactors device group (#44599)
Make module use patterns that other modules use
6 years ago
Michael Price ad91793428 Resolve issues in NetApp E-Series Host module (#39748)
* Resolve issues in NetApp E-Series Host module

The E-Series host module had some bugs relating to the update/creation
of host definitions when iSCSI initiators when included in the
configuration. This patch resolves this and other minor issues with
correctly detecting updates.

There were also several minor issues found that were causing issues with
truly idepotent updates/changes to the host definition.

This patch also provides some unit tests and integration tests to help
catch future issues in these areas.

fixes #28272

* Improve NetApp E-Series Host module testing

The NetApp E-Series Host module integration test lacked feature test
verification to verify the changes made to the storage array.

The NetApp E-Series rest api was used to verify host create, update, and
remove changes made to the NetApp E-Series storage arrays.
6 years ago
Samer Deeb a07af2a1f7 issue:43021 add support for onyx version 3.6.6000 and above (#44527)
* issue:43021 add support for onyx version 3.6.6000

Signed-off-by: Samer Deeb <samerd@mellanox.com>

* issue:43021 add support for onyx version 3.6.6000

Signed-off-by: Samer Deeb <samerd@mellanox.com>
6 years ago
Toshio Kuratomi f46c943d3d Fix another corner case of too many warnings for world readable current working directory
There should be no warning if there is no ansible.cfg file i nthe
current working directory.
6 years ago
Matt Martz dab975d302
Unit tests for ansible.playbook.become (#38541) 6 years ago
Matt Martz 88509e75ad
Remove bare_deprecated functionality (#44517)
* Remove bare_deprecated functionality

* Change tests due to bare_deprecated removal
6 years ago