1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
Commit graph

2756 commits

Author SHA1 Message Date
Matt Martz
a0d7d4b82f Change insertion order of apply block to not affect the include_X task itself (#44912) 2018-08-30 16:56:28 -04:00
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
2018-08-30 16:24:06 -04:00
Ken Partridge
0b7a37c67b Add lookup cpm_metering to read WTI CPM and VMR PDU device power and current data (#44491)
* Add WTI OOB and PDU Device status, control and configuration module

* removed accidental file inclusions

* removed accidental file

* re-add cpm_metering

* was gettign a ERROR: Command "docker exec from GitHub, so this is a retry

* removed un-needed files

* removed old cpm_metering

* removed cpm_metering.py

* re-add cpm_metering

* removed pyc file

* re-added cpm_metering.py

* cleaned up EXAMPLES indentation

* EXMAPLES startdate, enddate had : instead of = to indicate a value

* Fixed missing whitespace around arithmetic operator
2018-08-30 15:53:38 -04:00
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
2018-08-30 21:39:11 +05:30
Dag Wieers
bf9ed0263a Ensure action plugins accept only valid args (#44779)
* Ensure action plugins accept only valid args

This fixes #25424
This also fixes #44773

* Add missing parameters, use private _VALID_ARGS
2018-08-30 09:40:36 -04:00
Justin Yaple
a767929456 Fix 'macro name' timeout (#44001)
* Fix 'macro name' timeout

Added function to send macro to device using 'sendonly'.

* Filter 'macro' from normal commands

* Removed white space

* Undefined variable 'cmd'
2018-08-30 18:11:51 +05:30
pierremahot
d11e078366 adding an option for the filter ipsubnet and testing (#40670)
* adding an option for the filter ipsubnet
2018-08-30 13:21:22 +01:00
Nathaniel Case
149aa767ff
Setting options is fine if plugins already exist (#44859) 2018-08-29 16:33:51 -04:00
Pilou
c07ba82d3e Scaleway inventory: allows to connect via private IP (#44342)
* scaleway inventory: remove useless duplicate

* scaleway inventory: allows to connect using private ip

ansible_host was hardcoded and it was not possible to connect using
private addresses.
This allows to define multiple host variables, values are templates
which can use hosts details send by API. For example this config file
use private address and defines two variables:

    plugin: scaleway
    hostnames:
      - hostname
    variables:
      ansible_host: private_ip
      state: state
      image: image.name
    regions:
      - ams1

inventory will looks like:

    {
        "_meta": {
            "hostvars": {
                "testhost": {
                    "ansible_host": "10.1.1.1",
                    "arch": "x86_64",
                    "commercial_type": "START1-M",
                    "hostname": "testhost",
                    "id": "af669464-0c74-4c89-8573-9fe763028448",
                    "image": "CentOS 7.4",
                    "organization": "2cc9a115-380d-4ac0-ba4b-8947eee71325",
                    "public_ipv4": "163.172.1.1",
                    "public_ipv6": "2001:bc8::1",
                    "state": "running",
                    "tags": [
                        "testtag"
                    ]
                }
            }
        },
        [...]
    }
2018-08-29 12:14:12 -04:00
Ganesh Nalawade
eb9c75caad
Fix rollback option in cli_config module (#44834)
* Fix rollback option in cli_config module

* Update rollback flag in cliconf plugins
* Add rollback api for junos cliconf plugin

* Update doc

* Update doc
2018-08-29 21:00:11 +05:30
Jordan Borean
559599842a windows async: return pipeline output in case of a failure (#44807) 2018-08-29 16:13:31 +02:00
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
2018-08-29 15:48:10 +02:00
Nathaniel Case
86f96d0212
Move plugin option settings. (#44774)
* Move plugin option settings.

* Add default value and clear after use.
2018-08-28 17:30:50 -04:00
Jordan Borean
0c3216c565 win_reboot: fix minor issues with the latest refactor (#44740)
* win_reboot: fix minor issues with the latest refactor

* Always return elapsed with win_reboot
2018-08-28 17:25:37 -04:00
Matt Martz
113bdec2ed Fix subelements lookup docs example (#44782)
* Fix subelements lookup docs example

* Fix grammar
2018-08-28 16:52:07 -04:00
Rémy Léone
70adbb87d9 Added private_ipv4 to the hostvars in Scaleway dynamic inventory (#44122) 2018-08-28 16:35:38 -04:00
Rémy Léone
ea0f722d74 Fix verify_file check in Scaleway dynamic inventory (#44384) 2018-08-28 16:34:13 -04:00
Trishna Guha
1e7c745a5c
fix rollback option vyos cliconf (#44763)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-08-28 19:49:25 +05:30
Adam Miller
397febd343 YUM4/DNF compatibility via yum action plugin (#44322)
* YUM4/DNF compatibility via yum action plugin

DNF does not natively support allow_downgrade as an option, instead
that is always the default (not configurable by the administrator)
so it had to be implemented

 - Fixed group actions in check mode to report correct changed state
 - Better error handling for depsolve and transaction errors in DNF
 - Fixed group action idempotent transactions
 - Add use_backend to yum module/action plugin
 - Fix dnf handling of autoremove (didn't used to work nor had a
   default value specified, now does work and matches default
   behavior of yum)
 - Enable installroot tests for yum4(dnf) integration testing, dnf
   backend now supports that
 - Switch from zip to bc for certain package install/remove test
   cases in yum integration tests. The dnf depsolver downgrades
   python when you uninstall zip which alters the test environment
   and we have no control over that.
 - Add changelog fragment
 - Return a pkg_mgr fact if it was not previously set.
2018-08-27 10:17:47 -07:00
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.
2018-08-27 08:40:41 -07:00
Trishna Guha
79a020e312
junos cli_config idempotence fix (#44706)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-08-27 12:40:16 +05:30
Chris Coley
ce5530e08d Fix incorrect default value for shutdown_command (#44607) 2018-08-24 09:51:14 -04:00
Yanis Guenane
9869f378fd inventory/vultr: Few minor improvements (#44622) 2018-08-24 15:35:29 +02:00
Sam Doran
4d9218cec4 Add reboot action plugin (#35205)
* Update docs

* Add reboot action plugin

Refactor win_reboot so it is subclassed from reboot

* Use new connection methods

* Test fixes

* Use better uptime command for Linux

Use who -b to get the last time the system was booted rather than uptime, which changes every second.

* Use distribution specefic commands and flags

Query the managed node to determien its distribution, then set the appropriate command and flags.

* Tune debug messages a bit

* Update module docs with details about pre_reboot_delay

s docs

* Ensure that post_reboot_delay is a positive number

* Remove the stringification

* Add integration tests

* Make sure aliases are honored

* Handle systems that have an incorrect last boot time

SystemD and fakehw-clock do not properly set the
last boot time and instead always set it to epoch.
Use a different command if that is the case.

* Copyright and encoding fixes

* Minor fixes based on feedback

* Add exponential backoff to sucess check method

* Update integration test

Skip the integration test if it would try to reboot the control node. We need a new mechanism to account for this scenario in ansible-test, so tests must currently be run manually for this plugin.

* Update integration test

Skip the integration test if it would try to reboot the control node. We need a new mechanism to account for this scenario in ansible-test, so tests must currently be run manually for this plugin.

* Fail early with running with local connection

* Update docs based on feedback

* minor refactoring, state mgmt changes
2018-08-23 18:12:12 -07:00
Brian Coca
9cc56981b5
Add new host_pinned strategy (#44586)
The 'free' strategy still attempts to do all hosts per task before going to the next, it just doesn't wait for slow hosts,
This strategy processes each host as fast as possible to the end of the play before trying to process another host in the pool.
2018-08-23 20:16:32 -04:00
Matt Clay
3fb5056606 Fix PEP8 issue. 2018-08-23 16:43:59 -07:00
Sloane Hertel
b152515fcb RDS inventory plugin (#41919)
Comments out uses of rds_instance in the integration tests and replace with AWS CLI until rds_instance has been merged
2018-08-23 19:42:32 -04:00
Dag Wieers
3d70274864
Added an async 'started' test (like 'finished') (#43445) 2018-08-24 01:29:34 +02:00
Matt Martz
242e9229a1
Pin deprecation of tags in params for include to deprecation of include (#44596) 2018-08-23 16:25:33 -05:00
Yanis Guenane
72d4880b85 Vultr: Introduce the Vultr inventory plugin (#44400)
This commit introduce the Vultr inventory plugin.
2018-08-23 23:14:26 +02:00
Matt Martz
88509e75ad
Remove bare_deprecated functionality (#44517)
* Remove bare_deprecated functionality

* Change tests due to bare_deprecated removal
2018-08-23 11:31:16 -05:00
jctanner
653d9c0f87 New keyword: ignore_unreachable (#43857) 2018-08-23 11:41:02 -04:00
Lindsay Hill
6c05e03fea Replace invalid_params with ValueError (#44545) 2018-08-23 15:49:08 +02:00
Ganesh Nalawade
e25d8e2b99 Add support for multiple prompt answers in network_cli (#44492)
* Currently network_cli support multiple prompts
  single answer as response. This PR adds support
  for multiple answers.
* In case of multiple prompts and mulitple answers the
  index of a particular prompt in the prompts list should
  match with the index in the answer list.
2018-08-23 09:46:42 -04:00
Sumit Jaiswal
b1f915b28b
Added Support for excluding IPs in nios_next_ip and created new pluggin for nios_next_network (#44437)
* adding next network pluggin

* include exclude option for next_ip search

* changing example provider input

* adding new line at end

* version added info

* to fix shippable errors

* to fix shippable errors

* adding exclude option in doc section

* fix review comment

* fix review comment
2018-08-23 03:08:39 +00:00
Vladimir Dobriakov
6f480fd03d Fixes #23078 - eliminate trailing whitespace in to_nice_json (#42633)
* Fix #23078 - eliminate trailing whitespace in to_nice_json

* Add changelog fragment for #42633
2018-08-22 14:55:30 -05:00
Pablo
5f953d1129 Fix handlers on strategy free (#33011)
Add _flushed_hosts dict to store when handlers are flushed and prevent them
to be executed too early using _filter_notified_hosts.

Add _wait_on_handler_results to wait only for handlers to be completed.

Remove only hosts that have been flushed from handler notified list.

Fix #31504, #23970
2018-08-22 10:07:31 -04:00
Jordan Borean
6982dfc756 psrp: Added new Windows connection plugin (#41729)
* psrp: Added new Windows connection plugin

* Tweaks to connection options from review
2018-08-21 16:43:13 -07:00
Yunfan Zhang
18f361ecdd Added Ansible Tower inventory plugin. (#41816)
Signed-off-by: Yunfan Zhang <yz322@duke.edu>
2018-08-21 14:41:26 -04:00
Lindsay Hill
f10abe7bf5 add missing slxos_config action plugin (#44103)
* add missing slxos_config action plugin
2018-08-21 10:03:36 -07:00
Lindsay Hill
b0a25d321d new nos_config module (#44140)
* new nos_config module

* Update cliconf/nos.py to add missing 'end'
2018-08-21 10:02:40 -07:00
Joakim Israelsson
88659dcba4 Documentation fix, decrypt is True by default (#44435) 2018-08-21 09:21:25 -07:00
Matt Martz
2bf6507c44
Use newer is_sequence function instead of MutableSequence (#44331)
* Use newer is_sequence function instead of MutableSequence. Fixes #44327

* Add changelog for #44331

* Update changelog fragment to describe the fix in more detail
2018-08-21 10:42:11 -05:00
Ganesh Nalawade
ce541454e9
Update netconf_config module (#44379)
Fixes #40650
Fixes #40245
Fixes #41541

*  Refactor netconf_config module as per proposal #104
*  Update netconf_config module metadata to core network supported
*  Refactor local connection to use persistent connection framework
   for backward compatibility
*  Update netconf connection plugin configuration varaibles (Fixes #40245)
*  Add support for optional lock feature to Fixes #41541
*  Add integration test for netconf_config module
*  Documentation update
* Move deprecated options in netconf_config module
2018-08-21 20:41:18 +05:30
Ken Partridge
5b78b1032b Add module cpm_status for WTI device management (#42970)
* Add WTI OOB and PDU Device status, control and configuration module

* reorganized module names, removed multiple modules

* Fixed sanity check failures

* Fixed sanity check failures

* Fixed sanity check failures

* Fixed sanity check failures

* moved module from network directory to remote_management.
added validate_certs parameter
added example returned data.

* pep8 issues

* cpm_status code removed from module section and placed in plugins/lookup.
Modified module code to lookup style code

* EXAMPLE spacing format error

* EXAMPLE formatting

* removed split_line parameter. Return is exclusively formatted JSON

* display edits

* delete display debug text

* Change the examples to use YAML rather than k=v shorthand

* re-enabled "required" flags for cpm_username and cpm_password

* moved redundant ansible.module_utils._text import of to_native to previous ansible.module_utils._text import line

* Got unusual error from GitHub checkin of Unstable, bump to see if it happends again.
2018-08-20 21:56:06 -04:00
Matt Martz
617372f8c0
Mass nuke deprecated items that are easily removed. ci_complete (#44320) 2018-08-20 16:26:10 -05:00
Artem Leshchev
8323f3e3b7 Fix module name in error text at parse_xml filter (#44313)
* Fix module name in error text at parse_xml filter

* Fix test that includes erroneous module name in error text at parse_xml filter
2018-08-20 10:19:16 +05:30
stoned
e5f4987a8f Make mandatory filter error message more verbose (#44139)
...by adding the undefined variable/attribute name, if available.
2018-08-17 15:11:43 -04:00
Monty Taylor
e89e4c991c Fix openstack inventory plugin for API changes (#43580)
The inventory plugin api grew a self.cache that wasn't there when we
first wrote it. There's also a need to pull in the documentation
fragments so that we have the cache parameters.
2018-08-17 07:03:08 -04:00
Deepak Agrawal
aed6722fbc
DCI devel iosxr fix : on-device diffs does not work always (#44265)
* fix devel dci failure on iosxr

* pep8 issue fix
2018-08-17 12:34:11 +05:30