Commit Graph

2796 Commits (5a59748e6ccfc5ff9c474265cfb65263f6b65b43)

Author SHA1 Message Date
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
2018-12-07 10:21:11 -08:00
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
2018-12-07 13:19:08 +00:00
Bill Dodd 303c3494e6 remove non-standard CreateBiosConfigJob command (#48740) 2018-12-06 15:05:31 -05:00
Jose Delarosa d459c2c582 Fix idempotency issues 2 (#49333)
* Fix idempotency issues in set_manager_attributes

* Add changed status in set_bios_default_settings
2018-12-06 18:52:31 +00:00
Thomas Picariello c8ecac8dc2 Fix google auth scoping for unscoped credentials (#46740)
* Fix google auth scoping for unscoped credentials

* Add changelog fragment
2018-12-06 11:29:57 +00:00
Ganesh B Nalawade 329cbcf973 Fix in dict_merge to check for Mapping
*  Based on review comments for PR #49474 change the check
   for isinstance from `dict` to `Mapping`
2018-12-05 10:31:32 -08:00
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>
2018-12-05 13:13:40 +00:00
Naval Patel 880390ca0a Added new module lxca_nodes for Lenovo XClarity Administrator (#46767)
* Added new module lxca_nodes
2018-12-05 10:18:36 +00:00
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>
2018-12-04 10:11:29 +05:30
Paul Neumann 4c58fbc64d nxos: Make sure config ends with a linefeed (#48465)
The config parser on NX-OS does not deal with configs that do not end
with a linefeed correctly which leads to various issues when the config
is loaded from startup-config upon reboot. Therefore, ensure that the
config returned is terminated by a linefeed.
2018-12-03 19:26:26 +05:30
Felix Fontein b0c7efcc6b ACME: add diff to acme_account, account_public_key to acme_account_facts, and general refactoring (#49410)
* Only one exit point.

* Refactoring account handling.

* Add diff support for acme_account.

* Insert public_account_key into acme_account_facts result and into acme_account diff.

* Add changelog.
2018-12-02 18:40:14 +01:00
Felix Fontein 34c57b4c42 ACME: fix bug introduced in #49266, work around problem with Pebble (#49407) 2018-12-02 10:07:21 +01:00
Peter Sprygada 2a4be2748f fixes an issue with dict_merge in network utils (#41107)
This change address a problem where the dict_merge function would fail
due to the value being a nested dict.  This will now recursively pass
the value back through the dict_merge function.
2018-11-30 17:52:33 +05:30
Lex Rivera aa484c0835 Fix GCE and scaleway VM detection (#47193)
* Fix Google cloud engine & Scaleway VM detection
2018-11-30 10:38:43 +00:00
Felix Fontein 2bd8e47247 add acme_inspect module (#48444) 2018-11-30 08:26:18 +01:00
rajaspachipulusu17 fe147289b7 Pluribus Networks pn access list module (#49176)
* Pluribus Networks pn access list module
* Added shlex import which was missing and added correct author
* Added an extra space which is according to pep8
2018-11-30 12:40:43 +05:30
Douglas Fraser d6d16fa619 Extend DMI form factors list to match SMBIOS standard 3.2.0 (2018-04-26) (#42239)
Signed-off-by: Douglas Fraser <doug+git@idmf.net>
2018-11-29 09:16:32 -05:00
Felix Fontein 1e0ab16247 Add basic unit tests for module_utils/acme.py. (#49103) 2018-11-29 09:32:15 +00:00
Felix Fontein b842b1b97e ACME: improve error handling (#49266)
* Improve error handling: when parse_json_result is False, still return the error message.

* Remove content body from info dict.

* Add changelog.
2018-11-29 09:00:39 +01:00
Ganesh Nalawade 829fc0feda
Fix iosxr netconf plugin response namespace (#49238)
* Fix iosxr netconf plugin response namespace

*  iosxr netconf plugin removes namespace by default
   for all the responses as parsing of xml is easier
   without namepsace in iosxr module. However to validate
   the response received from device against yang model requires
   namespace to be present in resposne.
*  Add a parameter in iosxr netconf plugin to control if namespace
   should be removed from response or not.

* Fix CI issues

* Fix review comment
2018-11-29 13:21:41 +05:30
Jordan Borean 098b18e846
win basic - fix issue when serializing PSObjects in result (#48860) 2018-11-28 12:17:49 +10:00
jokurz 6404c6484c Fix fact ansible_distribution_version for AIX (#48570)
* Fix fact ansible_distribution_version for AIX

* aix_facts: Check oslevel output
2018-11-27 19:43:07 -05:00
Felix Fontein 35049a148a Don't jsonify after and before on diff return. (#49092) 2018-11-26 13:52:21 +00:00
Julian Kornberger 859b6a6526 Fix virt role detection for Hetzner cloud servers (#42023)
See also https://wiki.hetzner.de/index.php/CloudServer/en
2018-11-24 16:20:57 +00:00
Josue David Hernandez 8880c72682 Adding support for clearlinux showing release nuber (#47101)
Signed-off-by: Josue David Hernandez <josue.d.hernandez.gutierrez@intel.com>
2018-11-23 19:22:45 +00:00
Will Thames 960ebd981f k8s append_hash (#48830)
* Add append_hash functionality to k8s module

append_hash adds a hash based on the contents of a ConfigMap
or Secret to the name - this enables immutable ConfigMaps and
Secrets.

* Provide k8s_config_resource_name plugin

The k8s_config_resource_name filter plugin provides a means of determining
the name of ConfigMaps and Secrets created with append_hash

* Add changelog fragment

* fix failing tests

* Update openshift version needed for append_hash
2018-11-22 08:14:43 +00:00
Abhijeet Kasurde 789b0ef0c9 Pass string command in run_command (#48805)
When there are spaces in command args passed as a list,
then run_command and underlying subprocess fails.
This can be overcome by passing command as string rather than list.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-11-20 00:01:54 -05:00
Mike Wiebe a721572206 Fix issues with nxos_os_install module (#48811)
* Use expect module to copy files

* Remove old and redundant upgrade files

* Return error message instead of code

* Cleanup copy command code

* Fix force issue in nxos_install_os

* new nxos_install_os integration tests

* Uncomment transport tests

* Revert negative test change

* Remove combined option that is no longer required

* Make shippable happy

* Add n5k test files
2018-11-20 10:14:15 +05:30
Jordan Borean e62edfc796
Ansible.Basic - fix deprecate return value (#48908) 2018-11-20 09:26:16 +10:00
Tim Rupp 8d2beea1cf
Removes commented out code (#48902) 2018-11-19 13:51:12 -08:00
Scott Barvick 0f0e976183 updated .decode('utf-8') to to_text() 2018-11-19 13:34:04 -05:00
Scott Barvick 1ff7b258f4 make compatible with both python 2 and 3 by setting the encoding 2018-11-19 13:34:04 -05:00
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
2018-11-19 14:43:32 +00:00
Felix Fontein 891687284f docker_* modules: improve diff (#48546)
* Add difference tracking tool

* Improve --diff mode for docker_container.

* Improve diffs of sets by ordering the sets.

* Rewrite imports, get rid of HAS_DOCKER_PY_x variables and use docker_version instead.

* Rename container -> active (more generic).

* Add --diff for docker_volume. Change old diff output.

* Add --diff for docker_network. Change old diff output.

* Add --diff for docker_swarm_service.

* Add changelog.

* Add entry for porting guide on docker_network and docker_volume.
2018-11-19 09:59:54 +00:00
Bojan Vitnik b0cc240665 New module: xenserver_guest - manages XenServer VMs (#41041)
* XenServer related modules - initial commit

 - New module_util: xenserver. Contains common module arguments, functions
   and classes useful for future XenServer related modules.
 - New module_docs_fragment: xenserver. Describes common module arguments.
 - New module: xenserver_guest. Supports VM deployment, reconfiguration,
   removal, detection of changes, state management, fact gathering and
   Ansible check mode. Module is fully documented.
 - Updated: developing_module_utilities.rst.
 - Module params, workflow and some functions are based on or taken from
   vmware_guest module.

* Implemented support for configuring custom VM params in xenserver_guest module

* Compatibility fixes and documentation update

 - xenserver module_util: implemented support for XenAPI.py version older
   than 7.2.
 - xenserver module_util: PEP8 fixes.
 - xenserver module_util: Added missing imports.
 - xenserver module_util: Copyright notice fixes.
 - xenserver_guest module: updated module documentation with notes regarding
   module requirements and compatibility.
 - xenserver_guest module: bumped version_added to 2.7.
 - xenserver_guest module: minor fixes.

* VM power state management refactoring, subargument specs in xenserver_guest module, other fixes

 - VM power state management code moved from xenserver_guest module to xenserver
   module_util (set_vm_power_state function).
 - Code for waiting for VM IP address moved from xenserver_guest module to
   xenserver module_util (wait_for_vm_ip_address function).
 - xenserver module_util: implemented get_object_ref function to clean up
   a lot of repeated code in xenserver_guest module.
 - xenserver module_util: added additional aliases 'host' and 'pool' for
   'hostname' common module argument. They are more in line with what
   XenServer users are familiar with.
 - xenserver module_util: minor fixes.
 - xenserver_guest module: removed VM state management other than 'present',
   'absent' and 'poweredon'. Other states are to be managed by separate module.
 - xenserver_guest module: added subargument specs and cleaned up custom code
   for subargument validation.
 - xenserver_guest module: reorganized code for disk and network reconfiguation
   to minimize code duplication.
 - xenserver_guest module: renamed 'cdrom.iso' module argument to
   'cdrom.iso_name', avoids cryptic error message when parameter is
   missing.
 - xenserver_guest module: documentation update.
 - xenserver_guest module: changes in error messages.
 - xenserver_guest module: minor fixes.

* Implemented guest OS network parameter configuration and other

 - xenserver module_util: moved code for validating MAC addresses from
   xenserver_guest module and implemented a range of functions for validating
   IP addresses and related entities and converting prefixes to netmasks and
   vice versa.
 - xenserver module_util: updated fact gathering code to support guest OS
   network parameters.
 - xenserver module_util: added docstrings.
 - xenserver module_util: minor changes.
 - xenserver_guest module: implemented support for guest OS network parameter
   configuration.
 - xenserver_guest module: changed CD-ROM handling code.
 - xenserver_guest module: changed so that user friendly version of changes
   list is always returned in module result.
 - xenserver_guest module: error message changes.
 - xenserver_guest module: added docstrings.
 - xenserver_guest module: documentation update.
 - xenserver_guest module: minor changes and fixes.

* Various fixes and code cleanup

 - xenserver module_util: implemented get_xenserver_version function.
 - xenserver module_util: moved customization agent detection code to
   gather_vm_params function. customization_agent variable is now part of
   vm_params. An exception in customization agent detection code that prevented
   deployment of new VMs is also fixed.
 - xenserver module_util: added support for alternative VM state names with
   dash and underscore in set_power_state function.
 - xenserver_guest module: removed customization agent detection code
   as it is now implemented in xenserver module_util.
 - xenserver_guest module: fixed a bug in xenserver_data update code that
   occured when "networks.mac" was not specified in module params and
   other fixes.
 - xenserver_guest module: some code cleanup.
 - xenserver_guest module: bumped version_added to 2.8.
2018-11-19 01:50:20 -05:00
Dag Wieers 5f6a350b3a Fix a possible issue with comparing values with $null (#37763)
This PR includes:
- Fix $null comparison.
- Simplify Get-AnsibleParam in the same effort
2018-11-19 09:28:04 +10:00
Jordan Borean fd4b282f6f
Ansible.Basic.cs - fix check mode run with nested spec (#48838) 2018-11-17 18:15:36 +10:00
Tim Rupp a4921cd5d9
Removes more f5-sdk references from f5 modules (#48771) 2018-11-16 20:43:46 -08:00
Will Thames aaf29c785f Provide Kubernetes resource validation to k8s module (#43352)
* Provide Kubernetes resource validation to k8s module

Use kubernetes-validate to validate Kubernetes resource
definitions against the published schema

* Additional tests for kubernetes-validate

* Improve k8s error messages on exceptions

Parse the response body for the message rather than returning
a JSON blob

If we've validated and there are warnings, return those too - they
can be more helpful

```
"msg": "Failed to patch object: {\"kind\":\"Status\",\"apiVersion\":\"v1\",\"metadata\":{},
       \"status\":\"Failure\",\"message\":\"[pos 334]: json: decNum: got first char 'h'\",\"code\":500}\n",
```
vs
```
"msg": "Failed to patch object: [pos 334]: json: decNum: got first char 'h'\nresource
        validation error at spec.replicas: 'hello' is not of type u'integer'",
```

* Update versions used

In particular openshift/origin:3.9.0

* Add changelog for k8s validate change
2018-11-16 12:44:59 +00:00
lwm ae0054a79e Add new linode_v4 module. (#46151)
Refs:
  * https://github.com/ansible/ansible/issues/36348
  * https://github.com/ansible/ansible/pull/41875
2018-11-16 12:39:05 +00:00
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
2018-11-16 11:55:36 +05:30
Tim Rupp 2cd4224fb3
Fixes ipv6 and defaults errors (#48776) 2018-11-15 20:15:11 -08:00
Tim Rupp 0e71f62a95
Various small fixes to bigip modules (#48769) 2018-11-15 19:48:22 -08:00
Alex Stephen 5ad5677b71 GCP Bug Fixes (#48276)
* GCP Bug fixes

* added util file changes
2018-11-15 13:44:10 +00:00
Zim Kalinowski 406da7a568
upgrading azure-mgmt-compute to the latest (#47601)
* upgrading azure-mgmt-compute to the latest
2018-11-15 15:24:42 +08:00
Zim Kalinowski dfe554eaf8 upgrading network packages (#47639) 2018-11-15 09:26:35 +08:00
John Imison 54c54fc960 RabbitMQ publisher module (#44718)
* RabbitMQ basic publisher

* Split out of a module_util. Preparing for binary posts.

* Can now send a file to the queue.

* Allowing an empty queue to be used so RabbitMQ returns a random queue.

* Added RETURN docstring.

* Updated and added tests.  Now returns a dictionary with msg, content_type and queue published to.

* Extra tests and introduced a none url method of providing server host details.

* Added testing and errors for url/host parameters.

* Updating RETURN sample

* Added an image file for testing binary publishing.

* Minor changes to test.

* Added filename key/value to headers if a binary file is published.

* Adding ability to specify headers.

* Renaming to rabbitmq_publish

* Changed tests to reflect name, and, preparing for testing headers.

* Updated some documentation

* Minor pip install update

* Modifications after feedback.

* Updates based on feedback.

* Fixing pep8 issue.

* Updating module and module_util name to amqp.

* Reverting back to rabbitmq_publish naming.

* Minor addition to notes.
2018-11-15 11:06:54 +10:00
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>
2018-11-14 18:05:25 +05:30
Abhijeet Kasurde 8cd395f595 VMware: Refactor vmware_cluster (#37072)
* Update cluster logic
* Refactor code
* Documentation update

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-11-14 04:36:48 -05:00
Jordan Borean 4fc013a7fa powershell - fix async for Ansible.Basic (#48404)
* powershell - fix async for Ansible.Basic

* moved old out outside of the try block
2018-11-13 12:08:27 -08:00