Commit Graph

18412 Commits (402b095841d901b012f20e9473bdee6b0f43a398)

Author SHA1 Message Date
saichint 37392318a6 fix nxos_vlan and nxos_switchport issues (#27505) 9 years ago
Adrian Likins a52a4332fd Fix aruba_config flake8 failures (#27603)
* Fix aruba_config flake8 failures

* fix intefaces_file build/flake8 fail
9 years ago
Sloane Hertel d8eccdda3a [cloud] make ec2 paging() more functional and add paging to ec2_lc_facts (#27355) 9 years ago
Sloane Hertel ad2c1e1838 [cloud] ec2_customer_gateway: add routing option to allow bgp_asn to be optional (#27276)
fixes #27157

 add routing option to allow bgp_asn to be optional
9 years ago
Nathaniel Case ec8cbbf926 Fix aruba boilerplate 9 years ago
Sloane Hertel 61ebb89fe3 improve cloudformation failures (#27427) 9 years ago
jhawkesworth a43af128cf Add mac address to windows facts (#25803) 9 years ago
Roman Belyakovsky 42039cd436 New module: manage debian network interfaces file /etc/network/interfaces (system/interfaces_file) (#25295)
* Added new module interfaces_file

* interfaces_file: added unit tests

* interfaces_file: added golden files for unit tests

* interfaces_file: moved to system modules

* interfaces_file: fixed code formatting and convention issues
9 years ago
Brandon Davidson 4ec8744b8b Ignore main route table association when determining which associations to remove. (#23781)
They can't be removed anyway, and will just throw an error if you try to disassociate them.
9 years ago
Jens Carl cc72dead45 New module: Add module to collect facts for Amazon Redshift Cluster (cloud/amazon/redshift_facts) (#22615)
* New module redshift_facts

Gather facts about aws Redshift cluster(s).

* Fix she-bang, PEP8 violations, and ansible metadata.

* Bump version_added to "2.4"

* Fix some typos and add supporting check mode

* Fix type of RETURN fields

Fix type of RETURN fields number_of_nodes and
automated_snapshot_retention_period from integer to int.

* Add traceback information to fail_json()
9 years ago
Nathaniel Case c017d0c7c0 Fix fortios & netscaler boilerplate
Sorry
9 years ago
Trishna Guha 407dc2dc68 fix nxos_vrf removal failure (#27547)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Gaurav Rastogi 23ec711494 Added flags for Federated objects used in GLSB (#27531) 9 years ago
Ganesh Nalawade c4e06a1735 ios implementation for net_interface (#27459)
* ios implementation for net_interface

*  ios_interface implementation
*  ios_interface integration test

* net_interface integration test for ios and other refactor

* Update boilerplate and minor refactor
9 years ago
Ganesh Nalawade 70ce394840 Persistent connection timer changes (#27272)
*  Add command_timeout timer that defines the amount
   of time to wait for a command or RPC call before
   timing out.
*  Remove connect_retries and connect_interval configuration
   varaible and replace it with connect_retry_timeout to control
   the timeout value of connection to local scoket.
*  Make required changes to netowrk action plugins and relevant
   network files in module_utils.
*  Required documentation changes.
9 years ago
James Mighion 4dd8f281d6 Adding aruba_config module (#27130)
* Adding aruba_config module.

* Fixing documentation.

* Forgot action plugin.
9 years ago
George Nikolopoulos f204e7cb33 New module: manage Citrix Netscaler content switching virtual server configuration (network/netscaler/netscaler_cs_vserver) (#26245)
* Add netscaler_cs_vserver

* Correct version_added
9 years ago
QijunPan 402ac47549 Contributing lib/ansible/modules/network/cloudengine/ce_bfd_session.py module to manage HUAWEI data center CloudEngine (#26069)
* add bfd session module

* update return doc
9 years ago
George Nikolopoulos 36537186e3 New module: manage Citrix Netscaler content switching policy configuration (network/netscaler/netscaler_cs_policy) (#26189)
* Add netscaler_cs_policy

* Correct version_added
9 years ago
Ken Celenza 7a51c5f4df make panos security rule more idempotent (#26573) 9 years ago
benthomasson fb1583b2c2 Add last line of LLDP data (#26451) 9 years ago
George Nikolopoulos e329c9da8c New module: manage Citrix Netscaler servicegroup configuration (network/netscaler/netscaler_servicegroup)) (#26183)
* Add netscaler_servicegroup

* Correct version_added
9 years ago
George Nikolopoulos 7df14bd2b0 New module: manage Citrix Netscaler load balancer virtual servers configuration (network/netscaler/netscaler_lb_vserver) (#26144)
* Add netscaler_lb_vserver

* Correct version_added
9 years ago
John R Barker 727a7e8a1c Correct version added 9 years ago
George Nikolopoulos ac0c5dec2f Add netscaler_lb_monitor (#26143) 9 years ago
QijunPan 17e64f876d add bfd view module (#26070) 9 years ago
QijunPan 5b2373df16 add bfd global module (#26068) 9 years ago
Dennis Israelsson d7202e6155 Add fabricpath support for nxos_vlan (#26013)
* Add files via upload

Fix for issue #25720

* nxos_vlan fabricpath (#25720)

Fix for issue #25720

* Add files via upload

* Add files via upload

* Delete nxos_vlan.py

* Add files via upload

* Add files via upload
9 years ago
Ganesh Nalawade 448c461940 Convert port value to integer (#25939)
Fixes #25175

convert port value to integer explicitly
9 years ago
techhelper1 a25c6b9478 ios_facts: Fixed Retrieving All IPv4 Addresses on L3 Interfaces (#25462)
* Fixed Retrieving All IPv4 Addresses on L3 Interfaces

The ios_facts module retrieving the interface subnet, would only get the primary IPv4 address on the interface and would not capture all the secondary IPs (ones that I would be set by "ip address x.x.x.x x.x.x.x secondary").

This was tested and confirmed to work on a Cisco 6500 with IOS 15.1(2)SY6.

* Fixed whitespace and if statement issues for sanity.

* Fixed spacing because sanity.
9 years ago
ikelos 03d3c6135d Convert the src entry to a templated entry. (#24026) 9 years ago
jpvrenen b13d547621 Added result responses (#23336)
Return value 'responses' is now created in result, so it can actually be
called/used.
9 years ago
numone213 25b3f194f8 Contributing lib/ansible/modules/network/cloudengine/ce_vrrp.py module to manage HUAWEI data center CloudEngine (#22344)
* add ce vrrp

add ce vrrp

* metadata_version

* fix CI issue
9 years ago
Benjamin Jolivot 753b26ccf9 Manage Fortios/Fortigate Address (#21542)
* New module fortios_address

* Add module_utils required_if + fix Doc

* Merge spec & required_if from module_utils

* Fix pep8

* Py2.5 compat , cosmetic changes

* Fix param timeout

* Fortios_address module + integration tests

* add netaddr library in requirements for integration tests

* Pep8 problems

* ANSIBLE_METADATA.version -> ANSIBLE_METADATA.metadata_version
9 years ago
Adrian Likins 17ab546c48 Add 2.0-2.3 facts api compat (ansible_facts(), get_all_facts()) (#27294)
* Add 2.0-2.3 facts api compat (ansible_facts(), get_all_facts())

These are intended to provide compatibilty for modules that
use 'ansible.module_utils.facts.ansible_facts' and
'ansible.module_utils.facts.get_all_facts' from 2.0-2.3 facts
API.

Fixes #25686

Some related changes/fixes needed to provide the compat api:

* rm ansible.constants import from module_utils.facts.compat

Just use a hard coded default for gather_subset/gather_timeout
instead of trying to load it from non existent config if the
module params dont include it.

* include 'external' collectors in compat ansible_facts()

* Add facter/ohai back to the valid collector classes

facter/ohai had  gotten removed from the default_collectors
class used as the default list for all_collector_classes by
setup.py and compat.py

That made gather_subset['facter'] fail.
9 years ago
Chris Houseknecht 3db768f393 Removes container-enabled warning (#27578) 9 years ago
Gaurav Rastogi dc5b826af8 New Module: Manage Avi Networks ServerAutoscale Policy (#27544) 9 years ago
Gaurav Rastogi d3ed3dd7c3 New Module: Manage Avi Networks HardwareSecurityModuleGroup (HSM) (network/avi/avi_hardwaresecuritymodulegroup) (#27541) 9 years ago
Gaurav Rastogi 6f12abe517 New Module: Manage Avi Networks PoolGroupDeploymentPolicy (nettwork/avi/avi_hardwaresecuritymodulegroup) (#27542) 9 years ago
Gaurav Rastogi d78d3931a1 New Module: Manage Avi Networks Traffic Clone profile (network/avi/avi_trafficcloneprofile) (#27543) 9 years ago
Gaurav Rastogi 5fe82c6b4a New Module: Manage Avi snmptrapprofile (network/avi/avi_snmptrapprofile) (#27583) 9 years ago
Gaurav Rastogi eae1e9a351 New Module: Manage Avi Networks Scheduler (network/avi/avi_scheduler) (#27582) 9 years ago
Gaurav Rastogi 4d1bd424f4 New Module: Manage Avi Networks Backupconfiguration (network/avi/avi_backupconfiguration) (#27580) 9 years ago
Gaurav Rastogi 833d3dd5f9 New Module: Manage Avi Networks Webook (network/avi/avi_webhook) (#27579) 9 years ago
Gaurav Rastogi 279c50e43f New Module: Manage Avi Networks PriorityLabels (network/avi/avi_prioritylabels) (#27576) 9 years ago
Ganesh Nalawade 97a34cf008 Add options sub spec validation (#27119)
* Add aggregate parameter validation

aggregate parameter validation will support checking each individual dict
to resolve conditions for aliases, no_log, mutually_exclusive,
required, type check, values, required_together, required_one_of
and required_if conditions in argspec. It will also set default values.

eg:
tasks:
  - name: Configure interface attribute with aggregate
    net_interface:
      aggregate:
        - {name: ge-0/0/1, description: test-interface-1, duplex: full, state: present}
        - {name: ge-0/0/2, description: test-interface-2, active: False}
    register: response
    purge: Yes

Usage:
```
from ansible.module_utils.network_common import AggregateCollection

transform = AggregateCollection(module)
param = transform(module.params.get('aggregate'))
```

Aggregate allows supports for `purge` parameter, it will instruct the module
to remove resources from remote device that hasn’t been explicitly
defined in aggregate. This is not supported by with_* iterators

Also, it improves performace as compared to with_* iterator for network device
that has seperate candidate and running datastore.
For with_* iteration the sequence of operartion is
load-config-1 (candidate db) -> commit (running db) -> load_config-2
(candidate db) -> commit (running db) ...

With aggregate the sequence of operation is
load-config-1 (candidate db) -> load-config-2 (candidate db) -> commit
(running db)

As commit is executed only once per task for aggregate it has
huge perfomance benefit for large configurations.

* Fix CI issues

* Fix review comments

*  Add support for options validation for aliases, no_log,
   mutually_exclusive, required, type check, value check,
   required_together, required_one_of and required_if
   conditions in sub-argspec.
*  Add unit test for options in argspec.
*  Reverted aggregate implementaion.

* Minor change

* Add multi-level argspec support

*  Multi-level argspec support with module's top most
   conditionals options.

* Fix unit test failure

* Add parent context in errors for sub options

* Resolve merge conflict

* Fix CI issue
9 years ago
Will Thames 5f73bdc3bf [cloud] Improve Camel to Snake conversion in EC2 module_utils (#25015)
* Make camel_to_snake work on capitalized plurals

`TargetGroupARNs` should become `target_group_arns`, not
`target_group_ar_ns`

Promote `camel_to_snake` to top layer function but prefix
it with an underscore.

Add tests for improved `_camel_to_snake` function.

Reduce use of `re.compile` as it makes no sense when the
compilation result is not reused.

* Remove unused LooseVersion check

* Fix PLURALs case for camel_to_snake

Also renamed EXPECTED_CAMELIZATION to EXPECTED_SNAKIFICATION
9 years ago
Ganesh Nalawade 60676add33 iosxr implemetation for net_interface (#27513)
* iosxr implemetation for net_interface

*  iosxr_interface implementation

* Add integration test

*  iosxr_interface integration test
*  net_interface intergration test for iosxr

* update boilerplate
9 years ago
ossark 3290c2fc3c Added priority attribute for pool members (bigip_pool_member module) (#23128)
* Added priority attribute for pool members (bigip_pool_member module)

* Line break missing

* Change from 'priority' to 'priority_group'

* Update bigip_pool_member.py

* Update bigip_pool_member.py
9 years ago
Ganesh Nalawade bb998a3cd2 Add fix to read correct socket path recieved from ansible-connection (#27560)
Currently socket path is send from `ansible-connection` (running as background
process) over stdout. This can conflict with debug logs that are also send on
stdout resulting in incorrect socket path received by the main process.

To avoid this add a socket path delimiter string which is recevied by
main process and socket path is retrieved based on delimiter string.

This implementation will change in future when ansible-connection
framework is made more robust.
9 years ago
hyperized 00ef894f6c Add module to list S3 buckets (#27322)
* Add module to list S3 buckets

* Move check for boto3 before boto3 is attempted to be used
9 years ago
Nikita Chernyi 889495bf7f skippy callback plugin: hides banner for skipped tasks (#18621)
* Modified skippy callback plugin

* Added original skippy.py, moved plugin to full_skip.py

* Full skip: fixed code style
9 years ago
Jiangge Zhang 891a8ad2fe Proposed new notification module: BearyChat (#21947)
* Add new notification module: BearyChat integration

BearyChat (https://bearychat.com) is a Slack alternative service.

* Remove implicit args and change position of module.fail

* Update the metadata of bearychat module
9 years ago
Will Thames f972994662 [cloud] fix VPC behavior for ec2_group module, improve integration tests (#27038)
* Add tests for group in a VPC

* Improve ec2_group output and documentation

Update ec2_group to provide full security group information
Add RETURN documentation to match

* Fix ec2_group creation within a VPC

Ensure VPC ID gets passed when creating security group

* Add test for auto creating SG

* Fix ec2_group auto group creation

* Add backoff to describe_security_groups

Getting LimitExceeded from describe_security_groups is definitely
possible (source: me) so add backoff to increase likelihood of
success.

To ensure that all `describe_security_group` calls are backed off,
remove implicit ones that use `ec2.SecurityGroup`. From there,
the decision to remove the `ec2` boto3 resource and rely on the client
alone makes good sense.

* Tidy up auto created security group

Add resource_prefix to auto created security group and delete
it in the `always` section.
Use YAML argument form for all module parameters
9 years ago
Jordan Borean 7a7a0cae94 win_service: added support for paused services (#27216)
* win_service: added support for paused services

* change pausable service for local computers

* more fixes for older hosts

* sigh

* skip pause tests for Server 2008 as it relies on the service
9 years ago
Pilou 49b8bd0358 Fix broken import in utilities.helper._accelerate (#27088)
* Fix py3 compatibility using six.moves.socketserver

* Remove useless call to str
9 years ago
Jordan Borean 1517db06c5 fix to alllow the winrm plugin to send input with Python 3 (#27474) 9 years ago
Chris Houseknecht e2651d4bac Give precedence to user supplied --roles-path option (#27524) 9 years ago
Ozi Boms 16d23e96c5 Add reference to VNET resource group (#26052)
* Add reference to VNET resource group

When creating a new virtual machine, added new parameter to allow creation of VM in a resource group using virtual network from another resource group

* Fixed white space errors

Was getting compialtion errors with code and just went around and cleaned up extra white spaces and such.

* Re-fixed more white space issues

* Fixed Version Number for new parameter

* specified exceptions

Use clouderror instead of exceptions for finidng virtual network

* Simplified code lines

created a local variable to either use the VNET resource group or the VM resource group and then used whichever was available as a parameter

* fixed syntax issue with newline

...hopefully

* removed superfluous default/required from docs

* fix vm_size default
9 years ago
Ganesh Nalawade 7cf4416c9c Fix junos_netconf integration test failure (#27528) 9 years ago
Toshio Kuratomi 0b9a78f0b3 Remove wildcard, add boilerplate and get rid of get_exception
* smaller collections of database modules
* Some of the smaller collections of network modules
9 years ago
Ryan Sabatini f65f3570a8 Add Ability to Exlude Paths from Archive
Archive.py allows you to pass a glob path of files to archive.
This allows end users to glob a dir, and exlude a list of dirs
from the archive which are not necessary.
9 years ago
Andrew Saraceni 7b3d893f2d New Module: Manage Windows local group membership (win_group_member) (#26307)
* initial commit for win_group_member module

* fix variable name change for split_adspath

* correct ordering of examples/return data to match documentation verbiage

* change tests setup/teardown to use new group rather than an inbult group
9 years ago
Matt Davis 91f4c37ed7 rename legacy PS module_utils to remove PowerShell prefix (#27495) 9 years ago
Brian Coca b79744f282 make random_choice more error resilient (#27380)
* make random_choise more error resilient

fixes #27373

* missing imports

* PEEP 16
9 years ago
Gaurav Rastogi e575ff8d8d New Module: Manage Avi Networks Microservicegroup (network/avi/avi_microservicegroup) (#26209) 9 years ago
Gaurav Rastogi 69c4f90f7d New Module: Manage Avi Networks VRF Context Objects (networks/avi/avi_backup) (#26204) 9 years ago
Gaurav Rastogi 202cbd3421 New Module: Manage Avi Networks Serviceengine (network/avi/avi_serviceengine) (#26210) 9 years ago
Gaurav Rastogi 51ff3dba68 New Module: Manage Avi Networks IPAM DNS provider profiles (network/avi/avi_ipamdnsproviderprofile) (#26207) 9 years ago
Gaurav Rastogi 1e6fd571e1 New Module: Manage Avi Networks Cluster objects (networks/avi/avi_cluster) (#26205) 9 years ago
Gaurav Rastogi 0424919fe6 New Module: Manage Avi Networks AlertSyslogConfig (network/avi/avi_alertsyslogconfig) (#26215) 9 years ago
Gaurav Rastogi 1da76772f8 New Module: Manage Avi Networks AlertScriptConfig (network/avi/avi_alertscriptconfig) (#26214)
* New Module: Manage Avi Networks AlertScriptConfig (network/avi/avi_alertscriptconfig)

* updated example to not include python import as it fails sanity test
9 years ago
Gaurav Rastogi d2ec5462bc New Module: Manage Avi Networks AlertEmailConfig (network/avi/avi_alertemailconfig) (#26213) 9 years ago
Gaurav Rastogi 2589d640dd New Module: Manage Avi Networks AlertConfig (network/avi/avi_alertconfig) (#26212) 9 years ago
Gaurav Rastogi a8caff169e New Module: Manage Avi Networks ActionGroupConfig (network/avi/avi_actiongroupconfig) (#26211) 9 years ago
John R Barker 66adb3d993 Correctly reference variables (#27486) 9 years ago
Martin Krizek 19d119f43c Pass server_hostname from task to subscription-manager (#27420) 9 years ago
saichint 350018de73 nxos_vxlan_vtep fixes and integration tests (#27405)
* fix issue 27404

* conflict resolve
9 years ago
Dag Wieers 97aaf103e8 ACI module_utils library for ACI modules (#27070)
* ACI module_utils library for ACI modules

This PR includes:
- the ACI argument_spec
- an aci_login function
- an experimental aci_request function
- an aci_response function
- included the ACI team

* New prototype using ACIModule

This PR includes:
- A new ACIModule object with various useful methods
9 years ago
Abhijeet Kasurde e419a55c71 Add correct URL for docker guide (#27465)
Fixes : #27463

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi 4109a82d0a remove wildcards and add boilerplate
* cloud/centurylink
* source_control
* cloud/google
* notification
* cloud/rackspace
* cloud/vmware
9 years ago
Toshio Kuratomi 9a55487dff Remove get_exception usage from amazon modules 9 years ago
Toshio Kuratomi 8de6cff2b1 more wildcards 9 years ago
Toshio Kuratomi 1ee08c0f06 Get rid of more wildcard imports and add boilerplate to more modules
This commit cleans up the following module categories:
* messaging
* inventory
* crypto
* commands
* clustering
* cloud/webfaction
* cloud/docker
* cloud/digital_ocean
9 years ago
Toshio Kuratomi 4e6cce354e Remove wildcard imports
Made the following changes:

* Removed wildcard imports
* Replaced long form of GPL header with short form
* Removed get_exception usage
* Added from __future__ boilerplate
  * Adjust division operator to // where necessary

For the following files:

* web_infrastructure modules
* system modules
* linode, lxc, lxd, atomic, cloudscale, dimensiondata, ovh, packet,
  profitbricks, pubnub, smartos, softlayer, univention modules
* compat dirs (disabled as its used intentionally)
9 years ago
Toshio Kuratomi 0a2cdb2585 New tests for copy recursive with absolute paths
Absolute path trailing slash handling in absolute directories

find_needle() isn't passing a trailing slash through verbatim.  Since
copy uses that to determine if it should copy a directory or just the
files inside of it, we have to detect that and restore it after calling
find_needle()

Fixes #27439
9 years ago
giovannisciortino 7cfd02097c add_hosts.py: Fix add_host does not recognise 'host' alias (#27418)
* add_hosts.py: Fix add_host does not recognise 'host' alias

* add_hosts.py: add note in documentation that 'hosts' alias of name parameter is only available on >=2.4
9 years ago
Adrian Likins 934b645191 Support multiple vault passwords (#22756)
Fixes #13243

** Add --vault-id to name/identify multiple vault passwords

Use --vault-id to indicate id and path/type

 --vault-id=prompt  # prompt for default vault id password
 --vault-id=myorg@prompt  # prompt for a vault_id named 'myorg'
 --vault-id=a_password_file  # load ./a_password_file for default id
 --vault-id=myorg@a_password_file # load file for 'myorg' vault id

vault_id's are created implicitly for existing --vault-password-file
and --ask-vault-pass options.

Vault ids are just for UX purposes and bookkeeping. Only the vault
payload and the password bytestring is needed to decrypt a
vault blob.

Replace passing password around everywhere with
a VaultSecrets object.

If we specify a vault_id, mention that in password prompts

Specifying multiple -vault-password-files will
now try each until one works

** Rev vault format in a backwards compatible way

The 1.2 vault format adds the vault_id to the header line
of the vault text. This is backwards compatible with older
versions of ansible. Old versions will just ignore it and
treat it as the default (and only) vault id.

Note: only 2.4+ supports multiple vault passwords, so while
earlier ansible versions can read the vault-1.2 format, it
does not make them magically support multiple vault passwords.

use 1.1 format for 'default' vault_id

Vaulted items that need to include a vault_id will be
written in 1.2 format.

If we set a new DEFAULT_VAULT_IDENTITY, then the default will
use version 1.2

vault will only use a vault_id if one is specified. So if none
is specified and C.DEFAULT_VAULT_IDENTITY is 'default'
we use the old format.

** Changes/refactors needed to implement multiple vault passwords

raise exceptions on decrypt fail, check vault id early

split out parsing the vault plaintext envelope (with the
sha/original plaintext) to _split_plaintext_envelope()

some cli fixups for specifying multiple paths in
the unfrack_paths optparse callback

fix py3 dict.keys() 'dict_keys object is not indexable' error

pluralize cli.options.vault_password_file -> vault_password_files
pluralize cli.options.new_vault_password_file -> new_vault_password_files
pluralize cli.options.vault_id -> cli.options.vault_ids

** Add a config option (vault_id_match) to force vault id matching.

With 'vault_id_match=True' and an ansible
vault that provides a vault_id, then decryption will require
that a matching vault_id is required. (via
--vault-id=my_vault_id@password_file, for ex).

In other words, if the config option is true, then only
the vault secrets with matching vault ids are candidates for
decrypting a vault. If option is false (the default), then
all of the provided vault secrets will be selected.

If a user doesn't want all vault secrets to be tried to
decrypt any vault content, they can enable this option.

Note: The vault id used for the match is not encrypted or
cryptographically signed. It is just a label/id/nickname used
for referencing a specific vault secret.
9 years ago
James Mighion a328e96455 Adding aireos_config module (#27408)
* Adding aireos_config module.

* Fixing pep8 W291.
9 years ago
Toshio Kuratomi cce06c5a3b Fix _get_file_contents to return bytes and checking that a different file exists than it opens 9 years ago
fredericve 095560771c Fixes #17958: use stderr instead of the default stdout for fatal errors (#17962)
* add a callback plugin that sends failures to stderr

* fix warnings
9 years ago
Ganesh Nalawade 43bd993fac Fix fetch configuration in junos_command (#26392)
* Fix fetch configuration in junos_command

Fixes #26358 Add support to fetch configuration
from device in `xml`, `text`, `json`, `set` display
format.

* Add error message if set display is not supported

* Throw error in case of warning for show commands
9 years ago
Mike Wiebe 07b097af7c Fix nxos portchannel force option (#27190)
* Add integration tests

* Fix force option

* Enable nxos_portchannel test

* Satisfy ansibot demands
9 years ago
Nathaniel Case fb2b3de5e4 Fix nxos_vtep_vni typo 9 years ago
Marko Stanković 0ebc80cbd6 Fix a typo in win_iis_webapplication.ps1 (#27417)
introduced with https://github.com/ansible/ansible/pull/26082/files#diff-bd862e2bbcb44c9c332df7b6cacf6adaR74
9 years ago
David Newswanger c594f1e1c9 fixed nontype error (#27428) 9 years ago
David Newswanger 3b1f2aeb16 Iosxr attribute error #27122 (#27425)
* WIP fixing iosxr_logging idempotency

* remove debug stuff from module, add teardown section to start of test
9 years ago
Martin Krizek 36c6d0f748 fetch: fail if flat=yes and dest=existing-dir w/o trailing slash 9 years ago
Trishna Guha 6d1bd33aa5 fix iosxr_banner (#27378)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Simon Dodsley 26c9007c2d Add Pure Storage Volume module (#26357)
Update documentation to fix typos and define the extend feature
Force size to be a required variable on create as requested.
Change type to bool
9 years ago
Sloane Hertel 91781487ab aws_kms: don't append to unicode - fixes #25786 (#27352)
* AWS key management service fix; statement may not have a principal, and if there is only one AWS principal it will not be a list as expected. Fixes 25786.

* remove len(), only catch exception in function for json.dumps() failure

* use a defined variable and make formatting python 2.6 compatible
9 years ago
Yanis Guenane 9e41fd399b Removing openssl_publickey from pep8 legacy files (#27414) 9 years ago
Trishna Guha a49c419651 fix nxos_vrf_af nxapi & cli (#27307)
* fix nxapi failure #27142

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix nxos_vrf_af nxapi and cli

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Matt Clay 51bd07204b Revert "Revert "Allow ini plugin to load file using other encoding than utf8." (#27407)"
This reverts commit 520696fb39.
9 years ago
Toshio Kuratomi 520696fb39 Revert "Allow ini plugin to load file using other encoding than utf8." (#27407)
* Revert "Update conventions in azure modules"

This reverts commit 30a688d8d3.

* Revert "Allow specific __future__ imports in modules"

This reverts commit 3a2670e0fd.

* Revert "Fix wildcard import in galaxy/token.py"

This reverts commit 6456891053.

* Revert "Fix one name in module error due to rewritten VariableManager"

This reverts commit 87a192fe66.

* Revert "Disable pylint check for names existing in modules for test data"

This reverts commit 6ac683ca19.

* Revert "Allow ini plugin to load file using other encoding than utf8."

This reverts commit 6a57ad34c0.
9 years ago
Toshio Kuratomi 30a688d8d3 Update conventions in azure modules
* Remove wildcard imports
* Update GPL header to the one-line form
* Add from __future__ imports
9 years ago
Toshio Kuratomi 6456891053 Fix wildcard import in galaxy/token.py 9 years ago
Yannig Perré 6a57ad34c0 Allow ini plugin to load file using other encoding than utf8.
- New option for ini plugins: encoding
  - Add a new option encoding to _get_file_contents
  - Use replace option in test/runner/lib/util.py when calling decode on stdout/err
    output when diff have non-utf8 sequences
9 years ago
Josh Bradley 31b27819e1 adding lookup plugin for chef_databags (#18403)
* adding lookup plugin for chef_databags

* add missing classes for code-smell
9 years ago
mzizzi 9817ec84a0 [cloud] cast tag values to strings in ansible_dict_to_boto3_tag_list utility (#27396)
* ansible_dict_to_boto3_tag_list cast tag values to string

* ansible_dict_to_boto3_tag_list cast with to_native
9 years ago
David Newswanger 81151ef02c Remove Deprecated Template network modules (#27076)
* removed deprecated networking template modules

* update changelog

* update changelog
9 years ago
mesk41in 0fb64214a4 add support of nested groups in group_by 9 years ago
Trishna Guha 7351ee9a76 fix nxos_interface multiple issues (#27106)
* fix execute_show_command

* fix pep8 issues

* fix AttributeError #26562

* legacy-file remove

* modify execute_show_command output

* fix admin_state up doc

* fix admin_state for all interfaces doc

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
saichint 9b9a8749da Add integration tests and fix nxos providers (#26913)
* fix issues with python3.x

* Add integration testa and fix for nxos_evpn_vni

* add nxos_evpn_vni to nxos.yaml

* fix get_vtp_config()

* add new integration tests

* fix rollback

* add integration test files
9 years ago
Nathaniel McAuliffe c94c2831da extracting list from CustomerGateways to match create (#24897)
* Limiting CustomerGateway to dictionary within list of CustomerGateways

* Copying CustomerGateways[0] to CustomerGateway only if it exsits
9 years ago
Trishna Guha 2eaf3571f3 fix state absent nxos_hsrp (#27366)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Anil Kumar Muraleedharan 81a9dada1c Added no shutdown command to list (#27360) 9 years ago
Evan Kaufman 589e8fd6bc Added warning for cron jobs containing line breaks (#19184)
Fixes ansible/ansible-modules-core#4312, moved from ansible/ansible-modules-core#4488
9 years ago
Dan O'Brien d2f34754b2 fixing defaults (#23874)
* fixing defaults

* setting default to null

* setting default values back to null, remove backupsenabled(never used)

* fixing code smell

* whitespace, remove required statement

* doc changes
9 years ago
acrewdson 0f2b3d55b4 'Response' makes more sense here than 'request' 9 years ago
Matt Davis 3f1ec6b862 add custom module type validation (#27183)
* Module argument_spec now accepts a callable for the type argument, which is passed through and called with the value when appropriate. On validation/conversion failure, the name of the callable (or its type as a fallback) is used in the error message.
* adds basic smoke tests for custom callable validator functionality
9 years ago
Matt Davis 53ebe8d441 coerce azure securitygroup priority to int (#27354)
* fixes #22686
* would be better served in the future by using subspec, but it's in too much flux right now
9 years ago
mdawid92 bfdf85e002 [cloud] IAM module returns created keys (#21237)
* return new key, porting https://github.com/ansible/ansible-modules-core/pull/3385/ by defionscode

* fix python3 compatibility

* fixed indentation

* added user_meta field
9 years ago
Brian Coca b93b9e68d7 ensure prefix in plugin loading to avoid conflicts
when using 'all' to load all plugins were ending in main namespace
creating conflicts with each other and random modulesr
 i.e. when trying to access json callback we were getting json 'parsing' lib
9 years ago
Trishna Guha 498bf4b5be change collection to aggregate (#27325)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Martin Krizek 119c9e5d6e Fix using DNF group upgrade/remove api 9 years ago
David Newswanger 8643e9cb34 changed collection arg to argregate on 2.4 network modules (#26649)
* changed collection arg to argregate on 2.4 network modules

* replace users with aggregate in eos_user, junos_user, nxos_user

* added version_added to places where we replaced users with aggregate in the docs

* fix ios_static_route test

* update tests to reference aggregate instead of collection/users
9 years ago
Pilou 9d771f6eea filesystem: workaround bug in xfs_info, use xfs_growfs instead (#25703)
xfs_info is a bash script located in /usr/sbin/ (/sbin is a symlink to
/usr/sbin/) which calls xfs_growfs command. When neither /sbin nor
/usr/sbin are in the PATH environment variable, filesystem module is able to
call xfs_info because /sbin path is hardcoded in get_bin_path method, then
xfs_growfs isn't found because neither /sbin nor /usr/sbin are in the
PATH environment variable.

"xfs_growfs -n" could be used directly instead of xfs_info, the man page
states that: "xfs_info is equivalent to invoking xfs_growfs with the -n
option".

Fixes #24823.
9 years ago
René Moser bb5b1680f8 composer: docs: fix conflicting statement about defaults (#27313) 9 years ago
Abhijeet Kasurde b2d609b6f1 Add testcase for ipify_facts (#26421)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Rene Moser e2914a45e1 cloudstack: make facts run in check mode 9 years ago
René Moser c16b1844a9 cloudstack: cs_facts: add option for custom meta data host (#27290) 9 years ago
Arthur Burkart 90a42d1e53 Updates docs to match module behavior (#26658)
* Updates docs to match module behavior

* Updates docs to match module behavior

Updated using advice from jimi-c

* Removes snippet about git module before v1.8.3

At suggestion of robinro
9 years ago
Trishna Guha 41ce724801 fix nxos_hsrp (#27306)
* fix nxos_hsrp

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify nxos_hsrp test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Samuel Boucher 5fbd42eca5 Update svc.py
Killed is a valid state
9 years ago
Toshio Kuratomi 225fa5d092 Fix undefined variables, basestring usage, and some associated python3 issues 9 years ago
Toshio Kuratomi 9f7b0dfc30 Remove automatic use of system six
* Enable the pylint no-name-in-module check.  Checks that identifiers in
  imports actually exist.  When we do this, we also have to ignore
  _MovedItems used in our bundled six.  This means pylint won't check
  for bad imports below ansible.module_utils.six.moves but that's
  something that pylint punts on with a system copy of six so this is
  still an improvement.
* Remove automatic use of system six.  The exec in the six code which
  tried to use a system library if available destroyed pylint's ability
  to check for imports of identifiers which did not exist (the
  no-name-in-module check).  That test is important enough that we
  should sacrifice the bundling detection in favour of the test.
  Distributions that want to unbundle six can replace the bundled six in
  ansible/module_utils/six/__init__.py to unbundle.  however, be aware
  that six is tricky to unbundle.  They may want to base their efforts
  off the code we were using:

  2fff690caa/lib/ansible/module_utils/six/__init__.py

* Update tests for new location of bundled six Several code-smell tests
  whitelist the bundled six library.  Update the path to the library so
  that they work.

* Also check for basestring in modules as the enabled pylint tests will
  also point out basestring usage for us.
9 years ago
Jason Tibbitts ccce74cf7b Avoid using deprecated group_install API
DNF's base.group_install() function accepts a string as its first
argument.  Prior to DNF-2, compatibility code existed which allowed this
function to accept a base.comps.Group object instead.  That is no longer
possible.

Pass "group.id" to base.group_install() instead of "group" to work
around this.
9 years ago
Abhijeet Kasurde 1c87721a86 Add missing import for basic_auth_argument_spec (#27207)
Fix adds a missing import for basic_auth_argument_spec in
netapp module_utils.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Brian Coca 4fba9bf23b revert action loader changes to doc, due to error
restoring behaviour in which a missing module is a warning that shows paths searched,
patch incorrectly bypassed detection and ended up in an exception: global name 'module' is not defined
9 years ago
Michael Scherer 4811c7f117 Permit to have a action plugin without a empty module file
Currently, someone writing a action plugin will also need
to have a empty file in the module path to avoid triggering
the error "no action detected in task.".
9 years ago
Toshio Kuratomi 0d290bddda Port cs_facts to the ansible 2.4 facts API (#27257)
* Port cs_facts to the ansible 2.4 facts API

Fixes #27256
References #27254
9 years ago
Toshio Kuratomi 197a360977 Fix undefined vars on python3 and a whole bunch of other cleanup. (#27202)
* Fix undefined vars on python3 and a whole bunch of other cleanup.

References #27193

* No need to catch exception and reraise.  This just obfuscates the traceback
* Build up a list and then join at the end instead of building up a string. list.append() is faster than string concatenation
* No need to extract k, v pairs from one dict to make a second dict and then extract k, v pairs from the second dict.  Iterate over the k, v pairs extracted from the first dict directly instead of building the second dict.
* No need to check if the dict is empty before iterating on it.  Iterating on an empty dict will automatically go to the end of the loop
* Use isinstance instead of type(obj) is class, handles inheritance and is better style
* use to_native instead of v.encode().  We can use the surrogate_or_strict error handler to deal with more potential tracebacks.  Does the right conversion on both Py2 and Py3.
* Convert bool to string before combining it with the string we're building.
* Don't reference unicode directly as unicode does not exist in Python3
* The string resulting from this function will not have a trailing comma
* Simplify the conversion to string int and bool values are now used in string formatting which will use str to transform them without an explicit invocation.
9 years ago
René Moser a566a7ea2e cloud: cs_user: add feature keys handling (#27285) 9 years ago
Ricardo Carrillo Cruz 3a3bdde869 Fix multiple code and test issues on iosxr (#27267)
* Fix multiple code and test issues on iosxr

It passes the integration tests now.
Fixes #27123

* Fix pep8 issue

* Fix unit tests
9 years ago
TSDominguez b9a2dc979f Add dist-upgrade and extra_args to zypper module (#21313)
* Implement state='dist-upgrade'

Implements `zypper dist-upgrade` for the zypper module. This follows
how `zypper upgrade` is invoked, except `state='dist-upgrade'`.

Setting name to anything other than '*' would cause the module to error
out. `dist-upgrade` affects all packages and would not make sense to
apply to a specific package.

* Implement option extra_args

Add option to append additional arguments to zypper command. This
should be able to accommodate other options that are not (yet) covered
by zypper module.

Arguments are given as if written in the command line, complete with
dashes.
9 years ago
Abhijeet Kasurde dfb97b2728 Remove excessive imports from cloudformation_facts (#27209)
Fix removes excessive imports from cloudformation_facts module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
James Cammarata df8fde4d78 Add cookie parsing to fetch_url/open_url
This patch adds cookie parsing to the fetch_url/open_url module_utils
method. The overall result will still contain the key `set_cookie`, however
an additional key (`cookies`) will also be present. This new field is a
dictionary of values. Overall, this should make looking for individual
cookies in the response much easier, as currently the `set_cookie` field
is an amalgamation of the returned set-cookie headers and can be somewhat
difficult to parse.
9 years ago
Eric Johnson 09e9203844 [google] adding a GCE labels module 9 years ago
Yanis Guenane 35ba6d469e openssl_publickey: Standardize implementaton of the module
The OpenSSLObject class has been merged[1]. This commit makes the
openssl_publickey rely on this class and standardize the way openssl
module should be written.

[1] #26945
9 years ago
Yanis Guenane d72ac0b391 openssl_privatekey: Standardize implementaton of the module
The OpenSSLObject class has been merged[1]. This commit makes the
openssl_privatekey rely on this class and standardize the way openssl
module should be written.

Co-Authored-By: Christian Pointner <cpointner@mgit.at>

[1] https://github.com/ansible/ansible/pull/26945
9 years ago
Toshio Kuratomi 8b34e31e05 Remove the error checking from apply_patch()
The error checking would itself cause a traceback.  The load_config()
function that we'd need to check for errors from only returns None so
there's no way to check for errors via the return value.  In the future
someone could rewrite the load_config function to return useful
information and restore the error checking but for now this is better as
it won't traceback on success and it will let us turn on static analysis
of undefined variables

Fixes #27255
References #27254
9 years ago
Trishna Guha 703eea3da2 eos_logging implementation module (#27093)
* eos_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* eos_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify aggregate args logic

* changed collection to aggregate

* add blankline

* handle size value outside method
9 years ago
Philippe Dellaert c00554735f New module: management of the Nuage Networks VSP SDN solution (network/nuage/nuage_vspk) (#24895)
* Nuage module and unit tests with requested changes

* Cleanup of imports

* Adding check on python version

* Adding import try and catch wrappers

* Cleanup of requirements and adding integration tests

* Using pypi package for simulator

* Cleanup of requirements and adding integration tests

* Adding aliases for integration tests

* Adding module to import sanity test skip list

* Revert "Adding module to import sanity test skip list"

This reverts commit eab23af8c5.

* Adding check for importlib and cleanup of requirements
9 years ago
Trishna Guha e37e736ddb nxos_logging implementation module (#26949)
* nxos_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* pep8 fixes

* nxos_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* test typo fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* idempotent fix

* rename feature to facility

* make dest_group global var

* remove str from arg_spec
9 years ago
Yanis Guenane 8b22c45a45 Enable integration tests for the crypto/ namespace (#26684)
Crypto namespace contains the openssl modules. It has no integration
testing as of now.

This commits aims to add integration tests for the crypto namespace.
This will make it easier to spot breaking changes in the future.

This tests currently apply to:

  * openssl_privatekey
  * openssl_publickey
  * openssl_csr
9 years ago
René Moser b3e8fa72ce cloudstack: cs_cluster: remove duplicate code error handling (#27261) 9 years ago
Sloane Hertel 495f91158c fix RETURN docs 9 years ago
Constantin Bugneac aa341edf4c rds.py - added more attributes to the returned output 9 years ago
Toshio Kuratomi b26ee657b5 Fix for nonutf8 filenames causing crashes when setting permissions
Fixes #23861
9 years ago
Toshio Kuratomi 035be94271 Fix cloudformation module for import of non-module_utils file 9 years ago
Toshio Kuratomi 59fa35446b Fix undefined vars in cnos module_utils
Fixing undefined vars across the codebase so that we can have pylint
catch them on every commit.

Some of the changes to this module_utils file are Python3 related => The
identifiers exist on python2 but not on Python3.  The changes should be
portable to both py2 (2.6+) and py3.

References #27193
9 years ago
Toshio Kuratomi 84285a741c Various fixes to ec2_vpc_dhcp_options module
* Stringify exception with a nicer error and include traceback
* Give a nice message if boto is not installed
* Fix undefined vars.  Cleaning up all undefined variables so that we
  can run static analysis on new commits.

  References #27193
9 years ago
bfloyd89 1f637f06a5 Make lambda_event.py python 2.6 compatible (#27241)
"Changed in version 2.7: The positional argument specifiers can be omitted, so '{} {}' is equivalent to '{0} {1}'."
9 years ago
Brian Coca 96d577c4c9 endswith supports tuples, nicer 9 years ago
Brian Coca c7e841e0e4 better reading of 'facts' 9 years ago
Rob 3401a4b330 Rename classic elb modules to match new names applied to application LB modules (#25745) 9 years ago
Toshio Kuratomi f22c04fa1e leftover from porting become to v2 that's unused
The set_become_default() function is not needed.  All this time, if it
was called it would try to set a value on a passed by value variable
(meaning that it had no effect after returning to the caller).  Since
become has been working in v2, this code is not needed.  Removing.
9 years ago
Toshio Kuratomi 6220c4aea1 Some enhancements to the symbolic_modes change
* Mark _symbolic_mode_to_octal and helper functions as classmethod and staticmethod
  These helpers should be made toplevel functions in their own module.
  For now, make them staticmethod/classmethod so that they can be used
  (and tested) without instantiating an AnsibleModule.
* Move regex compilation out of loops
* Get rid of python-2.4 compat
9 years ago
Dag Wieers a5eea9042e vmware_host: Small fixes and docs updates (#25144)
* vmware_host: Small fixes and docs updates

This PR includes:
- A fix to no longer require a datacenter folder for adding a host
- Documentation improvements
- Ensure imports are specific

* Update vmware_host

Fix adds following:
* Update logic in vmware_host
* Update example documentation
* Added test case for vmware_host

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 9649195c26 Refactor getvm method (#27188)
Fix refactors getvm method and modules which are using it.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi fc5d71de0d Fix for to_text and to_bytes error handlers
* surrogate_then_strict doesn't exist.  Switch to surrogate_or_strict
  instead.
* Found some bugs in the _text.py implementation
  * The composed error handlers (error handlers which are made up of two
    or more python encoding error handlers) had a wrong string in it,
    'surrogate_or_escape' doesn't exist.  Replaced that with
    'surrogate_or_replace' which is the correct handler name.
  * Left comment about the implicit conditions that are part of the
    surrogate_then_replace code path

Fixes #23865
Fixes #23861
9 years ago
Toshio Kuratomi aa9941aaf7 Fix legacy su handling (bad conditional would not fire at the right time) 9 years ago
Toshio Kuratomi 06617548ed Fix undefined vars in network module_utils
References #27193
9 years ago
Ton Kersten 134852e686 #14634: symbolic permissions error (#14994)
This fixes the symbolic notation of the chmod modes, as stated in the man page of chmod (in Linux). This also takes into account that chmod a+x is different from chmod +x. As the second one should take the current umask into account.

Fixes #14634
9 years ago
Ganesh Nalawade ad4ecf2a64 Fix EntityCollection stacktrace (#27217) 9 years ago
Dag Wieers be1c517f4d Add example of templating inline using copy module (#19752)
* Add example of templating inline using copy module

The **copy** module documentation implies that `content:` only works
for 'simple values' and for complex stuff you need the **template**
module, but that is an understatement. You can use **copy** to template
anything you desire.

So I changed the wording, added an example, and also added a note
to the template module that the **copy** module could be used for
'inline templating'.

This fixes #19741.
9 years ago
Toshio Kuratomi 4e8b28e404 Switch from map and filter to list comprehensions and generator expressions (#27198)
One of the complex map + filter + lambda combinations here was causing
pylint to have a rare false positive detecting undefined variables.

Switch to list comprehensions and generator expressions which are
easi(er) to read for humans and do not confuse pylint.

References #27193
9 years ago
Sam Doran 1c40631382 Use atomic_move rather than writing in place in redhat_subscription (#27132)
* Use atomic_move rather than writing in place in redhat_subscription and redhat utils

* Change status to curated

* Put curated in the proper field

* Add RETURN doc section

* Disable yum plugins when unregistering

* Change back to community supported

* Alphabetize imports
9 years ago
Evan Kaufman e8a396be16 cron - validate filename portion of cron_file param (#19185)
* Validated filename from `cron_file` param, updated docs

Fixes ansible/ansible-modules-core#4795, moved from ansible/ansible-modules-core#5361

* Broke long warning message over multiple lines

See: https://github.com/ansible/ansible/pull/19185#issuecomment-302961152
9 years ago
Thomas Krahn 141c6d0d9d ipa_sudorule: Fix bug: get_sudorule_diff() takes exactly 2 arguments (3 given) (#21150) 9 years ago
Andrea Scarpino 4fb5221b5f timezone: Assuming UTC when no /etc/localtime exists (#27131) 9 years ago
Michael Scherer e2d6ecfa40 Workaround python-libselinux API change (#25685)
In the past, selinux.security_get_boolean_names did return 'bytes'
on python 3, but this was changed to return string later, cf:
b8711e2eaf

So we have to convert to bytes only if the API return us bytes.

Fix #25651
9 years ago
Abhijeet Kasurde ede82e2130 Implement vmware_argument_spec for required params (#25731)
Without the fix hostname, username and password params
used to skip required check.

Fixes #25696

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi 007a3b9c9b Don't need to convert cmd to bytes as it is already an array of bytes
Fixes #27016
9 years ago
Yanis Guenane 70f52e3043 crypto: Build a base object for openssl modules (#26945)
More openssl modules are about to be made, each of them rewriting
some pieces of code that can be refactored and used via a common
library.

This commit aims to create this "base" object and the common functions
one might want to reuse in order to avoid duplication.
9 years ago
David Newswanger fd771e580f replace str with to_native (#27135) 9 years ago
Anil Kumar Muraleedharan 08327fa459 Changing new Device name from <Device Name>_cnos to <Device Name> (#27025) 9 years ago
McBadass 0229476c44 Added ability to specify destination OU when joining a domain (#22393)
* Added ability to specify destination OU when joining a domain

* Updated win_domain_membership documentation to include OU destination option.

* Updated python to include version

* Additional info in the docs
9 years ago
Brian Coca 899527f3cb make yaml extensions configurable
fixes #25419
9 years ago
Brian Coca aca11a28a2 allow for null values in yaml inventory (#26765)
* allow for null values in yaml inventory

* 3 dad3 dad3 dad3 dad3 dad3 dad3 dad3 dad
9 years ago
Jordan Borean 5c6e5d4841 win_domain_group: new module (#26682)
* win_domain_group: new module
9 years ago
Dag Wieers 18d9c34e9d win_command, win_shell: Use Fail-Json on failure (#26512)
Two reasons to do this:
- It provides a proper error message indicating why it failed
- It conforms to what is being done in the command and shell modules
9 years ago
Toshio Kuratomi 3a2afc7825 Allow copy to writable files in unwritable dirs (#23509)
unsafe_writes currently allows updating a file that can be updated but
not removed (for instance, when docker mounted).  This change also
allows unsafe_writes to write to writable files in unwritable dirs. For
instance, if a system has made a single file inside of /etc/ writable to
a specific normal user.

Fixes #14961
9 years ago
Andreas Olsson 063f5d0ca8 Set default user-agent for module_utils.urls fetch_url (#27095)
The HTTP User-Agent "ansible-httpget" is already kind of the default,
it being the default value provided by the `url_argument_spec` helper
method. Yet, it may not be practical for all modules to get their
argument_spec that way.

Without a default User-Agent we fall back on the library
User-Agent. That being something like "Python-urllib/2.7".

While I'm no big fan of web servers making decisions based on the
provided User-Agent I still think that part of being a well-behaved
HTTP client is to provide an informative User-Agent. Not to mention
that it's a good thing for Ansible to behave consistently.

Indirectly fixes #26239
9 years ago
Anil Kumar Muraleedharan 7c65272e2d Removing _cnos from all new devices added (#27101) 9 years ago
Ricardo Carrillo Cruz 857726e6b1 Make the 'not found' regex case sensitive (#27100)
Turns out in some commands, like 'sh bgp summary' a line containing
'Not found' can be shown as a column.
This causes those commands to error out with RC=1 .

Fixes #26577
9 years ago
Nathaniel Case 85e7e342b0 nxos_bgp_af correct parents (#26996)
* move config location

* client-to-client is inverse of BOOL_PARAMS
9 years ago
James Cammarata 640d057f3f Don't use _raw_params for IncludeRole objects (#26601)
IncludeRole objects don't use _raw_params for the name/etc. of roles
like regular incudes, but the code for finding relative includes assumed
that all includes had a _raw_params field. This fixes that by correctly
checking the parent object type and using the appropriate field.

Fixes #26525
9 years ago
Thomas Stringer bf63301b34 Fix bug that was uncovered by comparing the port range which is inherently a string but ansible passes the param in as an implied int if the range does not contain a non-numeric char (#27017) 9 years ago
Gabor Lekeny 7eab802669 SSH fails with '"parsed": false' error message
Fixes: #15436
9 years ago
Brian Coca 8e0b89bdbf corrected precedence, added comments to each entry 9 years ago
Toshio Kuratomi f86ce0975d Add a directory walker to copy
* We need a directory walker that can handle symlinks, empty directories,
  and some other odd needs.  This commit contains a directory walker that
  can do all that.  The walker returns information about the files in the
  directories that we can then use to implement different strategies for
  copying the files to the remote machines.
* Add local_follow parameter to copy that follows local symlinks (follow
  is for remote symlinks)
* Refactor the copying of files out of run into its own method
* Add new integration tests for copy

Fixes #24949
Fixes #21513
9 years ago
Toshio Kuratomi 753a3a03d0 Revert "Fix for recursive copy slowness"
This reverts commit 78ced5318f.

The fix for copy slowness did not handle circular symlinks.
9 years ago
Pilou 556a1daa33 fix searched paths in DataLoader.path_dwim_relative (avoid AnsibleFileNotFound) (#26729)
* add unit test: nested dynamic includes

* nested dynamic includes: avoid AnsibleFileNotFound error

Error was:
Unable to retrieve file contents
Could not find or access 'include2.yml'

Before 8f758204cf, at the end of
'path_dwim_relative' method, the 'search' variable contained amongst
others paths:
'/tmp/roles/testrole/tasks/tasks/included.yml' and
'/tmp/roles/testrole/tasks/included.yml'.
The commit mentioned before removed the last one despite the method
docstrings specify 'with or without explicitly named dirname subdirs'.

* add integration test: nested includes
9 years ago
Jack Price aed35aba70 Always set `result` variable in `cloudflare_dns` module (#23683)
Fixes #23682
9 years ago
Ganesh Nalawade 5ab8d30d10 Add net_vrf implementation for junos (#27055)
*  junos_vrf implementation
*  junos_vrf integration test
*  net_vrf integration test for junos
9 years ago
Yanis Guenane f40db199aa openssl_*: Allow user to specify privatekey passphrase
Allow a user to specify the privatekey passphrase when dealing with
openssl modules.
9 years ago
Jordan Borean a260063ffd Added function to convert camelCase to snake_case for powershell (#26203)
* Added camel case to snake case converters

* removed uneeded shebang

* renamed util to remove PowerShell from the name
9 years ago
David Newswanger 9f64e446c6 Fix #26918: IOS TypeError (#26999)
Fix IOS TypeError

* if flags are None, then ' '.join(flags) fails
* fixed get_defaults_flag so that it returns a list, and ignores lines with white space

Fixes #26918
9 years ago
David Newswanger 0b5b5ec50a fix unicode errors in iosxr 9 years ago
Pierre-Louis Bonicoli 045f0ff520 deprecated msg: fix a typo 9 years ago
Thomas Stringer 3ffe44c70d remove param vm_id in VirtualMachine constructor call (#22974) 9 years ago
Toshio Kuratomi df15583ad0 Promulgate house's fix for docker_volume to docker_secret
* Revert change to docker_common as it's not as good as the try: except fix
* limit docker_volume fix to ImportErrors
* fix docker_secret i nthe same way
* Remove docker_secret from import tests
9 years ago
Will Thames ef8c9798d3 include_role handlers bug fix (#26335)
* Ensure that include_role properly fires handlers

include_role needs to ensure that any handlers included
with the role are added to the _notified_handler and
_listening_handler lists of the TaskQueueManager, otherwise
it fails when trying to run the handler.

Additionally, the handler needs to be added to the
PlayIterator's `_uuid_cache` or it fails after running
the handler

Add more uuid debug statements - this code was hard
to debug with existing debug statements, so add more
uuid information at little additional output cost.

Fixes #18411

* Add tests for include_role handlers

Tests for #18411
9 years ago
Chris Houseknecht 2e073e73d2 Fixes doc string in docker_volume (#27074) 9 years ago
Matt Davis 96a0bdeac5 fix docker_volume import error when docker Python package is missing 9 years ago
Michael Scherer 1289322147 Initial working prototype of a salt bus connection plugin (#12836) 9 years ago
Nathaniel Case 56a0b988a9 nxos integration fix part 1 (#27069)
* Assorted Python 3 fixes

* Fix `testcase` definition in integration tests

* Fix nxos_acl_interface

* clean up nxapi after nxos_nxapi
9 years ago
James Mighion b8337ee9d3 New module aireos_command (#26769)
* Adding ciscowlc_command module and unit tests.

* Adding __init__.py for unit test.

* Fixing PEP8 W503.

* Renaming module from ciscowlc_command to aire_command.

* Renaming aire_command to aireos_command.
9 years ago
Alex Grönholm 657ab58139 Added the docker_volume module (#24957)
* Added the docker_volume module

* Code style fixes

* Added yours truly to the copyright statement

* Added documentation link

* Fixed YAML syntax in documentation string

* Documentation style fixes based on the code review

* Implemented requested code corrections

* Added documentation for the "labels" option
* Handled APIErrors from docker-py
* Fixed the type of the "labels" option (dict -> list)

* Fixed typo

* Import APIError from docker_common, not from docker-py
9 years ago
Frederic Lepied 65d093d9a7 Skip f5 tests if f5-sdk is not installed (#27035)
Fixes: bug #27034

Introduced by 278fa552f8
9 years ago
Tim Rupp 09e9b4b4ba Adds refactored bigip_monitor_tcp (#26842)
This module needed to be refactored to use the REST API and
coding conventions for newer modules. This patch adds those changes.
This patch also deprecates params in favor of separate modules. These
deprecated params will be removed in 2.5.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_monitor_tcp.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_monitor_tcp/tasks
9 years ago
Andreas Olsson 593297d7a2 Only use `git verify-tag` when verifying annotated tags (#26414)
* Only use `git verify-tag` when verifying annotated tags

The command `git verify-tag` only applies to annotated tags. When
verifying lightweight tags, which are more similar to non-moving
branches, one has to use `git verify-commit` instead.

Using ':' as a separator is appropriate since that is one of the
characters not allowed in a Git reference name.

See also https://www.kernel.org/pub/software/scm/git/docs/git-check-ref-format.html

* Improve testing of the Git module's gpg verification
9 years ago
Andreas Olsson 779d05aec4 Support tilde (~) paths for unarchive creates tests
This expands the value of the creates parameter the same way which the
value of the dest parameter is already being expanded.

Fixes #26965
9 years ago
Yanis Guenane bc30dddb81 openssl_publickey: Allow one to specify the output format (#27031)
Public key can be extracted extracted in different format from
the PEM formatted RSA pair.

This commit allows the user to specify the format s/he wants to generate
the public key:

  * PEM
  * OpenSSH
9 years ago
Yanis Guenane 1dc608f2cf OpenSSL modules uses file_common_args (#27032)
* openssl_publickey: Allow one to specify file permission

Allow a user to specify file permissions on the generated publickey via
the file module common arguments.

* openssl: Add documentation regarding file_common_args

Add documentation for those modules to let the user know that he can
rely on file_common_args to specify file permissions.
9 years ago
danielerez 317ad54599 ovirt: ovirt_host_storage_facts (#26184)
Added 'ovirt_host_storage_facts' module to retrieve
a list of HostStorage[1] objects by a specified iscsi
target and address.

E.g.
- ovirt_host_storage_facts:
    vm: myhost
    iscsi:
      target: iqn.2016-08-09.domain-01:nickname
      address: 10.34.63.204

[1] http://ovirt.github.io/ovirt-engine-api-model/master/#types/host_storage

ISSUE TYPE
* Feature Pull Request

COMPONENT NAME
* lib/ansible/modules/cloud/ovirt/ovirt_host_storage_facts.py

@machacekondra
@mureinik @maorlipchuk
9 years ago
Sloane Hertel 79e54f4006 [cloud] s3_bucket: policy comparison - fixes #25428 (#25723)
Creates a new way to compare bucket policies by making their elements hashable & comparing that way after normalizing syntax like single-item lists.
9 years ago
Abhijeet Kasurde cf34cefbdc Add FindByUUID testcase for vmware_guest_facts (#27022)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Yanis Guenane 0b1cca56f7 openssl_csr: Fix typo in the documentation (#27028)
Documentation state 'organizationUnitName' when the actual name of the
param is 'organizationalUnitName'
9 years ago
Dag Wieers 2b4a8095e9 Simplify XML error-handling and typo (#26929)
This PR fixes:
- A typo in the aci_login function
- Improve (XML) error-handling
- Rename status_code back to status
9 years ago
Ganesh Nalawade abb4361990 Add vyos_interface default description (#27029)
* Add default description string to vyos_interface

* If `state=up` it should remove the `disable` configuration
  for interface. However, if no other interface parameter is configured
  this ends up deleting the interface itself which is not the desired
  behaviour. Hence adding a default description field to avoid such
  scenario's.

* Minor changes

* Add default description to aggregate
9 years ago
James Mighion f682d9bf49 Adding aruba_command module along with unit tests. (#26625)
* Adding aruba_command module along with unit tests.

* Fixing PEP8 E303 too many blank lines.

* Adding default for timeout.

* Removing unused arguments. Moving default for timeout argument. Fixing cliconf to find hostname.

* Fixing PEP8 E302.
9 years ago
Matt Davis 907b662dc6 Powershell module_utils loader and tests (#26932)
* supports custom module_utils loads (anything in module prefaced with `#Requires -Module Ansible.ModuleUtils.*`)
* supports all usual PluginLoader module_utils locations (built-in lib/ansible/module_utils/, custom path from config, playbook module_utils/, ~/.ansible/module_utils, role module_utils, etc), 
* moves Powershell module_utils from module_utils/powershell.ps1 to module_utils/powershell/Ansible.ModuleUtils.PowerShellLegacy.psm1
9 years ago
Dag Wieers 636f8737c9 win_unzip: Add integration tests, check-mode, various (#25335) 9 years ago
David Moreau-Simard 26d358c64d Fix typo in docstring for host inventory plugin 9 years ago
David Moreau-Simard 16073f5b08 Add the 'ttl' parameter for sensu_check
The TTL [1] parameter for checks allows Sensu to detect if a check
has gotten stale (i.e, stopped checking).

[1]: https://sensuapp.org/docs/latest/reference/checks.html#check-attributes
9 years ago
Dag Wieers 1e8713a50a win_shortcut: Fail when command is not absolute path (#26533)
This PR ensures the user gets a proper error when the `src` is not an absolute path.

And some cosmetic cleanup, and improve integration tests.
9 years ago
Sloane Hertel d971629062 [cloud] Fix ASG updates when LaunchConfigurationName does not exist for ASG instances
when replacing launch configurations the previous launch config is removed from any instances (#26966)
9 years ago
Vinay Dandekar 5b109506c4 [cloud] Rename ec2_facts to ec2_metadata_facts (#26293)
- Update CHANGELOG with ec2_facts deprecation notice
9 years ago
Ted Timmons 65da6a0789 [cloud][py3] Use to_bytes in ec2_key module in two more places (#26936)
PR #23051 fixes the first failure of this, but it doesn't fix the successive calls.
9 years ago
Matt Clay 6ce683c29e PEP 8 fix. 9 years ago
Tim Rupp a236d249ae Adds the bigip_configsync_actions module (#26506)
This module is required as part of HA configuration of a set of
BIG-IPs. It is used to initiate and way for configuration syncing
to happen.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_configsync_actions.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_configsync_actions/tasks
9 years ago
Tim Rupp 3af1d6ccae Adds file_common_args to f5 utils (#26618)
This is needed by a future module, so I wanted to make sure it's
available now.
9 years ago
Tim Rupp ea14107a56 Fixes some bugs in yaml and code (#26627)
related to default values that were pointed out to me.
9 years ago
Tim Rupp 75e609c15e adds the bigip_ucs module (#26663)
This module allows you to load existing UCS files onto a BIG-IP
system

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_ucs.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_ucs/tasks
9 years ago
Tim Rupp 72f41148a0 Adds tcp_echo module for bigip (#26844)
This patch is part a refactor of TCP monitors for BIG-IP. This module
may file in testing without the base tcp module merged because it makes
use of similar fixtures.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_monitor_tcp_echo.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_monitor_tcp_echo/tasks
9 years ago
Tim Rupp 278fa552f8 Adds half-open tcp monitor module (#26920)
This is necessary as a part of refactoring the tcp monitor module.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_monitor_tcp_half_open.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_monitor_tcp_half_open/tasks
9 years ago
Brian Coca 5ffb40fcdb properly filter out noise from debug 9 years ago
Sloane Hertel cdd1a147f1 [cloud] fix exception examples in AWS guidelines to be compatible with python3 (#26948) 9 years ago
Dag Wieers 3f567d5295 Added RETURN information
Just that.
9 years ago
Anil Kumar Muraleedharan 9258196184 Update cnos_devicerules.py to add 4 new device supports (#26745)
The devices are NE1072T, NE1032, NE1032T, NE10032, NE2572
9 years ago
Anil Kumar Muraleedharan 7098735fdf Checked again with YAML Checker and Pep8 checker (#26786) 9 years ago
Abhijeet Kasurde f5e9d19af7 Correct usage of FindByUuid in vmware module util (#26040)
This fix corrects the usage of function FindByUuid by
specifying correct parameter 'uuid' and 'instanceUuid'
as documentation of VMWare's API.

Fixes: #24398, #24835, #25713

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abdul Anshad A c6d012a2eb fix issue #4755 (#19234) 9 years ago
Andreas Olsson 4e01397817 Add IPv6 support to module_utils.urls TLS validation (#26852)
socket.create_connection is a higher-level function, which tries to
establish a socket connection using both AF_INET and AF_INET6. It got
introduced in Python 2.6, which ought to be fine with Ansible 2.4.

Fixes #26740
9 years ago
Ganesh Nalawade b8cd646afd net_lldp_interface module implementation for junos (#26915)
*  junos_lldp_interface module implementation
*  junos_lldp_interface integration test
*  net_lldp_interface module intgration test for junos
*  Add lldp configuration parameter in junos_lldp
*  Modify junos_lldp testcase as per above change
*  Add net_lldp_interface module documentation
9 years ago
Will Medlar 3f67d167fe [Fixes #26690] Supports Python 3 handling of base64 encoding (#26876)
* [Fixes #26690] Supports Python 3 handling of base64 encoding

* Set text auth to separate variable for reuse
9 years ago
Jimmy Conner fbf68b5725 vmware_guest relative paths for folder (#26927)
* Re-introduce relative paths to vmware_guest folder:

Move compile_folder_path_for_object function from vmware_guest_find to
utilities
Allow full path or relative path to be specified for the folder
parameter.  We will build the full path to the new VM.

* Remove duplicate check

* PEP8 Fixes
9 years ago
Peter Sprygada 8e2dcaf9f6 update asa to use network_cli connection plugin (#26899)
* WIP update asa to use network_cli connection plugin

* add asa.py to cliconf plugins
* update asa.py terminal plugin to support regexp and events
* update constants to map asa modules to asa action handler
* update asa action handler to implement persistent connections
* update asa shared module to use persistent connections
* update asa_command module to use new connection

* fixed pep8 issues
9 years ago
Toshio Kuratomi 84fb9f032d Fix symlink handling (#26877)
* Fix symlink handling

On symlinks, make lnk_source return the absolute path of the target of the symlink.
Add a new return field lnk_target that returns the actual, unexpanded path to the target of the symlink.
9 years ago
Sloane Hertel 66f5a094bc [cloud] iam_cert: allow paths to be specified so slurp is not necessary for remote host… (#26097)
* allow paths to be specified so slurp is not necessary for remote hosts to use

* Make requested changes

remove unused parameters

* remove module used out of scope

check the potential filepath to be true before checking isfile

remove required: false

* rephrase documentation

* remove 'lookups' from example
9 years ago
Toshio Kuratomi d64e291274 Fix modules' use of BOOLEANS*
* The canonical location of BOOLEANS has moved.  Switch imports to use that.
* clean up argument_spec use of booleans.
* Clean up imports to not use wildcards
* Remove usage of get_exception
9 years ago
Toshio Kuratomi ff22528b07 Consolidate boolean/mk_boolean conversion functions into a single location
Consolidate the module_utils, constants, and config functions that
convert values into booleans into a single function in module_utils.

Port code to use the module_utils.validate.convert_bool.boolean function
isntead of mk_boolean.
9 years ago
Toshio Kuratomi f9c60e1a82 Make the ConfigManager in constants private
All play focused code should access constants via ansible.constants, not
via the config API.  Even that API should only be used by
ansible-config.  It should be considered an internal implementation
detail to everything else
9 years ago
Abhijeet Kasurde e979663dfe Add testcase for vmware_guest_facts (#26873)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Rob efbc65bff0 New module: Add elb_application_lb_facts (cloud/amazon/elb_application_lb_facts) (#24584)
* New module - elb_application_lb_facts

* Make sure tags dont get snake cased

* Add listeners and listener rules to application facts

* python3 compat fix
9 years ago
Dag Wieers e970237a2f New module: access Cisco ACI (network/aci/aci_rest) (#26029)
* aci_rest: New module to access Cisco ACI

This PR includes:
- Relicense as GPLv3+
- Check-mode support
- Cosmetic changes to documentation
- Examples in YAML format
- Removal of incorrect requirements (for this module)
- Do not log passwords
- Implement native fetch_url instead of requests
- Use standard hostname, username and password parameters
- Add alias src for parameter config_file
- Add mutual exclusive content option for inline data (and show some inline examples)
- Add timeout parameter
- Add validate_certs parameter
- Handling ACI result output (identical for JSON as XML input)
- Parse/expose ACI error output to user

* Lower case method, add use_ssl, Use python dicts

This commit includes:
- Use lowercase method names
- Add `use_ssl` parameter (not the `protocol` parameter)
- Use a python dict for the request data (not a JSON string)
- Documentation improvements

* Ensure one of 'content' or 'src' is provided

* Fix issue with totalCount being a string in JSON

This fixes the problem with JSON output where totalCount is a string and
not an integer.

This fixes jedelman8/aci-ansible#7

* Improve code documentation

* Improve error handling and module response

* Small typo

* Improve documentation and examples

* Keep protocol parameter, but deprecate it

* Extrude aci functions from module_utils

* aci_rest: Add unit tests
9 years ago
Nathaniel Case a3aa5d799e Fix nxos_system name-server parsing (#25973)
* Fix nxos_system name-server parsing

* Introduce lookup_source as a noop, but don't advertise its use
9 years ago
Nathaniel Case 855544604a Fix nxos_bgp_neighbor_af advertise_map and advertise_map_non_exist (#26721) 9 years ago
Brian Coca 4d55148ab2 removed redundant loader 9 years ago
Trishna Guha e5c2e1b7be iosxr_logging implementation module (#26886)
* iosxr_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* iosxr_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Trishna Guha c38bccb3c4 Add ios_logging implementation module (#26785)
* Add ios_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix doc

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* integration test net_logging and ios_logging

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify the module code

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify the module code

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* change collection to aggregate

* fix buffer size logic

* fix pep8 issues
9 years ago
apmits 033a68d453 pip: Add example for --user (#26856)
* state type of arguments explicitly

* add example for --user argument
9 years ago
Rob d0d2beafba have elb_application_lb use modify_listeners to avoid removing/recreating them (#25650)
* Rework how listeners and rules and handled. Fixes #25270

* Tidy up, documentation and add rules to returned output

* Remove required=False from argument_spec

* Remove unused functions. Add or [] in case of no elb

* Handle when listners is None in ensure_listeners_default_action_has_arn
9 years ago
sramakr b980a5c02a Use Boto3 for ec2_group Fixes #23507 (#25340)
* Use Boto3 for ec2_group

Currently boto doesn't support ipv6. To support ipv6 in ec2_group, we need boto3.
boto3 has significant API changes, which caused more re-factoring for ec2_group module.
Added additional integration test to test_ec2_group role.

* Follow the standard for boto3 ansible

Fixed imports. Use boto3 ansible exception with camel_dict_to_snake_dict.
Refactored the call to authorize/revoke  ingress and egress.

* Removed dependancy with module ipaddress

Added new parameter called cidr_ipv6 for specifying
ipv6 addresses inline with how boto3 handles ipv6 addresses.

* Updated integration test

* Added ipv6 integration test for ec2_group

* Set purge_rules to false for integration test

* Fixed import statements

Added example for ipv6.
Removed defining HAS_BOTO3 variable and import HAS_BOTO3 from ec2.
Cleaned up import statements.

* Fixed exception handling

* Add IAM permissions for ec2_group tests

Missing AuthorizeSecurityGroupEgress necessary for latest tests

* Wrapped botocore import in try/except block

Import just botocore to be more similar to other modules
9 years ago
Ganesh Nalawade 879acf378d junos implementation of net_lldp (#26872)
*  junos_lldp module
*  junos_lldp integration test
*  net_lldp integration test for junos
*  Other minor changes
9 years ago
René Moser 30ad30c470 cloudstack: remove CloudStackException dep for several modules (#26874)
* cloudstack: cs_affinitygroup: remove CloudStackException dependency

* cloudstack: cs_domain: remove CloudStackException dependency

* cloudstack: cs_firewall: remove CloudStackException dependency

* cloudstack: cs_host: remove CloudStackException dependency

* cloudstack: cs_instancegroup: remove CloudStackException dependency

* cloudstack: cs_pod: remove CloudStackException dependency

* cloudstack: cs_configuration: remove CloudStackException dependency, fix pep8

* cloudstack: cs_cluster: remove CloudStackException dependency

* cloudstack: cs_network_acl: remove CloudStackException dependency

* cloudstack: cs_network_acl_rule: remove CloudStackException dependency

* cloudstack: cs_zone_facts: remove CloudStackException dependency

* cloudstack: cs_zone: remove CloudStackException dependency

* cloudstack: cs_vpn_gateway: remove CloudStackException dependency

* cloudstack: cs_vpc: remove CloudStackException dependency

* cloudstack: cs_sshkeypair: remove CloudStackException dependency

* cloudstack: cs_role: remove CloudStackException dependency

* cloudstack: cs_ip_address: remove CloudStackException dependency

* cloudstack: cs_ip_staticnat: remove CloudStackException dependency

* cloudstack: cs_resourcelimit: remove CloudStackException dependency

* cloudstack: cs_region: remove CloudStackException dependency

* cloudstack: cs_project: remove CloudStackException dependency

* cloudstack: cs_network: remove CloudStackException dependency

* cloudstack: cs_loadbalancer_rule_member: remove CloudStackException dependency

* cloudstack: cs_loadbalancer_rule: remove CloudStackException dependency

* cloudstack: cs_iso: remove CloudStackException dependency
9 years ago
Patrick Marques a59684fddd Created digital_ocean_floating_ip module (#18922)
* Created digital_ocean_floating_ip module
9 years ago
René Moser 8477525d2b cloudstack: cs_account: remove CloudStackException dependency (#26870) 9 years ago
Rene Moser 1a27546039 cloudstack: cs_router: use query_api, remove CloudStackException dependency 9 years ago
Rene Moser 9543025b91 cloudstack: cs_router: fix pep8 9 years ago
Rene Moser d88e9ab869 cloudstack: cs_router: add zone param 9 years ago
Rene Moser c896aab5e3 cloudstack: cs_router: fix router not found and async polling in reboot 9 years ago
René Moser 5979f2543f cloudstack: cs_instance_nic: remove duplicate code (#26869) 9 years ago
René Moser 1d907de966 cloudstack: cs_user: fix pep8 and minor restyling (#26849) 9 years ago
René Moser 2a751e1753 cloudstack: cs_instance_nic: remove CloudStackException dependency (#26860) 9 years ago
René Moser 8320071e81 cloudstack: utils: reduce cs lib dependency in modules (#26848)
Also improves error handling and reduces code duplication
9 years ago
ioggstream dc408f9035 known_hosts: always use lowercase hostnames for host keys (#26850) 9 years ago
Pilou d9265c7498 os_ironic: fix broken import (#26802) 9 years ago
Quentin Dawans 613690bd46 Proxmox set number of cores for vm/ct (#25901)
* Proxmox set number of cores for vm/ct

Argument to limit the number of assigned core to a vm/ct

* version_added & pep8

* default to 1
9 years ago
Ganesh Nalawade bf48364c72 junos implementation for net_l3_interface module (#26829)
* junos implementation for net_l3_interface module

*  junos_l3_interface implementation
*  junos_l3_interface integration test
*  net_l3_interface integration test for junos

* Fix module name typo
9 years ago
Brian Coca 04868c22b7 fixed issue with null host vars 9 years ago
Adrian Moisey 6ba49f42c2 Allow creation of github release tags (#25338)
* Allow creation of github release tags

* Reword description

* Prefer to use required_if
9 years ago
Abhijeet Kasurde 6bc15d11b9 Remove unreachable code (#26820)
Break statement is unreachable in current for loop.
Safely remove break statement.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde b6fdc904a9 Remove redundant switch_name param (#26817)
Class uses a redundant switch_name param, which can be
removed safely.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Peter Hoffmann 2f81a28414 use tenant in UserPassCredentials if set (#20751)
* use tenant in UserPassCredentials if set

If you have multiple Tenants you need to set the tenant in https://github.com/Azure/msrestazure-for-python/blob/master/msrestazure/azure_active_directory.py otherwise the azure_rm.py call will fail.

see: https://github.com/ansible/ansible/pull/20750

* fixed PEP8 failure
9 years ago
Jordan Borean 8e05d7d962 win_secedit: Added module with tests/diff mode (#26332)
* win_secedit: Added module with tests/diff mode

* fixed up test issues

* Added missing return value

* change for win_secedit based on review

* updated win_security_policy examples for rename
9 years ago
Dag Wieers 4a1864765b Windows: Path integration tests (#26490)
These integration tests were used for testing the exact behaviour of
Ansible for YAML-style syntax and key=value syntax.

This includes fixes to win_shortcut (as `src` can be a URL too)
9 years ago
Colin Heinzmann 1d14de1d8c fixed win_nssm escaping issue (#22512)
* bugfix: applicaiton setting was not properly escaped leading to issues
when picking application under C:\Program Files (x86)\...
9 years ago
Nathaniel Case 61249995a1 Update nxos_interface_ospf & add test (#26644)
* Update nxos_interface_ospf & add test
9 years ago
Jordan Borean eb1ed6567c win_regedit: rewrite to support edge cases and fix issues (#26468)
* win_regedit: rewrite to support edge cases and fix issues

* fix up byte handling of single bytes and minor doc fix

* removed unused method

* updated with requested changes
9 years ago
Greg 3506febbb9 Fixing issue related to writing ini files
When the file is opened with rwa+ and the update file size is smaller than the original the ini file can become corrupt.  The issue was noticed when we had comments at the top of /etc/yum/pluginconf.d/rhnplugin.conf after using the rhn_register module the file became correct.

rwa+ also make no sense as the file is only written too and why would any appending need to happen?
9 years ago
Jonan 088b930808 Update service.py
Ensure "initctl status servicename" passes along arguments to check correct instance.
9 years ago
Arne de Laat c536f7789b In cronvar only use '-u {user}' if self.user is not the current user
Use the same logic as in the cron module.
9 years ago
Brian Coca c581ae4b8d corrected version 9 years ago
Peter Shrom 80e88a7d40 updated version added 9 years ago
Peter Shrom de5fb8d98c adding ability to set openstack image ids 9 years ago
Gawain 6608629d25 Add 'mac_address' to the attributes returned from the vmware_vm_facts module (#26527)
* Add 'mac_address' to the attributes returned from the vmware_vm_facts module

* fix pep8 issue
9 years ago
Ganesh Nalawade 751ad7021c vyos implementation for net_interface module (#26799)
* vyos implementation for net_interface module

*  vyos_interface implementation module
*  vyos_interface integration test
*  net_interface integration test for vyos

* Change collection to aggregate
9 years ago
Abhijeet Kasurde a1977d9654 Remove redundant get_obj method (#26324)
vmware_guest_facts has redundant get_obj method, this can
be removed safetly.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi e986e31a75 This function is for setting variables on hosts. So those two parts are always required.
Don't have to check for the existence of those in the function.  If they
aren't set to iterables then it should be up to the calling code to
handle it.
9 years ago
Abhijeet Kasurde b4a58b65fb Add param for snapshot subtree removal (#26576)
Fix adds a parameter for removing snapshot subtree.

Fixes: #26522

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Peter Sprygada b9a1998af5 changes `changed` to `modified` in save_when choices (#26801) 9 years ago
Peter Sprygada 3bbb32cac5 fixes error when trying to run show start over eapi (#26800) 9 years ago
Abhijeet Kasurde 156b29b26b Fix for check_mode in archive (#26788)
Fix adds check_mode fix for archive module. Also,
adds unit tests for archive module

Fixes: #26750

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ricardo Carrillo Cruz 8333a8b908 Fix eos_config defaults logic (#26798)
Current code is bogus, it was passing flags all unconditionally.
9 years ago
Robin Roth d4482761ba Make lujeni only maintainter of mongodb_user (#26789) 9 years ago
Lujeni 661791dcb7 Fix the editable condition into pip module (#19028) (#19688)
* Fix the editable condition into pip module (#19028)

* Add editable to tests

Default changed to False, so now editable: True is needed explicitly in
tests
9 years ago
Morgan Robertson 44730c28cc Allow creation of Mongo user via localhost exception (#22792)
* Allow creation of user with localhost exception.

Fixes #22791

When access control is enabled, Mongo allows a user to be created from
localhost (called the "localhost exception":
https://docs.mongodb.com/v3.2/core/security-users/#localhost-exception).
When the `update_password` parameter was added to this module in
Ansible 2.1, this functionality was broken due to a query performed
before `user_add()` is called. This fix only performs the query when
when `update_password` is set to `on-create`, allowing a user to be
created via the localhost exception.

* Only set `password = None` when user exists.
9 years ago
jctanner 245a4d30b9 vmware_guest: fix datastore selection on equal sized disks and add tests (#26774)
* Fix datastore selection on equal sized disks and add tests
9 years ago
Will Thames df321e8579 [cloud] change iam_managed_policy return to snake_case (#26219)
* Change iam_managed_policy to return snake case

Import module_utils.ec2 methods explicitly

* iam_managed_policy: tidy argument spec

Remove unnecessary specifications (`default=None`, `required=False`)
Use `required_if` to check for `policy` when `state` is `present`

* Provide exception handling in iam_managed_policy

Pretty much all AWS API calls can go wrong, and we should handle them.

Update line wrapping to improve readability of method calls

* Improve error handling when policy version limit exceeded

Better document policy version limit exceeded, and check
the error code to see that that's actually what happened
(rather than e.g. no permissions to add a new version)

* iam_managed_policy: better handle pagination and retry
9 years ago
Takuya Sato 179e2882f7 ecs_taskdefinition module: containers.environment convert to string (fix #23297) (#23681)
It is to fix the failed comparison of containers.
9 years ago
Rene Moser 6d81c9670f cloudstack: cs_role: fix UnboundLocalError in check mode 9 years ago
Brian Coca 3a1b84153c ensure all groups inherit from 'all' 9 years ago
Brian Coca 84367eacef added ansible_remote_tmp inventory var (#26754)
* added ansible_remote_tmp inventory var

* fixed horrible crime of no space after #
9 years ago
Nathaniel Case 62e4353ba1 nxos_facts cleanup (#26192) 9 years ago
Nathaniel Case f3acf9c929 Fix NX-API json handling (#26716) 9 years ago
Sloane Hertel ed51380c2c [cloud] ec2_vol module snapshot and volume_size are not mutually exclusive (#26764) 9 years ago
Pilou 2a92120ffa INI inventory plugin: add documentation about variable types (#25798)
* INI inventory: check variable types
* INI inventory: add doc about variable types

Fixes #25784
9 years ago
Ricardo Carrillo Cruz af4dc6d0eb Add vyos_lldp and vyos_lldp_interface modules (#26753)
* Add vyos_lldp and vyos_lldp_interface modules

* Fix module docstring issue

* Fix bogus aggregate reference

* Add vyos_lldp integration tests

* Add vyos_lldp_interface integration tests

* Remove unused import for run_commands

* Add VyOS net_lldp integration tests

* Remove junos and netconf from net_lldp integration tests

* Add net_lldp_interface integration tests

* Correct CLI filtering tests for VyOS

* Fix pep8 issues

* Fix more pep8 issues
9 years ago
Pilou 4b3d6dfa8a Use pycodestyle instead of pep8 (#25947) 9 years ago
William Leemans 267d0fb400 Update hpilo_boot.py (#24499)
* Update hpilo_boot.py

Add option to change the ssl version to connect to the remotr iLO

* Update hpilo_boot.py

added version_added

* Update hpilo_boot.py

fix lib/ansible/modules/remote_management/hpilo/hpilo_boot.py:83:25: W291 trailing whitespace

* Update hpilo_boot.py

nitpicking fixes :)
9 years ago
William Leemans ae3a6cd931 Update hpilo_facts.py (#24503)
* Update hpilo_facts.py

Add option to change the ssl version used to connect to the remote iLO

* Update hpilo_facts.py

addition of spaces after commas in lists and replace()
9 years ago
Toshio Kuratomi b49be56c5b Need regex and string types to match when cleaning arguments for logging
Fixes #25078
9 years ago
Ricardo Carrillo Cruz 5719687920 Split net_lldp into net_lldp (service) and net_lldp_interface (#26757) 9 years ago
Christian Pointner 34c0abd106 Openssl csr fixes (#26110)
* openssl_csr: fix for python3

* openssl_csr: actually check for existence of pyOpenSSL

* pep8 compliance

* fixes for python 2.6 and 3
9 years ago
Ricardo Carrillo Cruz 5a20095b04 Add missing __init__.py on network protocol folder (#26742) 9 years ago
Ricardo Carrillo Cruz 9e819eeee8 Add net_lldp platform agnostic module (#26738) 9 years ago
Peter Sprygada 41c1457823 adds put_file and fetch_file implementations for cliconf plugin (#26728) 9 years ago
Bartek Bielawski 374ea94dc3 Adding more explicit module syntax (#26722)
Removing module_version from Attributes, support for class based resouces that need version specified when multiple version are present, support for File resource that has blank output for ModuleName/Version in Get-DscResource
9 years ago
Brian Coca a5007f2f88 Namespaced facts fixes (#26615)
* shorten warning on reservd fact collision

also remove ansible_ from namespaced facts for vars manager
handle str conversion errors
use tuple to avoid iterator errors
version added added

* only modify final one

* removed ansible_ removal
9 years ago
jctanner df507ca9c4 vmware_guest: fixes for cache objects and datacenter association (#26719)
* vmware_guest: fixes for cache objects and datacenter association
* find_all_objs was only looking for datastores
* Clear the result if it's datacenter is not correct.
* Re-enable pyvmomi installation

Addresses #25011
Addresses #26511
9 years ago
evancarter-iex c22ec81b99 gce_instance_template: Add ability to use disks_gce_struct (#25500)
* Add ability to use disks_gce_struct

* Fixed typos in the options section

* Spacing fixes
9 years ago
Nathaniel Case 5cfdd5df0f nxos_pim_interface (#26367)
* Add unit tests to nxos_pim_interface

* Update tests to match module

* Update nxos_pim_interface

* Address pep8 issues
9 years ago
Matt Davis c711754924 fix win_chocolatey syntax errors 9 years ago
Brian Coca c2326aef01 dont show failed key on debug 9 years ago
tdtrask c24398cfd9 apk: Fix failure when both install and upgrade in same command (#26666)
* apk: Fix failure when both install and upgrade in same command

If name list contains an installed package that needs upgrade plus a new package, apk command would fail due to missing space character.

* Simplify fix by concatenating lists
9 years ago
Ken Celenza 31b6ac896d Kc update ip filter (#26566)
* add first, last and next usable

* add usable ip filters

* add size usable, range usable and wildcard

* add ip prefix and netmask filter

* add network formatting and check if ip in subnet

* clean up order, add comments

* fix pep8

* update format by index

* clean up and updates from jmcgill298
9 years ago
Ken Evensen 8a5490ea5f Fix for #26633 (#26653) 9 years ago
Craig R Webster c197a68508 Clarify behaviour for unmounted state (#26646)
Unmounting does not modify fstab.
9 years ago
Michael Scherer 1e5cfd16fc Fix typo in documentation for inventory ini plugin (#26643) 9 years ago
Dag Wieers d4c0124d04 wakeonlan: coverage near 100% and check_mode++ (#26683)
This makes check_mode run more code (without sending out a packet.

And should get coverage to 98%.
9 years ago
Ganesh Nalawade 112cae73df Minor py3 compliance change for network module (#26695)
*  Convert return value of `execute_command` to appropriate type
9 years ago
Trishna Guha 2f60f97ee3 vyos_logging implementation module (#26654)
* vyos_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* vyos_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Ricardo Carrillo Cruz 3f5736e14e Add vyos_l3_interface module (#26610)
* Add vyos_l3_interface module

* Add integration tests for vyos_l3_interface

* Add more corner cases in tests and fix multiple IPs logic
9 years ago
jctanner 10fc4417f7 vmware_guest: use the datacenter as a context for clone specs (#26511)
* Slight refactor on vmware_guest to fix path searching and vcsim compatibility.
* Clean up pep8 errors
* Fix more pep8 issues
* Add assertions
* Remove debug failure
* Update docsting for folder with examples
* Revise _get_vm_prop based on suggestions
* Implement folder walker to find a folder path
* More enhancements for datacenter->datacenter cloning
* Fix a few pep8 issues
* Remove useless check for subclass of None
* Fix a few suggestions
* Move serialize_spec to a util function
* Group exceptions together

Fixes #25011
9 years ago
Tomas Tomecek 5b898a7732 add connection plugin for buildah (#26170)
* add connection plugin for buildah

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* fixup

 * create a method to invoke buildah
 * mount container filesystem persistently so we can access it
   during put and fetch
 * use copyfile function for copying files

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* revert tests

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* fixup

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* progress

(this will be squashed into a single commit before merge)

 * add docs for the conn plugin
 * fix issue invoking the integration tests
 * add a way to invoke commands inside the container as a different user

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* fix shellcheck warning

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
9 years ago
Peter Sprygada 63fe40c691 fixes issue when creating instance of NetworkConfig (#26665) 9 years ago
Hagai Kariti a2d4e083f1 ec2_vpc_route_table doc fix: 'subnets' isn't required (#26656) 9 years ago
Peter Sprygada 0b6f0e6c0d adds more intelligent save logic and diff to network config modules (#26565)
* adds more intelligent save logic and diff to network config modules

* adds sha1 property to NetworkConfig
* adds new argument save_when to argument_spec
* adds new argument diff_against to argument_spec
* adds new argument intended_config to argument_spec
* renames config argument to running_config with alias to config
* deprecates the use of the save argument
* before and after now work with src argument
* misc module clean

Modules updated
* nxos_config
* ios_config
* eos_config

Most notably this makes the save mechanism more intelligent for config
modules for devices that need to copy the ephemeral config to
non-volatile storage.

The diff_against argument allows the playbook task to control what the
device's running-config is diff'ed against. By default it will return
the diff of the startup-config.

* removes ios_config from pep8/legacy_files.txt

* extends the ignore lines argument to the module

* clean up CI errors

* add missing list brackets

* fixes typo

* fixes unit test cases

* remove last line break when returning config contents

* encode config string to bytes before hashing

* fix typo

* addresses feedback in PR

* update unit test cases
9 years ago
Brian Coca dc4037e5a7 more documented settings 9 years ago
Rene Moser dd9e6e9623 cloudstack: cs_iso: extend returns 9 years ago
Rene Moser 64643c4e7d cloudstack: cs_iso: add cross_zone param 9 years ago
Rene Moser 31d530d6af cloudstack: cs_iso: add display_text param 9 years ago
Rene Moser 3dc379c89d cloudstack: cs_iso: add update support, fixes pep8 9 years ago
René Moser 0391ac6ece fix pep8, fixes build (#26660) 9 years ago
Toshio Kuratomi da540b5c48 Properly export the public portions of module_utils.aws.core 9 years ago
mikedlr 07a4079a81 aws.core in new aws dir in module utils - module with AnsibleAWSModule class and fail_json_aws (#25780)
* aws module utils including AnsibleAWSModule
* fail_json_aws method on AnsibleAWSModule to do fail_json nicely with AWS exceptions
* aws module util - feedback - rename to aws/core.py & improve doc strings
9 years ago
Dag Wieers 8a1ad92cb8 command: Remove executable parameter when using command
This was discussed with the core team and removing this option was preferred.
For backward compatibility we accept the parameter, but warn the user instead.
9 years ago
Brian Coca 661b2c5beb allow implicit host to be grouped (#26614)
* allow implicit host to be grouped

also optimized patternmatching

fixes #24156

* resolved a great crime
9 years ago
Jason DeTiberus d173217833 cloud: gce: Allow specifying scopes by URI (#25074)
Previously the gce module would only allow scopes to be specified by
alias, this adds support for specifying scopes by full URI, however
validation is limited to just ensuring the URI begins with:
https://www.googleapis.com/auth
9 years ago
Adrian Likins 06d70ad95a Include found python and version in SSL_CONTEXT warning. (#24252)
Based on issue 23642, add some info about the used python
executable and version to the error message when ssl connection
fail in a way that may be related to the version.
9 years ago
Adrian Likins 261c40bac7 Fix azure module use of module_utils.facts (#25318)
Module was importing '*' from facts to get to TimeoutError
but that has moved to facts.timeout, so import is updated.

Also rm old style imports to new style imports at the start
of the module.

'signal' py module was used and referenced but never imported,
presumably it was using the 'signal' previously imported into
module_utils.facts. Now imported directly.

'AnsibleModule' was also from a * import, so now imported directly.

A ref to 'module' was in _delete_disks_when_detached(), so now it
is updated to raise an AzureException() with its message, and
let its caller catch it and call module.fail_json()
9 years ago
Adrian Likins dc75bc06d9 Fix for linode module requiring name for state=restarted (untested, rebased, migrated) (#24827)
* Rm check for unused 'name' arg for restarted.

The module docs claim 'name' is not required for
restarted state, and the code doesn't seem to use
it is.

* Better error msg for linode 'restarted' state.

* Remove the eval() and loop over args.

* Fix use of eval(args), and cleanups.

* linode 'stopped' state doesnt need name either

Fixes #3873
9 years ago
Ricardo Carrillo Cruz b81209c187 Fix multiple EOS EAPI code and test issues (#26651) 9 years ago
Brian Coca 035b4b95b0 booleanize value for ternary 9 years ago
Manuvaldi 3ff67fc217 hashi_vault module - Add verify param to support ssl Vault (#25159)
* Fix conflic with HVAC library check

* Fix pep8 error

* hashi_vault add validate_certs parameter
9 years ago
Adrian Likins 0fc0b6f059 Mv AnsibleFactCollector back to module_utils (#26150)
It was in lib/ansible/modules/system/setup.py since it
was the only thing using it, but move it back to module_utils
and add a ansible_collector.get_ansible_collector() to build
a facts collector just like the one used by setup.py

mv test_setup.py -> test_ansible_collector.py
All the code it was testing is now in ansible_collector

rm code to create 'ansible_facts' subkey from namespace

Just leave it up to the caller to do, and just return a
flat dictionary from AnsibleFactCollector.collect()
9 years ago
Michael De La Rue 43989d35b7 Mdd utils ec2 no profile fix (#26528)
* Handle boto.provider.ProfileNotFoundError when doing connect_to_aws
9 years ago
Ganesh Nalawade be89ef3eb6 junos_linkagg implementation and junos modules refactor (#26587)
* junos_linkagg implementation and junos modules refactor

*  junos_linkagg implementation
*  junos_linkagg integration test
*  net_linkagg integration test for junos
*  decouple `load_config` and `commit` operations,
   to allow single commit (in case on confirm commit) and
   to perform batch commit (multiple `load_config` followed by single
   `commit`)
*  Other related refactor

* Fix CI issues

* Fix unit test failure
9 years ago
Jordan Borean 81c22522a5 win_acl: registry support for special service accounts (#26629)
* Fixes #22968
* `APPLICATION PACKAGE AUTHORITY` ACLs also apply to the registry

* fixed nested for loop
9 years ago
Ryan Brown aa3975e084 [cloud] Stop CloudFormation module from always making changesets (#26619)
In Python a function is always truthy, and the name of the
`create_changeset` function was being accidentally used instead of
`module.params['changeset']`.
9 years ago
Anders Ingemann f018851303 sensu_subscription: Fix return type for 2 cases (#26546)
state=absent would cause errors in 2 cases resulting in the error:
"TypeError: 'bool' object is not iterable"
9 years ago
James Andrewartha 2e6ff97d06 Detect UEFI VMware guests (#26590)
VMware provides a different DMI product name for VMs booted via UEFI vs BIOS.

VMware provides a different DMI product name for VMs booted via UEFI ('VMware7,1') vs BIOS ('VMware Virtual Platform')

Fixes #26517
9 years ago
Dag Wieers 05e5698472 powershell.ps1: Validate Windows paths (#26488)
During the writing of Windows path integration tests we discovered that
incorrect paths (including escape sequences) cause very cryptic error
messages.

This fix ensures that invalid paths cause a proper error message.

We also had to fix the following modules:
- win_shortcut: `src` can be a URL
9 years ago
Tim Rupp c0fc79647a Fixes variable usage for api reconnect method. (#26553) 9 years ago
Thomas Stringer 8026ef57fe remove option checking for azure vm sizes (enum will not contain all) as well as default and start requiring the vm_size param (#24406) 9 years ago
Ganesh Nalawade 8c7a6cb8ac Add transformed json output in junos_command (#26382)
* Add transformed json output in junos_command

Fixes #26363
If the display is in `xml` format for command responses
add th transformed `json` output in the result.

* Fix CI issue
9 years ago
James Mighion 58ade65ea6 Adding admin option for iosxr_config (#26509)
* Adding admin option for iosxr_config. Adding unit test for new admin option for iosxr_config. Fixes #24308

* Removing space on empty line.
9 years ago
Ken Evensen f31d3ddeb7 Pamd Updates (#25817)
* Fix for #25522
Fix for #25855
Fix for #23963

* Minor fix

* Updates per bcoca.  Fix in regex for silvinux.
9 years ago
Trishna Guha 07498ebed3 fix nxos_overlay_global (#26422)
* fix nxos_overlay_global

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* swap check_mode with candidate

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Trishna Guha b81882e2a8 vyos_static_route implementation module (#26426)
* vyos_static_route implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add vyos_static_route implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify vyos_static_route

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* integration test vyos_static and net_static_route

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix typo integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify vyos_static_route

* modify integration test

* vyos_static_route doc build fix

* fix integration test data

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* update net_static_route cli test set

* minor fix
9 years ago
Josh Moore d5ae6cc585 postgres_db: add dump and restore support (#20627)
* Feature #2731: added postgres import and dump

* Feature #2731: be more permissive of arguments

```
hacking/test-module -m ./ppostgresql_db.py -a "db=example state=dump target=/tmp/out"`
```

failed previously since host, user, and port were required as keywords
in the pg_dump / pg_import methods.

* Feature #2731: fixed doc string for validate-modules

```
$ ansible-validate-modules database/postgresql/
```

now passes.

* Feature #2731: disable 'password' for dump/restore

* Feature #2731: bump added version to 2.3

* Feature #2731: replace db_import with db_restore

* Feature #2731: add missing version description

* Feature #2731: fix 'state' description

* Feature #2731: fix pep8 issues

* Feature #2731: put state documentation in a single string

* Bump added version from 2.3 to 2.4

* Fix pep8 and pylint errors

* Attempt yaml formatting of documentation string

* Add integration tests for postgres_db:dump/restore

* Update dump/restore logic to support new kw-args

Also attempt to support password; integration tests are
still failing.

* Revert to postgres user for dump/restore

Passing PGPASSWORD is not working for subprocesses. For the
moment, reverting to the strategy of failing if login_password
is set and using `postgres` for all testing of dump/restore.

* Various cleanups to have tests passing

* Working tests for {sql,tar} x {,bz2,gz,xz}

* Use pg_user to support FreeBSD

* Revert login_ prefixes and re-enable password support

All `login_` keywords are mapped to their non-prefix versions
so the previous changes were effectively using `postgres` for
all actions. With the proper keywords, PGPASSWORD-passing to
the subprocess is now working.

* Optionally add password

environ_update doesn't handle None values in the
dictionary to be added to the environment. Adding
check.

* Quick fixes

* Refactor login arguments after fixes from pchauncey

The fixes introduced by pchaunchy pointed to further issues
(like no --dbname on PG<=9.2) with the login parameters. This
refactors them and adds further tests.

Note: this will still not pass integration tests due to a further
      issue with pg_dump as a non-admin user:

      pg_restore: [archiver (db)] Error while PROCESSING TOC:
      pg_restore: [archiver (db)] Error from TOC entry 1925; 0 0 COMMENT EXTENSION plpgsql
      pg_restore: [archiver (db)] could not execute query: ERROR:  must be owner of extension plpgsql

* Introduce target_opts for passing limiting dumped/restored schemas

The current integration tests (PG version and template DBs) don't
permit a regular user (`{{ db_user1 }}`) access to plpgsql causing
restores to fail. By adding an option for passing arbitrary args to
pg_dump and pg_restore, testing is made easier. This also paves the
way for `-j` usage, once the PG version is bumped.
9 years ago
Alex 2eee5b2291 New module: gunicorn (#26206)
* add gunicorn module

* fixed types in docs

* Removed unsuported type from documentation
9 years ago
Jonathan Davila e96f8f2a0b fix issue with nmcli not parsing vars properly (#22095) 9 years ago
Tim Rupp 37ca55bf71 Adds missing fields for iapp service (#26507)
The iApp service module worked fine previously, but this patch
adds enhancements to it to include more fields that can be
specified when creating iapp services.
9 years ago
jhawkesworth deae1499ed win_get_url improvements; allow dir for dest and helpful error if dest parent dir doesn't exist (#25453)
* win_get_url now allows dir for destination and gives helpful message if download parent dir does not exist

* fix yaml lint failure
9 years ago
Dag Wieers e6ecc1285c win_chocolatey: Add -skip-scripts support (#26523)
This PR includes:
- A new parameter `skip_scripts` to disable running scripts
- Documentation fixes (wrt. booleans)
9 years ago
Andrew Saraceni 7d3951d065 win_scheduled_task: Add enhanced run option support (#24174)
* add enhanced run option support for win_scheduled_task

* changed run_level option to runlevel

* correct merge conflicts since task path fix

* changed run_level option to runlevel

* changed do_not_store_password to store_password, and other minor fixes

* conditional logic swap, and documentation change for password
9 years ago
Dag Wieers 52c1a1936d win_wakeonlan: New module to send Wake-On-Lan packets (#26232)
This is the Windows implementation of the **wakeonlan** module.
Useful if you want to wake up systems in a remote network with only
Windows systems.
9 years ago
René Moser 3050856f2a cloudstack: cs_instancegroup: fix pep8 (#26534) 9 years ago
Karim BEN YOUSSEF 804f40f7a5 script: Add support for chdir argument 9 years ago
Michael De La Rue 3c4db1e8dd Mdd psql user aws fix (#23988)
* postgresql_user module - transaction logic hacks to allow recovery from failed select

* postgresql_user - PEP8 and style fixes to make debugging easier

* postgresql_user - move password changing logic to separate function

* postgresql_user - trap failure in case where there is no access to pg_authid

* postgresql_user - further PEP8 fixes

* postgresql_user - Simplify password change logic and improve imports according to suggestions from PR review

* postgresql_user - Eliminate pep8/blank line errors introduced in merge

* Check behaviour when pg_authid relation isn't readable

TASK [postgresql : Normal user isn't allowed to access pg_authid relation:
      password comparison will fail, password will be updated] ***
An exception occurred during task execution. To see the full traceback,
use -vvv. The error was: psycopg2.ProgrammingError: permission denied
for relation pg_authid

* Don't reintroduce passlib, remove useless query
9 years ago
Daniel Parker 800de2b0ce [cloud] Adds custom serverless binary path option to the serverless module (#26304) 9 years ago
Rene Moser 4183d77c70 cloudstack: cs_instance_nic: add ip_address param 9 years ago
Adrian Likins 1cad0074f5 code cleanup and error improvement for hashi_vault (#17824)
Use standard import error handling.
Make error messages more specific.
Use more python idiomatic code.
9 years ago
Marc-Aurèle Brothier ee8ce99bed cloudstack: add nic operation (#26168)
* CloudStack: Remove networkid parameter in global list

* New module for CloudStack VM's Nic

Closes #25911

* Review changes
9 years ago
Dag Wieers f8982dcbd0 wakeonlan: Add integration tests and improvements (#26254)
This PR includes:
- Checkmode improvements
- Integration tests
- A fix for python3
- PEP8 fixes

This backports improvements from the win_wakeonlan module.
9 years ago
Ganesh Nalawade ba60ac04fc Implementation of junos_static_route module (#26501)
* Implementation of junos_static_route module

*  junos implementation of net_static_route
*  integration test for junos_static_route
*  integration test for junos net_static_route

* Minor change

* Doc change

* Fix CI issue
9 years ago
René Moser 63f4aa3069 cloudstack: cs_host: add state maintenance (#26502) 9 years ago
Toshio Kuratomi 5ceabe939d Fix the pause module for python3
* On python3, stdin goes through a buffer that translates from raw bytes
  to text.  this interferes with pause as it (1) performs universal
  newline conversion and therefore '\r' is turned into '\n' and (2) the
  buffering prevents us from getting the typed characters immediately
  (possibly a python3 bug?)  Using the raw byte stream that's behind the
  text decoder fixes these problems.

Unrelated cleanups:
* Use to_text instead of str for conversion into strings to avoid possible tracebacks
* Use either \r or \n as the end of a line.

Fixes #26278
Resolves #26446
9 years ago
Brian Coca 9fc6f85473 added some docs to config entries 9 years ago
Hari Krishna Dara fb7ef488f5 Clarify how formatting would be done. (#26474)
The current description doesn't say this, so there a chance for the user to think that Jinja formatting is what can be used.
9 years ago
champtar f25637e07a openwrt_init / opkg: clearly state that python is required (#26471)
* openwrt_init: clearly state that python is required

As python isn't installed by default on OpenWrt/LEDE,
clearly state that python is required

Signed-off-by: Etienne CHAMPETIER <echampetier@anevia.com>

* opkg: clearly state that python is required

As python isn't installed by default on OpenWrt/LEDE,
clearly state that python is required

Signed-off-by: Etienne CHAMPETIER <echampetier@anevia.com>
9 years ago
Ricardo Carrillo Cruz 83253cd8f0 Add net_l3_interface vendor neutral module (#26484)
* Add net_l3_interface vendor neutral module

* Fix pep8 issue
9 years ago
Ganesh Nalawade 10233ef3b5 junos_user declarative module changes (#26475)
* junos_user declarative module changes

*  Active/Deactivate support
*  junos_user integration test
*  net_user intergration test for junos

* Add version_added for active param
9 years ago
Trishna Guha c5fb4bbcc0 Fix nxos_switchport and unit test (#26131)
* fix nxos_switchport

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_switchport unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* legacy file

* update unit test

* handle exception
9 years ago
Chris Houseknecht 6af53cf0ef Adds docker_secret module (#26469) 9 years ago
Ricardo Carrillo Cruz 5acebc124a Add vendor neutral parameter fail_on_missing_module (#26482)
By default, the vendor neutral modules will just go on if no
implementation module is found.
If user specifies the task argument fail_on_missing_module and
sets it to True, then we bail out the play early and report that
to the user.
9 years ago
Ricardo Carrillo Cruz 8b0e052b88 Add missing net_linkagg action plugin (#26477) 9 years ago
Abhijeet Kasurde 3004c913e6 Pep8 fixes for opendj_backendprop_* (#24587)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ricardo Carrillo Cruz c73275b4b8 Add vyos_linkagg module (#26418)
* Add vyos_linkagg module

* Add vyos_linkagg integration tests

* Fix pep8 issue

* Address several review comments
9 years ago
James Mighion e785cc53db Adding stderr regex catch for iosxr commit failures. Adding error handling after executing commit command. (#26462) 9 years ago
Matt Clay 895e6c5d06 Fix wait_for with newer versions of psutil. (#26455)
* Add support for newer psutil versions.
* Fix psutil install in wait_for integration test.
* Fix test requirements for wait_for elapsed.
9 years ago
Brian Coca 2a041d10d2 better backwards compat handling of status
restored 'rc' inspection but only when failed is not specified
removed redundant changed from basic.py as task_executor already adds
removed redundant filters, they are tests
added aliases to tests removed from filters
fixed test to new rc handling
9 years ago
Dag Wieers 37508fde5f win_get_url: Replace skip_certificate_validation with validate_certs (#26464)
This is part of the effort to make win_get_url parameters conform to
other modules. The option `validate_certs` is the common option for
this.

See also #20160
9 years ago
Chris Houseknecht e2b340dfe0 Adds search in template/files/vars relative to the playbook path (#26460) 9 years ago
Toshio Kuratomi cf5fb0acdf Do not escape backslashes when using the template lookup plugin
This brings the lookup plugin inline with what the template module does.

Fixes #26397
9 years ago
Jean-Frédéric 23041c3b6c Fix error with `meta: clear_facts` (#26406)
Using `meta: clear_facts` was failing with
`coercing to Unicode: need string or buffer, Host found`

This applies the same fix as 3101e24.

Fixes #26405
9 years ago
Brian Coca 02311604c9 removed logger from paramiko
(cherry picked from commit 9b7dfd5945ec1ab329e288493b6962d4e8c33fa0)
9 years ago
Nathaniel Case 28c6b226c7 ansible-connection Python3 fix (#26441)
* Fix a number of unicode <-> bytes mismatches

* Return socket_path as text, not bytes

* Docstring run()
9 years ago
Matt Davis 08af853ee9 fix win_shell/win_command nonzero RC failure setting (#26443)
* as a result of recent core engine changes to ignore rc, modules are responsible to set `failed` on nonzero RC if they want that behavior
* the `failed` filter currently triggers on nonzero RC, which caused the tests to false-pass
* updated tests to explicitly check both rc and failed keys, as well as using the failed filter.
9 years ago
James Mighion 1d62283796 Making iosxr check_args call module_util/iosxr check_args. Fixes #25501 (#26261) 9 years ago
saichint 5229370364 fix for nxos_acl_interface idempotency (#26156)
* fix for nxos_acl_interface idempotency

* shippable error fix

* fix issues with python3.x
9 years ago
Dag Wieers f2ce2d2199 imc_xml: Use the correct response in error message (#26435) 9 years ago
Abhijeet Kasurde 613327d47a Add missing keyword args in aix_inittab (#26423)
fail_json fails if msg is not provided.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
James Cammarata 95a0fe37da UserKnownHostsFile=/dev/null when verify_host: false
This is a new fix to replace #20361 due to the synchronize module changing
sufficiently to make that commit no longer merge cleanly.

Fixes #20361
Related to #20311
9 years ago
Will Thames f8d522de69 Support check mode for efs_facts (#26273)
Facts modules support check mode by default

Fix pep8 compliance
9 years ago
Ganesh Nalawade e612d0be12 Add net_l2_interface platform agnostic module (#26410)
* Add net_l2_interface platform agnostic module

*  net_l2_interface module definition
*  net_l2_interface action plugin

* Fix CI issue
9 years ago
Dag Wieers b9d018885a win_chocolatey: Ensure chocolatey to fail (#26416)
Currently chocolatey is not failing when the user requests version X,
but version X is not available in the repository.

Obviously the module should fail in this case.

This fixes #25393
9 years ago
Jordan Borean 8e9d04043a win_regedit: fix for same dword value (#26415) 9 years ago
Dag Wieers 69ade22243 win_chocolatey: Fix updating 'all' packages (#26417)
This fixes #15018
9 years ago
Ganesh Nalawade 1a9b0ae731 Remove xml return for junos declarative modules (#26400)
*  Remove xml return
*  Add diff return
*  Related doc changes
9 years ago
René Moser c1ac55147f haproxy: docs: add version added for state=drain (#26396) 9 years ago
Rene Moser 37b22673fb cloudstack: cs_instance: fix KeyError: 'sshkeypair' 9 years ago
Jakub Jursa 5fafe4c672 openstack: os_volume: add optional scheduler_hints param (#26090)
* openstack: os_volume: add optional scheduler_hints param

* openstack: os_volume: scheduler_hints version_added fix

* openstack: os_volume: fixed codestyle
9 years ago
Trishna Guha ad3fe08aae fix vyos_banner multiline string issue (#26383)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
zzaa df0864d801 haproxy: Add new drained state (#25115) 9 years ago
Toshio Kuratomi 996281d748 Remove metadata from docstring parsing as per last week's meeting decision 9 years ago
Toshio Kuratomi 3ee997b720 metadata and doc generator optimization and fixes
* Fix ansible-doc traceback when a plugin doesn't parse correctly
* Change extract_metadata ivocation to take either an ast or source
  code.  When given source code, it can find file offsets for the start
  and end of dict.  When given the ast, it is quicker as it doesn't have
  to reparse the source.  Requires changing the call to the function to
  use a keyword arg.
* Fix reading of metadata to find the last occurrence of
  ANSIBLE_METADATA instead of the first.
* Add some more unittests to get closer to complete coverage
9 years ago
Abhijeet Kasurde 785ed2cfc0 Multiple fixes in digital_ocean_tag module (#24361)
* Pep8 fixes
* Removed redundant check for name
* Check validity of api_token
* Don't report changed when tag is already present

Fixes #24265

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
R. Soto 5c0c985547 update auth_flag variable after STARTTLS connection is established, fixes #26376 9 years ago
Matt Davis 0ee46cb0df converted become runas to explicit CreateProcessWithLogonW (#26378)
* fixes become_method: runas for unprivileged users
* sets permissions on tempdir appropriately
* allows automatic system environment generation for new token (old Process.Start way prevents this)
* add basic become runas tests
9 years ago
Brian Coca 1b727c372e igaffneypellz 9 years ago
Brian Coca 32fa4db232 add any_errors_fatal global config 9 years ago
Todd Hertel e9447e9481 ec2_group fix TypeError bug #26291 9 years ago
Andreas Olsson 42408a97ea Correct doc about the Git module verify_commit param
All that is required to verify the signature is that the matching
public key is present in the remote user's keyring. There is no need
for GnuPG to explicitly trust the authenticity of the key.

Not Ansible specific, but rather the behavior of the `git verify-commit`
and the `git verify-tag` command line invocations.
9 years ago
Michael Scherer bda066f6f6 Fix exception when using masquerade
The following snippet:

  - name: Let the DMZ connect to internet
  firewalld:
    zone: dmz
    masquerade: True
    permanent: True
    immediate: True
    state: enabled

will fail with this error message:

  Exception caught: set_masquerade_enabled() takes 1 positional argument but 3 were given

It turn out that it treat 'zone' as a array of string instead of 1 string.
I only tested on Python 3 with a Fedora 25.
9 years ago
Yanis Guenane 88099e2acb openssl_privatekey: Add publickey fingerprint (#22202)
This commit adds the fingerprint of the public key in openssl_privatekey
and openssl_publickey returned values.

```
{
  "changed": false,
  "filename": "/tmp/cert.pem",
  "fingerprint": {
    "md5": "31:22:14:58:c6:b1:7b:2a:48:89:b5:02:43:0a:d7:88",
    "sha1": "ed:e5:59:ba:9b:98:5b:e1:01:ef:4b:eb:f0:d1:1d:ee:84:88:c7:78",
    "sha224": "e1:c0:a6:bd:20:30:40:5b:c0:32:14:4a:01:3c:4b:c3:8a:49:a5:1f:ed:39:75:a4:57:e6:93:87",
    "sha256": "8a:18:86:88:79:e5:57:ca:c3:3c:89:92:ae:54:7f:ac:94:12:e2:c7:aa:c2:7c:97:77:cb:e7:8b:5e:1f:af:28",
    "sha384": "7a:5d:c2:49:cc:84:f4:74:ed:76:c7:03:e5:8d:aa:3b:31:b0:ba:0e:29:d2:76:3c:0e:3c:e5:d2:fd:b4:36:b1:70:b5:a6:bb:17:f4:db:ac:d6:75:81:36:42:dd:61:0c",
    "sha512": "da:0a:14:52:c6:c0:ab:fa:52:55:2a:85:65:35:7a:f6:5d:95:1d:d3:95:ae:bd:b9:d8:e0:75:dd:4f:0c:c9:3c:59:82:64:fa:d8:50:26:4f:b7:3a:5d:e8:6f:5d:de:9a:fe:ef:c2:c8:57:9d:e3:c0:c9:dd:4a:a9:bd:7a:77:f3"
  },
  "size": 4096,
  "type": "RSA"
}
```
9 years ago
Brian Coca 8f758204cf correct, cleanup & simplify dwim stack (#25956)
* correct, cleanup & simplify dwim stack

latlh chIS logh HeS qar wej chel laD
better errors
update find_file to new exception

* addressed latest comments

* test should not use realpath as it follows symlink

this fails when on OS X as /var is now a symlink to /private/var
but first_found was not supposed to follow symlinks
9 years ago
Abhijeet Kasurde ec6e3b0e32 Handle errors gracefully in vmware_guest_snapshot (#25727)
CreateSnapshot may fail with several exceptions. This
fix generically handles these exceptions.

Fixes #21121

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 29f5fe3ddd Resolve module correctly (#25658)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Yanis Guenane ed15a0e9a7 Remove get_exception from crypto namespace
Fix removes get_exception in favor of native Python exception
handling. Also, added to_native to manage exception message.
9 years ago
jctanner db5c0b3b2b Use the new file content function post facts refactoring. (#26353)
* Use the new file content function post facts refactoring.

Fixes #26339

* Do not make new abstraction ... use the real function

* Fix pep8 error
9 years ago
Ganesh Nalawade 11e72d495d Add net_logging platform agnostic module and junos implementation (#26316)
* Add net_logging platform agnostic module and junos implemenatation

*  net_logging platform agnostic module
*  junos implemenatation of logging module
*  net_logging integration test
*  junos_logging integration test
9 years ago
Ricardo Carrillo Cruz 4869a7b0ac Add net_linkagg platform agnostic module (#26341) 9 years ago
Trishna Guha 1b427aa419 Fix vyos banner idempotent (#26338)
* fix vyos_banner idempotent

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix vyos_banner unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Wil Tan 483346d94b Fix win_nssm credentials quoting (#26226) (#26228)
Quote password to avoid Powershell special characters being interpreted.
9 years ago
dupondje 46514de5e6 Fix version_added for new option in template introduced in #21846 (#26302) 9 years ago
Brian Coca 4361659bee correctly deal with encoding in errors
fixes #26256
9 years ago
Denis Afonso c9b00d2f02 Fixed the exception handling logic for the delete_group function. (#26109)
* Fixed he exception handling logic for the delete_group function.

fixes issue #26100

* Removed the unnecessary del_meta variables and made some other adjustments to the delete_user function
9 years ago
Abhijeet Kasurde 611fbea8ea Support quiesce, memory in vmware guest snapshot (#26275)
Fix adds support for quiesce and memory options while taking
snapshot of virtual machine. Update documentation and examples
for reflecting this change.

Fixes #26270

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde f0a5854e39 Fix unresolved import in vmware module_utils (#25288)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 5c374cd1ae Add Test Suite for vmware_vswitch (#26076)
Fix adds test suite for vwmare_switch

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Trishna Guha 93bbcd8a32 vyos_user fix idempotent (#26289)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Toshio Kuratomi 34589cee6d Unittests for extracting metadata from plugins (#26218)
* Unittests for extracting metadata from plugins
* Port plugin_docs to use the generic extract_metadata function
* Make the helper functions seek_end_of{string,dict} private
9 years ago
Will Thames 7ae4027c58 Improve ec2_vpc_subnet check mode (#23108)
check_mode should behave pretty similarly to non-check mode -
just don't actually create or delete subnets or change tags.

Using DryRun for check_mode behaves very differently and results
in the following module failure:

```
"msg": "Unable to update tags for subnet-abcd1234,
error: EC2ResponseError: 412 Precondition Failed
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<Response><Errors><Error><Code>DryRunOperation</Code>
<Message>Request would have succeeded, but DryRun flag
is set.</Message></Error></Errors>
<RequestID>12345678-abcd-1234-abcd-abcd1234abcd</RequestID></Response>"
```
9 years ago
Vinay Dandekar c884d4ab7f Add support for EC2 dynamic data in ec2_facts (#21532)
* Add support for EC2 dynamic data in ec2_facts

- Flattens out JSON in the instance identity document and IAM info/credentials for easy access to facts
- This changes region fact from ‘ansible_ec2_placement_region’ to ’ansible_ec2_instance_identity_document_region’

* Maintain backwards compatibility by putting the region into the old key

* Improve JSON parsing logic and split security group IDs

* Add documentation, backwards compatibility, fix bug and formatting

- Update documentation for ec2_facts with return values
- Preserve JSON value from the metadata service for backwards compatibility
- Fix bug in fix_invalid_varnames
  - The keys in the dict were being modified in place; new dict now created to hold the sanitized keys
  - Consolidate two replace calls with a regex substitution
- Move imports for ec2_facts to the top

* Add support for parsing the IAM instance profile role
9 years ago
Rob d1652aecf0 Upgrade ec2_remote_facts to use boto3 (#22937)
* Deprecate ec2_remote_facts in favor of ec2_instance_facts which uses boto3

* Update legacy-files.txt with deprecated file name change
9 years ago
Deepakkothandan a396c18a61 composer: add param for custom PHP Executable path (#26107) 9 years ago
Sam Doran 6b49fca7e5 Clarify docs for set_stats module (#26250)
Fixes #26191
9 years ago
Mike Wiebe 240de965ee Fix nxos_acl module and add IT tests (#25966)
* Fix nxos_acl module and add IT tests

* Add nxos_acl test

* Add additional properties to test
9 years ago
Duncan Lock 6d7647be54 yum: added example for `exclude` parameter. (#26216)
* Added example for `exclude` parameter.

* Remove trailing whitespace
9 years ago
René Moser 363761fc16 cloudstack: cs_template: default is_routing=None, fixes template upload for users (#26248) 9 years ago
Raja 171d903d04 Fix Python3 Errors in Azure Cloud Module
When using Python3, the exec_module function errors out with a
unsupported operand type(s) for +: 'dict_keys' and 'list'
error when adding the .keys() to a static list. Use the explicit
list function to make a list of keys and then add to the ['tags'] list.
9 years ago
Nathaniel Case 3102746ebe nxos_pim_rp_address fixes (#26119)
* nxos_pim_rp_address tests

* nxos_pim_rp_address changes

* Address issues with idempotence
9 years ago
Julien Vey 7f6c7c6334 parted: Add missing LC_TYPE override for env vars (#26242) 9 years ago
Brandon Davidson 7bb3467db9 Convert ec2_vpc_subnet module to boto3 and add map_public option. (#23783) 9 years ago
Sloane Hertel 338bf0fd3f ec2_vpc_dhcp_options_facts: if tags don't exist set them to default list instead of crashing - fixes #23825 (#23967)
* if tags don't exist set them to an empty list

* dhcp_option will always have a name tag

* make requested change
9 years ago
Ondra Machacek 0154f32fbd cloud: ovirt_disks: Fix download of the qcow disk (#26179)
Fixes: #26177
9 years ago
John R Barker 1b00f4193b Move net_* modules into specific sub-topics (#26234)
As we continue to expand the number of modules we must ensure they are
sensibly grouped.
9 years ago
Ricardo Carrillo Cruz c8ba8bdd6d Add ios_static_route module (#25527)
* Add ios_static_route module

* Add ios_static_route integration tests

* Add platform agnostic integration tests for IOS

* Replace unicode function to ansible module_utils to_text

* Add collections handling logic

* Add integration tests for collections

* Make collections and prefix mutually exclusive

* Add net_static_route integration tests for collections

* Do not store load_config return value, as it returns nothing
9 years ago
Ganesh Nalawade 911a7e085e Add active param to junos declarative modules (#26222)
*  active/deactivate configuration capability
*  integration test refactor
9 years ago
Daniel Kozlowski dcd1ff2809 Initial commit of iam_managed_policy file (#22097)
This module can add, remove, update versions, and set default versions
of managed policies. It will cycle out old versions of policies if too
many are present. It will check and set the version of the policy that
matches the pased in policy document if one already exists.

Incorporating changes from PR

Descriptions now have full stops, and pep8 error has been
addressed. Also added requirements, author, and updated interface to
"preview"

Additional change to pass CI

Previous commit added in some whitespace errors. Additinoally added
correct value for version_added, added in a RETURN block for
documentation, and moved import to top of file

Fixed error detaching policy from users

Updates to pass 2.4 CI

Updating iam_managed_policy supporting feedback
9 years ago
rip777 4e54df71a2 Further iam_group improvements
added `purge_users` and `purge_policy` option
added `convert_friendly_names_to_arns` function
flake8 fixes
9 years ago
Nick Aslanidis dc8a05dfe2 New AWS module for managing IAM groups 9 years ago
Toshio Kuratomi e27c2860e7 Move metadata extraction into a library function (#26198)
* Move metadata extraction into a library function
* fix the string cases to throw NotImplementedError
* Some python3 fixes
9 years ago
Toshio Kuratomi 6908038036 Fix synchronize setting user variable
The user variable stores whether we need to set user@ in our connection
string.  It's now being used at the toplevel of the run() method so the
default needs to be calculated further up the stack

Fixes #24910
9 years ago
Nathaniel Case ad6c4a544e nxos_pim updates (#26145)
* nxos_pim tests

* Cleanup nxos_pim
9 years ago
Nathaniel Case eea18e9875 nxos_vxlan_vtep_vni fixes (#25913)
* nxos_vxlan_vtep_vni first pass
* nxos_vxlan_vtep_vni tests
9 years ago
Matt Davis 69de9d86bd fix win_updates failure with dict-typed args (#26208)
Switch to dicts in common code caused silent failures during arg translation, so default values and non-check-mode were always used.
* fixes #23653
* fixes #24062
* fixes #22938
* fixes #25156
9 years ago
Phillip Thurston a2f38de173 Corrected the examples in find module to make sure the commands are accurate to what is being described. 9 years ago
James Cammarata 4c72e98262 Squashed commit of the following:
commit f79beaa3b3b642c370552d63b0848195358bccd0
Author: James Cammarata <jimi@sngx.net>
Date:   Wed Jun 28 17:00:57 2017 -0500

    Add example for iptables using the policy option

commit 1a0f9debdb526bef9d8d469a84a8cc55ef68da03
Author: James Cammarata <jimi@sngx.net>
Date:   Wed Jun 28 16:59:52 2017 -0500

    Fix missing re import for iptables after merging #19476

commit 084479d21d
Author: Alexey Solodkiy <work@x1.by>
Date:   Sun Dec 18 12:07:05 2016 +0300

    fix #19476
9 years ago
Jordan Borean 98fc54f02d win_find: fix for empty nested directories (#26164) 9 years ago
Dag Wieers 0a15ab7ce9 win_say: Fix issue, add integration tests (#26089)
* win_say: Fix issue, add integration test

This PR includes:
- Make speed_speech an integer parameter
- Test for empty parameters too
- Add integration tests

* Improve the $speech_speed parameter handling

As requested
9 years ago
Tomas Tomecek 2683c36a01 plugins,action: log stderr output if verbose (#25734)
otherwise ansible eats out important error messages

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
9 years ago
David Moreau-Simard 9fdd07fba8 Provide the list of files that were included by include_vars
include_vars will now also return a key 'ansible_included_var_files'
which contains the list of files that were successfully loaded.
This is useful information and, amongst other things, a way for users
to know exactly what files were included when debugging their
playbooks.
This also allows us to improve the integration tests around
include_vars.
9 years ago
Brian Coca 44bef1dc6b corrected supported_by key 9 years ago
Abhijeet Kasurde bb847e332d Check if SELinux is installed on system (#24437)
* Refactor code
* PEP8 fixes
* Check if /etc/selinux/config file exists before
  proceeding any other operations

Fixes #21622

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Dag Wieers 5be32aa5af Move ping and win_ping closer together (#26028)
So in an effort to verify if Windows modules are feature complete
compared to the python equivalent, I stumbled upon these differences.

This PR includes:
- Add missing 'data' option from documentation
- Simplify ping module
- Update integration tests to test exception
9 years ago
Tim Rupp e7402e3d5b Support full path templates (#26121)
This patch allows the iapp service module to support full path
templates instead of only relative templates
9 years ago
Tim Rupp 04ac15f241 Adds bigip_qkview module (#25980)
This module can be used to generate qkviews on a bigip and
save them to a location on the ansible controller.
This module is primarily used for diagnostics.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_qkview.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_qkview/tasks
9 years ago
Tim Rupp 16bd93a14e Refactors bigip ssl cert module (#25882)
Includes unit tests and a refactor of the module to make code
more easily supported. Also fixes an issue where the extension of
the cert name was not appended if not provided. This problem was
causing certs to not be editable in the UI. Also deprecates params.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_ssl_certificate.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_ssl_certificate/tasks
9 years ago
Brian Coca 7870000f71 updated docs to clarify default change 9 years ago
Pete Travis 147b342553 device path is optional for cbs
per
https://developer.rackspace.com/docs/cloud-servers/v2/api-reference/svr-basic-operations/#post-attach-volume-to-server-servers-server-id-os-volume-attachments
, device is "The name of the device, such as /dev/xvdb. Specify null for
auto- assignment."
9 years ago
Abdul Anshad A 61b18cc355 fixes issue #5633 (#19716) 9 years ago
Abdul-Anshad-A 36975c50ef test fix for thin disk type issue 9 years ago
ppanczyk 6d0f61b656 Fixed expiredate parameter in user module
Changed "--expiredate" to "-e", as on older systems "--expiredate" is not present.
9 years ago
MaciejCetler 0d179c77a7 fix for iam (#23347)
* fix for iam

* Update iam.py

removed extra space
9 years ago
Brian Coca d5f4c2a54b auto tb on vvv+ or debug (#26106)
* auto tb on vvv+ or debug

* updated as per feedback
9 years ago
George Nikolopoulos 11836a0296 Add module netscaler_cs_action (#26147) 9 years ago
Trishna Guha a5b905c941 Workaround to deprecation warning when password is used as arg for *_user (#26169)
* Avoid deprecation warning for password for vyos_user argspec

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Avoid Password deprecation for ios_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Avoid Password deprecation for iosxr_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Trishna Guha 34eca3816d fix vyos_user configuration (#26166)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Virgil Dupras 9474f20f2d letsencrypt: FIX CN parsing to work with OpenSSL 1.1 (#25935)
As we can see in
9537453586
:

CN used to be without whitespaces around the `=` but OpenSSL 1.1 introduced
whitespaces:
1.0.1: subject=/CN=example.com
1.1.0: subject=CN = example.com

This commit makes them optional.

OpenSSL 1.1 is present on the newly-released Debian Stretch, so absence
of this fix makes us not being able to use this module on this distro.
9 years ago
Ganesh Nalawade 3bd8dbb53d Add support for netconf network discovery (#25435)
* Add support for netconf network discovery

* Fix unit test failure
9 years ago
Dag Wieers b1e608811b win_iis_webapplication: Parameter fixes and check-mode (#26082)
This PR includes:
- General cleanup of parameters
- Added check-mode support
- Cleanup of return values
9 years ago
Dag Wieers 58b348ddf5 win_msi: Add check_mode and removes options (#26086)
This PR includes:
- Add support for the removes option
- Add check_mode support (which does test MSI file, creates, removes)
- Simplify code
9 years ago
Dag Wieers bb7ebc6a55 win_msg: Added integration tests, parameter fixes (#26126) 9 years ago
Sloane Hertel 3ba4fc2d54 boto only returns tags in the described security group if they exist (#26053) 9 years ago
Will Thames 0e0b91534a [cloud] Return target_group_names where sensible in ec2_asg_facts module (#26078)
If target_group_arns is an empty list, then return
an empty target_group_names list.

If a connection to elbv2 is not obtainable, then it is
not possible to return target_group_names
9 years ago
Josh Souza e49f15d6e4 [cloud] Fix logical flaw in route53_health_check, use string ports everywhere (#25706)
* Fix logical flaw (update when diff), use string ports everywhere

* Change port comparison to integer vs. string

The comparison works either way as long as it's consistent. Boto docs
state that it takes in an integer, but if given a string apparently
keeps it as such. This change just ensures that when we compare, we
specifically deal with integers.
9 years ago
Dag Wieers fceb71128e Return code is not very useful to assume a task failed
So I thought I fixed it before, but there's still one location where
the `rc` value is influential to decide whether a task failed or not.

We already established in #24867 that it is up to the module to decide
what the return code actually means, not the task executor. We modified
the existing modules to move that logic into the module (eg. for
command, shell, etc.)

This relates to the integration tests of win_robocopy, where different
return codes have different meanings:

  - 0  --  No files copied.
  - 1  --  Files copied successfully! (changed)
  - 2  --  Some Extra files or directories were detected. No files were copied. (warning)
  - 3  --  (2+1) Some files were copied. Additional files were present. (changed)
  - 4  --  Some mismatched files or directories were detected. Housekeeping might be required!  (changed + warning)
  - 5  --  (4+1) Some files were copied. Some files were mismatched.  (changed + warning)
  - 6  --  (4+2) Additional files and mismatched files exist.  No files were copied. (warning)
  - 7  --  (4+1+2) Files were copied, a file mismatch was present, and additional files were present. (changed + warning)
  - 8  --  Some files or directories could not be copied! (changed + failed)
  - 9 - 15  --  Fatal error. Check log message! (failed)
  - 16  --  Serious Error! No files were copied! Do you have permissions to access $src and $dest? (failed)

This also fixes #24652
9 years ago
George Nikolopoulos 6bed831f8c Add netscaler_server module (#25537) 9 years ago
Abhijeet Kasurde 79b2897462 Update vmware_guest_find module (#26066)
Fix updated following:
* Update Documentation
* Update Examples
* Find VM's folder using VM's UUID
* Make name as optional parameter

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi e238ae999b Cyptography pr 20566 rebase (#25560)
Make pyca/cryptography the preferred backend for cryptographic needs (mainly vault) falling back to pycrypto

pyca/cryptography is already implicitly a dependency in many cases
through paramiko (2.0+) as well as the new openssl_publickey module,
which requires pyOpenSSL 16.0+. Additionally, pyca/cryptography is
an optional dep for better performance with vault already.

This commit leverages cryptography's padding, constant time comparisons,
and CBC/CTR modes to reduce the amount of code ansible needs to
maintain.

* Handle wrong password given for VaultAES format

* Do not display deprecation warning for cryptography on python-2.6

* Namespace all of the pycrypto imports and always import them

  Makes unittests better and the code less likely to get stupid mistakes
  (like using HMAC from cryptogrpahy when the one from pycrypto is needed)

* Add back in atfork since we need pycrypto to reinitialize its RNG just in case we're being used with old paramiko

* contrib/inventory/gce: Remove spurious require on pycrypto

(cherry picked from commit 9e16b9db275263b3ea8d1b124966fdebfc9ab271)

* Add cryptography to ec2_win_password module requirements
  * Fix python3 bug which would pass text strings to a function which
    requires byte strings.

* Attempt to add pycrypto version to setup deps

* Change hacking README for dual pycrypto/cryptography

* update dependencies for various CI scripts

* additional CI dockerfile/script updates

* add paramiko to the windows and sanity requirement set

  This is needed because ansible lists it as a requirement. Previously
  the missing dep wasn't enforced, but cryptography imports pkg_resources
  so you can't ignore a requirement any more

* Add integration test cases for old vault and for wrong passwords

* helper script for manual testing of pycrypto/cryptography

* Skip the pycrypto tests so that users without it installed can still run the unittests

* Run unittests for vault with both cryptography and pycrypto backend
9 years ago
Matt Davis 36ad934156 re-enable non-pipelined mode for Powershell (#25012)
* fixes #23986
* fixes 3rd-party Windows connection plugins that don't support pipelining (eg awsrun)
9 years ago
Jordan Borean b41c42cf0d win_share: Add integration tests and various fixes (#25691)
* win_share: Add integration tests and various fixes

* docs and comments updates based on PR review

* fixed up documentation issue with URL
9 years ago
Jordan Borean 2f3a1c7a28 win_service: Updated return values and use the list parameter type (#25385)
* win_service: Updated return values and use the list parameter type

* minor fix to handle the list parameter return value
9 years ago
jhawkesworth 1ec115d830 win_regedit: Make the string comparison case sensitive when comparing string values (#25536)
* Make the string comparison case sensitive when comparing string values

* Added documentation note about change detection now being case-sensitive
9 years ago
Dag Wieers 74efda65cd windows: Two simple errors using Add-Warning (#25955) 9 years ago
Dag Wieers 0dddae7ffa Add warning message when Chocolatey was installed (#25918) 9 years ago
Trond Hindenes 7cc38e1b32 Fixes win_dsc docs (#26122)
* hacking dsc docs

* remove code snippet

* again...

* more testing

* trying a short version

* moar text
9 years ago
Daniele Lazzari 9d932b64f0 New module: Add module to install/remove/register/unregiser windows powershell modules (windows/win_psmodule) (#23604)
* Add new windows module win_psmodule

* Add checkmode, allow_clobber parameter, integration tests

* Add aliases, replace win_raw with win_shell

* restore original test_win_group1.yml, add powershel version test

* fix var type

* add conditional on assert

* integration tests conditional tasks review

* documentation fix, test fix, adds result.change

* fix yml

* fix railing whitespace

* add nuget_changed and repository_changed in result
9 years ago
Tim Rupp 1e8c58519e Removes unused f5 module utils
The CLI utils are no longer used by any F5 modules and may therefore
be removed.
9 years ago
Eugen C 6d59160744 Fix ansible ad-hoc to respect ANSIBLE_STDOUT_CALLBACK (#26098)
* Fix ansible ad-hoc to respect ANSIBLE_STDOUT_CALLBACK

* Ansible ad-hoc 'stdout_callback' should work only with 'bin_ansible_callbacks'
9 years ago
Sloane Hertel dc2d9a2134 [cloud] Python3 fixes: use string_types instead of basestring (#26102)
Don't modify a dict while iterating over it
9 years ago
Andreas Olsson 05dc76f3b2 In the git module let ssh do its own host checking
There are too many possible special cases for Ansible to be able to
precheck known_hosts files without introducing all kinds of false
failures.

* Alternative known_hosts paths
* Alternative host name aliases
* ssh host certificates
* SSHFP + DNSSEC

Fixes #24860
9 years ago
Abhijeet Kasurde d63cdcacc3 Make nic_name as optional parameter (#25990)
Fix adds support for adding VMWare vSwitch without
any physical NICs (uplinks). This makes nic_name as
an optional parameter. Also, updated documentation and
examples to reflect these changes.

Fixes #25632

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Mark Szymanski 91c1d8d8e2 Fixing bug introduced in 20622 9 years ago
Dag Wieers 7d7051fc54 Mutually reference Windows and non-Windows modules (#25482)
* Mutually reference Windows and non-Windows modules

To make it easier for Windows or non-Windows users to find the relevant
module information, we are mutually referencing both variants in their
documentation.

We are also adding a special note if a module works on both Windows and
non-Windows targets.

* Mutually reference Windows and non-Windows modules

To make it easier for Windows or non-Windows users to find the relevant
module information, we are mutually referencing both variants in their
documentation.

We are also adding a special note if a module works on both Windows and
non-Windows targets.

* Replace 'look at' with 'use', as requested

ci_complete
9 years ago
Chris Houseknecht 8765eadb30 Fixes list comparison (#26042) 9 years ago
Abhijeet Kasurde 1f8575ec97 Remove get_exception from zypper (#25890)
Fix removes get_exception in favor of native Python exception
handling. Also, added to_native to manage exception message.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
George Nikolopoulos 0bf64aa241 Add netscaler_save_config module (#25614) 9 years ago
mihu 6b76bc924f [cloud] New feature for ec2_group: allow deleting groups by id (#26022) 9 years ago
Rene Moser 1f5839777b cloudstack: cs_host: revamp fixes several issues 9 years ago
Ricardo Carrillo Cruz ffaf6c4a86 Add new net_static_route platform agnostic module (#25455)
* Add new net_static_route platform agnostic module

* Add mask parameter and according examples

* Add required true to required params

* Add static routes collections example
9 years ago
Peter Sprygada b12ca95824 renames dict_combine to dict_merge in network_common (#26073) 9 years ago
Dag Wieers 014bcad35b Small fix in the error output (#26004)
So I noticed this when doing integration tests:

    Failed to copy file Could not find a part of the path

and this change turns it into:

    Failed to copy file: Could not find a part of the path

I also moved something out of the exception handling.
9 years ago
Nathaniel Case 21c7fcf9c0 nxos_vxlan_vtep (#25971)
* nxos_vxlan_vtep tests

* Fix issues with nxos_vxlan_vtep
9 years ago
Trishna Guha 3482a6326b Fixes nxos_vpc_interface (#25907)
* nxos_vpc_interface fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_vpc_interface unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix state_present

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* add state_present unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* make ansibot happy

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* teardown get_config

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Brian Coca 0209685f8d check options exist before forcing assignment 9 years ago
Ryan Fitzpatrick 3e52f47b51 [cloud] Fixes #26045 Ensure instance.instance_profile is not None before casting to dict (#26047) 9 years ago
Patrik Lundin a439f45a18 openbsd_pkg: Handle versionless names with branch. (#26016)
* openbsd_pkg: Handle versionless names with branch.

This makes package names such as "openldap-server--%openldap" work.
Problem reported by Landry Breuil.

While here fix cornercase check for versionless packages and add some
more debug output to packet parsing.

Fixes #25910.

* openbsd_pkg: Split up lines to pass build checks.

===
The test ansible-test sanity --test pep8 failed with the following errors:
lib/ansible/modules/packaging/os/openbsd_pkg.py:383:161: E501 line too long (292 > 160 characters)
lib/ansible/modules/packaging/os/openbsd_pkg.py:398:161: E501 line too long (198 > 160 characters)
===
9 years ago
Will Rouesnel 42b608db0c Add support for tmpfs to docker_container. (#25747) 9 years ago
loqutus f6e4019804 fix networkdid->networkid in cs_nic.py (#25914) 9 years ago
Mark Szymanski 1703db4211 Allow iam_cert to be renamed or moved without needing to specify cert or key data (#20622)
Generally Pep8 and flake8 compliant so removing from legacy-files.txt
9 years ago
GennadySpb 26fec4f107 Fix type for 'attributes' field 9 years ago
Matt Clay e747650543 Add missing __init__.py for modules. 9 years ago
Troy Sampson e391206acc Missing Else statement (#25457)
Missing the final Else statement in the conditional statement
9 years ago
Dag Wieers 33a6150393 imc_xml: New module to manage Cisco IMC hardware (#25529)
* cisco_imc_xml: New module to manage Cisco IMC hardware

This module provides direct access to the Cisco IMC API.
See the included examples for a glimpse of what it can do.

* Rename cisco_imc_xml to imc_xml

After discussion with Peter Sprygada renamed from cisco_imc to imc.
As Cisco ACI is named aci as well.
9 years ago
Kassian Sun de4a8b83df Fix up integer type detection on python3 (#25985) 9 years ago
Andrea Tartaglia 921bc0599b Fixed modules using Popen (#24558)
* Fixed modules using Popen

* Reverted change in mysql_db, Popen is required to pipe compressed archives to mysql
9 years ago
James Cammarata 495a809f46 Don't include dependent roles in the dep chain for include_role
The dependency chain should not include roles below the parent, as it
can introduce very weird things like conditionals from child deps impacting
non-related roles.

Fixes #25136
9 years ago
Constantin 9cc35b094f Fix of argument error in #25940 (#25979) 9 years ago
mihu 60afe93521 amazon: allow NACL to be removed by its id (#25925) 9 years ago
Ganesh Nalawade b2f46753ec Add junos_system declartive module and other related change (#25859)
* Add junos_system declartive module and other related change

*  junos_system declartive module
*  integration test for junos_system
*  integration test for net_system (junos platform)
*  pep8 fixes for junos modules
*  move to lxml from elementree for xml parsing as it support
   complete set of xpath api's
*  other minor changes

* Fix CI and doc changes

* Fix unit test failures

* Fix typo in import

* Fix import issue for py2.6

* Add missed Element in import
9 years ago
Wouter de Geus dd07d11ae5 [cloud] Add ChangeSet support to cloudformation module (#23490) (#24497)
*  * Implements Change Sets on updating a cloudformation stack when create_changeset=true (#23490)

*  * Silence test complaints ;)

*  * Added optional changeset_name parameter.
 * Check if changeset with the requested name already exist.
 * Documentation fix

*  * Added warning when cloudformation stack has pending changesets.
 * Fix documentation
9 years ago
Andrade 7bed60ba5f Fix docs typo in java_cert function docstring (#25942) 9 years ago
Tom Paine f831be680e [cloud] Update ec2.py default for public IP assignment (#25896)
* Update ec2.py

Update docs to reflect default.

* Update ec2.py

Further default update.
9 years ago
Abhijeet Kasurde e8072ee616 Misc typo for Ansible
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ryan S. Brown 2a7e586801 Move helm module to subdirectory 9 years ago
Flavio Percoco Premoli 02cd72857e New module: helm (#24883)
This PR adds a new module, helm, which can be used to manage Kubernetes Helm, the package manager for k8s.
9 years ago
Ondra Machacek 5f1da6809a cloud: ovirt: support add/remove tag from vms/hosts (#25900) 9 years ago
Christopher Galtenberg 170fc42e80 Improve help text for extra-vars requiring @ for filename
(cherry picked from commit 1b34de89ee)
9 years ago
Brian Coca d79315e19e avoid winrm errors when not connecting to winrm (#25921) 9 years ago
Sloane Hertel 04e93e22cb add traceback and more helpful errors for ec2_vpc_route_table (#25704) 9 years ago
Yang Liu b41b4fe2fd use proper pagination variable (#25838) 9 years ago
Trond Hindenes 911f4d3eb1 A few win_dsc bugfixes (#25852) 9 years ago
Damir Suleymanov 74f6b64fb0 Handle rate limits on every iteration (#23726) 9 years ago
Brian Coca a457c2af59 correctly set delegated host name in results 9 years ago
Brian Coca 0bbf0e8d19 adjust script caching to processed data
also added filename to loading for better errors
9 years ago
Nathaniel Case 0296c2285b nxos_vrf fix (#25812)
* Fixes #25031

* Slight cleanup and add tests
9 years ago
Abhijeet Kasurde aa32f4e80c Add support for Red Hat Atomic Host (#25906)
Fix adds support for Red Hat Enterprise Linux Atomic Host.
RHEL Atomic host uses same RHEL Server strategy for
modifying hostname.

Fixes #25903

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Will Thames f3c98f482a [cloud] New module ec2_vpc_endpoint_facts for AWS EC2 VPC Endpoints (#20211)
* New facts module for AWS EC2 VPC Endpoints

* ec2_vpc_endpoint_facts - meet latest Ansible standards

Fix exception syntax and use of `iteritems` for python3

Fix undefined `ec2` variable (should have been `connection`
Address various flake8 issues

Use `ansible_dict_to_boto3_filter_list` rather than
duplicating its implementation

* Remove max_items and next_token from vpc_endpoint_facts

max_items and next_token should be a module concern, not
a caller concern. It would be very difficult for a module
consumer to use next_token properly, whereas it's easy for
the module to handle it.

* ec2_vpc_endpoint_facts trivially supports check mode

Add supports_check_mode=True to the argument spec.

* Improve RETURN documentation for ec2_vpc_endpoint_facts

Fix bug in EXAMPLE documentation too

* fix return type for validate-modules
9 years ago
Will Rouesnel 3adf08e10f [cloud] iam_cert return arn and allow use with ansible vault (#20787)
* iam_cert.py Fix duplicate certificate detection with included chains.

The iam_cert module would fail to detect certificates as duplicates
if the certificate body included the authority chain directly.

This commit fixes the problem by checking if a given certificate
matches the start of the data returned by AWS, since in all cases
where they would match the certificate will come first.

* iam_cert.py Return certificate ARN in all success cases.

When uploading certificates or interacting with IAM, the certificate ARN
is needed for other operations with AWS such as provisioning elastic load
balancers.

This commit returns the certificate ARN in all success cases, which allows
it to be used to idempotently provision other Amazon services depending on
it (ELBs being an immediate example).
9 years ago
Trishna Guha 947e9aba45 Add vyos_banner implementation module (#25862)
* Add vyos_banner implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* vyos_banne integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* vyos_banner unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* minor fix on banner text

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Brian Coca e2cf3b6e7a fixed cg signature 9 years ago
Brian Coca 9d37b0c8aa 01110000 01100101 01110000 00111000 00100000
01101100 01101001 01101110 01110100 01101001 01101110 01100111 00100000 01110011 01110101 01100011 01101011 01110011
9 years ago
Brian Coca 9d8721dbde properly track delegated host in loops
ansible_host can be pulled from inventory and not match inventory_hostname,
this can "loose" vars to a new host named by ansible_host vs the delegated host
fixes #25770
9 years ago
Matt Martz b6ee9163e3 Ensure hosts aren't duplicated in groups 9 years ago
Brian Coca e08f068dca ensure proper typing of path, cause py3 listdir
since now output is based on input, we need to make sure its always same
fixes #25856
9 years ago
Sloane Hertel 06c21b4bec [cloud] fix dynamodb_ttl exception handling for ParamValidationError (#25870)
Also adds tracebacks to exceptions and imports `HAS_BOTO3` instead of checking directly.
9 years ago
Sloane Hertel e079498485 [cloud] document route53 state choices added in 2.4 (#25866) 9 years ago
Steffen Neubauer 759750e661 Consul: make service_port optional in service definition, like specified in Consul docs (#21737)
* Consul: make service_port optional in service definition, Fixes #21727

* Remove consul module from legacy-files.txt

* consul: Pep8 fixes
9 years ago
Jordan Borean 6d01168238 win_acl_inheritance: Added tests and formatting improvements (#25382) 9 years ago
Jordan Borean c05d3c3821 win_owner: added tests and fixed up bool handling (#25088)
* win_owner: added tests and fixed up bool handling

* explicitly gathering facts in test

* Removed manualy entry in test group
9 years ago
Dag Wieers 0aba04fdad win_uri: Add integration tests, new functionality... (#25373)
This is a cleanup of the win_uri module to make it feature-complete.

This PR includes:
- Added check-mode support
- Add as many options from the uri module as possible
  - Added creates
  - Added follow_redirects
  - Added maximum_redirection
  - Added password
  - Added removes
  - Added return_content
  - Added status_code
  - Added timeout
  - Added user
  - Added validate_certs
- Fixed list-handling for comma-separated strings
- Added basic integration tests (should come from uri module)
9 years ago
Abhijeet Kasurde a4ebde1516 Correct failure message in flowdock (#25844)
As per documentation and code, external_user_name is
required parameter is case of type 'chat'.
Fix corrects error message displayed to user.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ted Timmons 346cbf7d7a [cloud] New module: Add module to set Amazon AWS DynamoDB TTL (cloud/amazon/dynamodb_ttl) (#22588)
* add aws dynamo_ttl module, small parameter setter

 - New Module Pull Request

`dynamodb_ttl`

2.3.0/devel

Very self-contained TTL setter. This is independent of the dynamodb_table module
as it's really designed to be a helper for tables that may be created in other
ways (say, CloudFormation, which doesn't support setting TTL).

* committer is no longer a valid value

* bump version_added, catch common exceptions

* pep8 fixes

* one more pep8
9 years ago
James Braid 0be0aa5f10 htpasswd: fix passlib module version comparison (#20202)
Previously, we used StrictVersion which failed to parse some passlib
version strings. For example, Debian currently ship passlib with a
__version__ of '1.7.0.post20161128115349'

StrictVersion throws an exception when parsing this version string.

Change to using LooseVersion which successfully parses version strings
such as this.

Fixes #20199
9 years ago
Matthew Schick 846174b4ba Update nocache to be the proper bool type instead of string (#24358)
* Update nocache to be the proper bool type instead of string

* Add proper bool type for params
9 years ago
Ali 484252b90f New Module: Add github_deploy_key module (source_control/github_deploy_key) (#24364)
* Added new module: github_deploy_key

added a new module for managing deploy keys for GitHub repositories

* Updated github_deploy_key module based on feedback

- added GPL header
- switched to using fetch_url instead of requests
- changed version to 2.4
- set no_log for otp and token arguments
- implemented check mode

* made github_deploy_key module PEP8 compliant
9 years ago
Krzysztof Magosa 4522a53acf fix false positive changed flag in rabbitmq_user module (#22507) 9 years ago
Abhijeet Kasurde 7348a613bb Correct usage of fail_json in hg module (#25847)
Fix adds correct usage for fail_json and also adds
testcases to verify this.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 561d678f52 Fix module params assignment in jabber module (#25850)
Fix corrects variable assignment from module params

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Andrew Makousky f2abc4cf43 Improve documentation of 'remote_src' in the file copy module. (#23946)
Now that remote-to-remote copies are supported in the copy module,
the module documentation has been updated to indicate this in the
synopsis and examples to make the capability obvious for someone
skimming the documentation.
9 years ago
Tim Rupp 0854c0ed88 Adds refactored bigip_hostname (#25841)
This adds a refactored bigip_hostname with unit tests and code
conventions that are common across other modules.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_hostname.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_hostname/tasks
9 years ago
Peter Sprygada 3f17e87c5a pulls the jsonrpc request builder code into top level function (#25833)
refactors the Connection class to use the top level function.  This will
make the request_builder() function useful for other components such as
action handlers.
9 years ago
Ganesh Nalawade 450263e934 Add junos_banner declartive module (#25826)
* Add junos_banner declartive module

*  junos_banner implementation
*  Integration test for junos_banner
*  Integration test for net_banner (junos)
*  Minor fixes

* Minor doc change
9 years ago
Peter Sprygada 97e24dc317 fixes issue with SIGALARM call in network_cli (#25832)
The alarm_handler method was calling a method close_shell() that doesn't
exist.  This updates the alarm handler to call the current method
close()
9 years ago
Tim Rupp 59d470ae84 Adds bigip_iapp_service module (#25808)
This module allows a user to manage the iApp services on a bigip
that they created using the bigip_iapp_template module.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_iapp_service.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_iapp_service/tasks
9 years ago
Jim Rubenstein 26b8f90c9a Adds ANAME support for DNSMadeEasy module (#21030) 9 years ago
Gaurav Rastogi 5f23aa69c6 New Avi Module for Auth Profile objects (#24842) 9 years ago
Tim Rupp 9c849d5c94 Corrects method name (#25568)
The method name was missing a 'd'. The method was not used anywhere
however, so no other code needs to be changed. Neither 'has_chilren'
nor 'has_children' are used in the codebase.
9 years ago
René Moser 4ffc4b6748 cloudstack: add missing zone name to result (#25806) 9 years ago
René Moser 6feee18292 host_group_vars: skip files having blacklisted ending (#25730)
* vars: skip backup files

* vars: extend doc for ignored files
9 years ago
Ganesh Nalawade 2ff464c949 Add net_interface declarative module (#25766)
* Add net_interface declartive module

*  Add net_interface module
*  Add junos_interface implementation module
*  Other minor changes

* Add integration test

*  Integration test for net_interface
*  Integration test for junos_interface

* Fix CI failures

* Documentation changes
9 years ago
Tomas Dobrovolny e7deb07a87 facts: Add linux virtio module detection (#25578)
Detect as kvm guest if virtio linux kernel module is loaded
9 years ago
Abhijeet Kasurde 6bc1e802e3 Rectify traceback.format_exc() call (#25773)
Fix adds correct call to traceback.format_exc method

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Rene Moser 46c6eb37d0 vars: fix typo s/path/spath 9 years ago
Peter Sprygada 3aa41eda0b adds new common functions for declarative intent modules (#25210)
* adds new common functions for declarative intent modules

* adds Entity and EntityCollection
* adds dict_diff and dict_combine

* update for CI  PEP8 compliance

* more CI PEP8 fixes

* more PEP8 CI clean up

* refactors the lambda assignments into top level classes

this is to be in compliant the PEP8 CI sanity checks

* one last pep8 ci fix
9 years ago
Rene Moser 43468b825d vars: fixed missing path in splitext() 9 years ago
Nathaniel Case a38e727380 nxos_nxapi fix (#25306)
* Add nxos_nxapi tests

* Simple changes to nxos_nxapi

* Move validation to check_args

* Don't mark protocol change unless change is requested

* Add different regex to handle HTTP{,S} ports on a different version of nxos
9 years ago
Christopher Gadd 2edd5da2c5 Update system/ufw.py for ufw v0.35 (#21604)
* Updating ufw.py to support comments

* Revert "Updating ufw.py to support comments"

This reverts commit 54a42de97c77004d4755543bf310f0ec6e1b4d14.

* Support ufw v0.35 in ufw.py

* Add ufw version check to ufw module
9 years ago
Simon Dodsley 937d7993cc Initial commit for Pure Storage Ansible module (#25386)
* Initial commit for Pure Storage Ansible module

* Initial commit for Pure Storage Ansible module

* Initial commit for Pure Storage Ansible module

* Fix import issues as required by post-2.2

* Move last import to top

* Follow suggestions and only implement one module per PR
Fix documentation changes requested

* Documentation and formatting changes
9 years ago
Trishna Guha 98269888a9 iosxr_banner Implementation module (#25744)
* Add iosxr_banner implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for iosxr_banner

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Unit test for iosxr_banner

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* remove blank line pep8

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
James Cammarata c5b8196ff1 Do not set default value for any_errors_fatal in Base
Setting default values for FieldAttribute values created in the Base class
prevents the _get_parent_attribute() code from working correctly, as the value
is always non-None.

Related to #22924
9 years ago
Matt Clay 3eea649cbb PEP 8 fixes. 9 years ago
Sloane Hertel 938d60472a [cloud] ec2.py: add region to the aws_connect_kwargs before creating vpc connection Fixes #25673 (#25749)
* add region to the aws_connect_kwargs before creating vpc connection

* remove unused import
9 years ago
Robin Miller 540e1bbd69 [cloud] Route53 Avoid throttling errors and unnecessary processing when checking rrsets. (#22104)
The boto Route53 get_all_rrsets method will return the record set
matching the name, type, and identifier specified, followed by ALL
subsequent sets in alphabetical order based on name. If the specified
set does not exist, the method will still return all the sets that
_would_ have come after it. Searching through sets we know will not
match is not just a waste of resources but, more importantly, often
triggers AWS API throttling when used on zones with large numbers of
records.
9 years ago
Brian Coca fedbf3666b fixed issue with paths separator and others
finished  normalizing of path handling
removed overloaded '-p' from init_paths option, it is for role_paths
removed expand_tilde and get_opt methods as both were redundant, adjusted rest of code
updated tests to match
9 years ago
Abhijeet Kasurde c426481b33 Add command variable in failure message (#25674)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Rob 6d34ce3f2a [cloud] elb_target_group_facts.pyFix tags being snaked (#25742) 9 years ago
Trishna Guha 44687bb917 Add iosxr_user implementation module (#25615)
* Add iosxr_user implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* iosxr_user Integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* iosxr_user Unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Modify integration test with idempotent case

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Trishna Guha b3c22a96bd Add vyos_user implementation module (#25677)
* Add vyos_user implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for vyos_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Make state absent work

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Unit test for vyos_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Standardize user names

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Modify integration test with idempotent case

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add role as alias to level

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Brian Coca 13a1111dde tighter host/group_var discovery
now only loads nonext or valid yaml extensions
only first file gets loaded
directories must match name (initially) so no name.yml is loaded anymore
9 years ago
Trishna Guha 9c6ee8d0bb Add nxos_banner implementation module (#25695)
* Add nxos_banner implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_banner integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_banner unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* doc update

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Pierre-Louis Bonicoli 571e93f882 Fix a typo in assert message 9 years ago
Brian Coca df2fcecd62 pager should not log
fixes #25719
9 years ago
Abhijeet Kasurde 8ad04d6348 Move redudant check_ip_addr method to common ce (#25575)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
René Moser a51d64dfe3 constants: pep8 fix (#25735) 9 years ago
Gaurav Rastogi 8ad464c4f5 New Avi Module for Backup objects (#24843) 9 years ago
Gaurav Rastogi 6c3eace794 Minor Updates to the module descriptions and field options (#25430) 9 years ago
Tim Rupp 8e3ef4b052 Adds virtual_address module (#25728)
This module lets users manage a number of different config options
for Virtual Addresses on a BIG-IP.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_virtual_address.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_virtual_address/tasks
9 years ago
Ganesh Nalawade 12493707a7 Add persistent connection control path dir constant (#25736) 9 years ago
Brian Coca 5e4b8d04d7 readded missing become configs 9 years ago
Brian Coca a54666d31e now host list removes trailing/leading spaces
othewise hostnames were just 'fun'
9 years ago
Brian Coca 077ca3e07d skip hidden files for {host,group}_vars
fixes #25712
9 years ago
Tim Rupp b85785bf07 Refactors irule module to conform to recent standards (#25709)
Also includes unit tests for the code
9 years ago
Tim Rupp ba12ce64b0 Adds the bigip_snmp module (#25668)
This patch adds a module for managing several snmp related settings
on a BIG-IP that are required when configuring the range of SNMP
settings on a device.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_snmp.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_snmp/tasks
9 years ago
Tim Rupp 478d364f4d Adds bigip_iapp_template module (#25630)
This module can be used to upload and manage TCL iApps on a BIG-IP.
iApps can be added, removed and updated in place as needed. iApp
files should be provided to the module via Ansible lookups.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_iapp_template.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_iapp_template/tasks
9 years ago
Tim Rupp 0c68e200d5 Adds the bigip_provision module to Ansible (#25558)
This module allows an administrator to provision new module functionality
on a BIG-IP. BIG-IP modules provide enhanced ADC and security features that
are commonly used by customers such as GTM, ASM, and AFM.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_provision.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_provision/tasks
9 years ago
Dag Wieers 1c9a570ffe win_timezone: Add diff support, integration tests (#25284)
* win_timezone: Add diff support, integration tests

This PR includes:

- Diff support
- Returns both previous_timezone and timezone
- Adds integration tests
- More examples
- Improved documentation

* Merged the changes from jborean93's PR
9 years ago
Rob f8d027b1ba [cloud] New module elb_target_group_facts (#24583) 9 years ago
Tim Rupp db834cafaa Adds a reconnect method (#25625)
This is being made available so that module developers do not
need to use the gnarly long-form version to get a similar
result
9 years ago
Brian Coca 6b99f0d65c account for absense of config file 9 years ago
Sloane Hertel dfcf43efa9 ec2: Allow EC2-VPC instances to modify security groups - fixes #18928 (#23831)
* Allow EC2-VPC instances to update SG

make ec2 pep8

* use sets instead of loop and a break

* bring things in an indentation level

* Use to_text instead of str, text_type instead of basestring, - instead of difference

* basestrings not unicode

* simplifying syntax
9 years ago
Brian Coca 74842adc07 1st part of ansible config, adds ansible-config to view/manage configs (#12797)
* Start of ansible config project

moved configuration definitions to external yaml file vs hardcoded
 * updated constants to be a data strcutures that are looped over and also return origin of setting
changed to manager/data scheme for base classes
new cli ansible-config to view/manage ansible configuration settings
 * prints green for default/unchanged and yellow for those that have been overriden
 * added list action to show all configurable settings and their associated ini and env var names
 * allows specifying config file to see what result would look like
 * TBD update, edit and view options

removed test for functions that have been removed

env_Vars are now list of dicts
allows for version_added and deprecation in future
added a couple of descriptions for future doc autogeneration
ensure test does not fail if delete_me exists
normalized 'path expansion'
added yaml config to setup packaging
removed unused imports
better encoding handling

updated as per feedback

* pep8
9 years ago
Nathaniel Case 4344132a7d nxos_vpc updates (#25452)
* Add nxos_vpc tests

* Split execute-show between get_config and run_commands
9 years ago
jhawkesworth ccb5756d1f Added requires WMF5 note to win_firewall module documentations (#25676) 9 years ago
Ganesh Nalawade b69c7f50d0 Add junos_vlan platform agnostic module (#25652)
* Add junos_vlan platform agnostic module

*  junos_vlan implementation

*  integration test for junos_vlan

* Minor fixes

* Fix Integration test failure
9 years ago
Andrew Saraceni 91e995d691 Allow win_scheduled_task to support adding and removing task paths (#24025)
* allows win_scheduled_task to support adding and removing task paths

* fix line length for documentation

* added integration tests for path creation and removal

* removing ability to remove TaskPath if a task isn't removed.  also removed superfluous line of code in Invoke-TaskPathCheck function
9 years ago
Dag Wieers cf30b162a9 vmware_guest: Various fixes to VM customizations (from template) (#24768)
* Various fixes to VM customizations (from template)

This patch implements:
- New find_obj() function from vmware.py replacing get_obj()
- Implement proper resource_pool selection
- Fix productId implementation (was not working)
- Ensure that we are not changing anything that is not mandatory (hostName, orgName, fullName)


This is an alternative proposal to #24283
This does not fix #19860 yet though.

For our use-case, we do not want to customize the network information (or any information in fact).
What is used in the template should remain intact.

* Added find_obj() function

* Fix the returned object-list (unused yet)

* Small improvement

* Support DHCP type and fix customizations

* Small fix

* Support resource_pool also for reconfiguring VM

* Remove redundant

* Fix short hostname, specific resource_pool, PEP8

* Improve docs and examples

* Fix missing hostsystem

* Make folder absolute path

* Improve docs, add missing 'mac'
9 years ago
Sloane Hertel bd4f08d434 [cloud] Fix Route53 module value option, defaulting to empty list (#24555) 9 years ago
Adrian Likins d46dd99f47 Add UUID, label and id links to devices when building facts (#25448)
At present, the available facts around block devices are not sufficient to be able to find stable names guaranteed to work across reboots, or to identify block devices by label (UUID, etc).

This patch provides a list of observed links for each device. It relies on functionality specific to Linux (as does the existing sysfs-based code which it extends), but should not cause issues on other platforms.

Moreover, it prevents virtual devices from being excluded, and links such devices to the physical devices to which they are attached.
9 years ago
Adrian Likins 56b7483b85 More statvfs info for mount facts rebase 12073 (#25454)
* Add more mount point statvfs info including sizes

Based on https://github.com/ansible/ansible/pull/12073

facts.utils.get_mount_size() now returns a dict of most
of the posix statvfs data, including block_size and inode
counts.

Update the facts.hardware classes that use get_mount_size() to
use the new info by mount_info.update(mount_statvfs_inof) to merge.

* add back unit tests for LinuxHardware mount/fs facts

* add test cases for facts.utils.get_mount_size
9 years ago
Sloane Hertel 3bba43a487 [cloud] ec2.py: region is documented as optional; allow endpoints to be used - fixes #24382 (#24470)
* region isn't required for ec2.py; allow endpoints to be used

* move where aws_connect_kwargs is set

* remove camel_dict_to_snake_dict and display error message
9 years ago
jctanner 58db0da5a5 Fix pep8 extra lines error (#25666) 9 years ago
Dag Wieers bf43eb92f5 win_firewall: check-mode support, integration tests (#25127)
* win_firewall: check-mode support, integration tests

This PR includes:
- Check-mode implementation
- Documentation improvements
- Ensure module output is consistent (no matter what profiles are provided)
- Fixed indentation
- Cosmetic changes
- Integration tests

* win_firewall: check-mode support, integration tests

This PR includes:
- Check-mode implementation
- Documentation improvements
- Ensure module output is consistent (no matter what profiles are provided)
- Fixed indentation
- Cosmetic changes
- Integration tests
9 years ago
Brian Coca 4ee348e564 draft constructed groups plugin (#23374)
* draft constructed groups plugin

can use fact cache as vars source

* pw4er5e
9 years ago
Brian Coca 37acb7423b add deprecation notice for sudo/su cli options (#23983)
* add deprecation notice for sudo/su cli options

* updated as per feedback
9 years ago
Brian Coca c4169d93e8 add validation to fetch for source/dest
also added missing display
9 years ago
Brian Coca 13d3b27a0a Get warnings/deprecations per item in loop
warnings and deprecations were only returned for the top level of a task, this now deals with them in loop
deduplication still occurs so only unique ones will be shown to user.

fixes #25258
9 years ago
Toshio Kuratomi 90b1d780eb Fix redis cache for python3
According to the redis-py docs, zrank will return the 0 based index for
the value in the sorted set.  So the logic here wasn't right to begin
with (It just means that a value at the 0-th position would never show
up as cached).  Need to compare against None to know if the value
exists in the cache.

https://redis-py.readthedocs.io/en/latest/#redis.StrictRedis.zrank

Fixes #25590
9 years ago
Brian Coca 498aea8acc Revert "Add log_only to debug messages (#25545)"
This reverts commit 9e8cc26720.
9 years ago
Sloane Hertel 00d5de3dec fix return value (#25611)
document the returned
9 years ago
Ganesh Nalawade 9e8cc26720 Add log_only to debug messages (#25545)
Fixes #25544
When `debug` is enabled the debug messages triggered
from `bin/ansible-connection` should be logged only to file
and not on stdout.
9 years ago
Abhijeet Kasurde f65ced0438 cloudstack: Use errortext from router in cs_router (#25634)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde b7558f5018 Add missing msg keyword in fail_json (#25635)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
jhawkesworth e017bf964e Small improvement to the way the powershell code lines render in win_say module (html rendering only, still does not break lines properly in ansible-doc) (#25624) 9 years ago
netservers d5becd728e Have cs_host search both name and ipaddress fields when fetching the host from listHosts. (#25628)
Make ip_address an alias of name to allow playbooks to more clearly make
use of IP addreses.
9 years ago
Simon Staszkiewicz eb7530df95 Correct link to DescribeInternetGateway docs (#25622)
Old link pointed to DescribeRoutingTable documentation instead of DescribeInternetGateway documentation.
9 years ago
Abhijeet Kasurde 0770b1018c Correct variable name in vca_nat module
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde a4f1738082 Fail module instead of returning boolean value
Fix added to fail module instead of returning boolean value
which raises AttributeError.

Fixes #21770

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
ademmers 025b52938e system/service module initctl location usage (#19712)
* Call initctl version based on initctl's retrieved location

* Remove the use of start/stop/restart in favor of initctl

* Provide correct argument order for initctl usage
9 years ago
Sloane Hertel 3f0c47196e [cloud] s3: deleting a nonexistent bucket should not give a traceback Fixes #25445 (#25487)
* trying to delete a nonexistent bucket should not fail

* Improve error handling for deleting s3 bucket

* Allow successful deletion

* Add test for deleting a nonexistent bucket

rename integration test target from s3 to aws_s3
9 years ago
Abhijeet Kasurde 7521be73c1 Add missing import for get_exception
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Brian Coca ff4c308359 fixed issue with empty string 'packages'
also cleaned up unused imports/vars
fixes #25582
9 years ago
Abhijeet Kasurde 077a2df1d6 Return exception as string
Pyodbc returns exception as Python Exception class,
typecast as string for fail_json.

Partially fixes: #25010

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde da6f6d27e8 Add Description parameter in os_user
Fixes #18914

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Monty Taylor 45f07fdeae Make auto_ip in os_server not always return changed (#25540) 9 years ago
Alan Loi 3ac9273507 Fix hash_key_name to be optional for delete (#25009) 9 years ago
Alan Loi c23e3c1913 Fix version_added for tags and wait_for_active_timeout params (#24993) 9 years ago
Vinay Dandekar 45019e440f Add Linux Mint to Debian OS family in setup facts 9 years ago
Abhijeet Kasurde e160bcf237 Correct fail_json call in rpm_key
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
willricardo dd1f5d7acd ec2 module conver basestring to string_types (#25503) 9 years ago
Will Thames 16b877e2b3 ec2_asg and ec2_asg_facts module improvements (#25166)
* ec2_asg and ec2_asg_facts module improvements

Return target group information for both ec2_asg and ec2_asg_facts
modules

Provide RETURN documentation for ec2_asg module

PEP8 fixes for ec2_asg_facts

* ec2_asg: use pagination when describing target groups

In case an ASG has 100s of target groups, ensure that
we get the full result using build_full_result
9 years ago
Abhijeet Kasurde b89cb95609 Fix spelling mistakes (comments only) (#25564)
Original Author : klemens <ka7@github.com>

Taking over previous PR as per
https://github.com/ansible/ansible/pull/23644#issuecomment-307334525

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Pilou 460d932aa8 postgresql_user: fix bugs related to 'expires' option (#23862)
* Factorize tests related to no_password_change using an include task

* Refactor: deduplicate tasks

* postgresql_user: test 'expires' parameter

* Change 'valid until' even it's the only updated field

* value is changed when another value is provided

* value isn't returned when unset

* Remove unused variable

* psycopg2.extras.DictRow is able to handle comparison

* postgresql_user: simplify helper method

* postgresql_user: define variable just before using it

* Fix comparison between user input and applied configuration

* new test: adding an invalid attribute

* Refactor, add cleaning task

* Check that using same attribute a 2nd time does nothing

* Always try to remove created user

* postgresql_user: fix pep8
9 years ago
Abhijeet Kasurde 301cbc1f5b Remove unreachable code from cron module (#25577)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Martz 23eebb62e6 Convert docker cmd output to native, early 9 years ago
Matt Clay a18cc45778 Fix PEP 8 issue. 9 years ago
Brian Coca 5717f4f161 updated cache descriptions 9 years ago
Brian Coca cdcbd84088 refactor of virtualbox plugin, fixed cache use 9 years ago
Matt Martz 392934f1b9 Fix pep8 issue in lib/ansible/inventory/manager.py (#25562) 9 years ago
Brian Coca cc66bd4ad0 moved general pattern cache into object
no real reason this is a class global
9 years ago
Adrian Likins 4befefd78c Try to show original exception info for yaml (and other) errors (#24468)
* show original exception for yaml (and other) errors

In places where we need to catch a yaml error and raise
an AnsibleError, add the orig yaml exc to the AnsibleError
via the orig_exc arg.

When the AnsibleError is displayed it will now include the
AnsibleError (AnsibleParserError for example) and the type
and message from the original yaml exception.

This provides more detail to the error messages related to
yaml errors.

This also improves errors from dataloader (for example,
previously if a wrong password was used for a vault encrypted
yaml file, the error was very vague and suggested yaml errors,
but now the message includes the original exception from vault
indicating the password was incorrect or missing).

Add a text note to playbook helper asserts. For playbook
syntax/layout errors that aren't yaml errors, but errors
indicating invalid data structures for a playbook/task/role/block,
we now include some info about where the assert was and
why it was raised.

In places we raise an AnsibleParserError in an except
clause, pass the original exception to AnsibleParserError via
orig_exc arg.

Make assorted error messages a little more specific (like
the playbook helper load methods)

* Revert "Include the original YAML error in syntax error messages"

This reverts commit 781bb44b02.
9 years ago
Abhijeet Kasurde ccc7f788c0 Fix import for get_exception (#25551)
Fixes #25549

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
René Moser 29817ab115 cloudstack: add tests, fix pep8 (#25518)
* cloudstack: cs_zone: fix pep8

* cloudstack: cs_zone: add tests
9 years ago
René Moser 76c598f044 cloudstack: cs_zone: fix missing type bool for params (#25552) 9 years ago
James Cammarata 81998b963d Re-adding missing os import to wait_for 9 years ago
Chris Atkinson 62fa2019c6 [cloud] Allow IAM certificate secrets, body, chains to be strings (e.g. sourced from ansible-vault) (#24206)
* Allow cert and private pem information to be passed in via string, eg when obtaining sensitive key details from anisble-vault at runtime

* Allow cert chain body to be passed as a string

* Ensure the new options are set in parameters

* Dont publish the private key in logs

* Set the version_added documentation

* Update documentation inline with review

* Removes file based certificates in favour of string only as suggested in feature review

* Documentation changes as suggested by review
9 years ago
Sloane Hertel b376bde4d7 [cloud] ec2_eni module - allow attaching a new instance - fixes #19452 (#22377)
* fix bug attaching instances

* pep8
9 years ago
Tim Rupp 61684f7313 Updates gtm wide ip module to be feature complete (#25502)
This module is used to manage GTM wide ips on a bigip.
Previously, this module only included a small subset of functionality
primarily related to editing a wide ip that already existed. Additionally
it used the SOAP api for its communication. this patch completes the
feature set of wide ips and refactors the code to use the F5 python SDK
and the REST API.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_gtm_wide_ip.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_gtm_wide_ip/tasks
9 years ago
Ted 416d9774ce New module: Add Bcf switch module. (network/bigswitch/bcf_switch) (#24261)
* Make access_token type str, remove alias, and make validate_certs default value true

* Remove comma

* Add bcf switch module

* Remove white space in blank line

* Fix yaml

* Try removing the RETURN just like in the other modules
9 years ago
Abhijeet Kasurde ba4f6de35a Add support for Devuan in hostname module (#25525)
Fixes #25395

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ricardo Carrillo Cruz 72e65e4290 Platform agnostic module for VRFs (#25383)
* WIP VRF platform agnostic module

* Fixed examples refering vlans instead of vrfs

* Add integration tests
9 years ago
Ricardo Carrillo Cruz d83f254bb6 New eos_vrf module (#25427)
* New eos_vrf module

* Add CLI integration tests

* Check rd only if not None
9 years ago
Trishna Guha 91e5fce90f Add ios_user implementation module (#25413)
* Add ios_user module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for ios_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add unit test for ios_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Phil Nelson eb349cb201 Template parent include path before finding its dirname (#23202)
Given parent include path "{{ var | default('path/file.yml') }}"
os.path.dirname(parent_include_path) yields {{ var | default('path/
which is incorrect in itself but also causes templating errors
due to unbalanced quotes. Fix both problems by templating
parent include path before finding its dirname.
9 years ago
René Moser 64a9794997 ovirt_storage_connections: fix RETURN, fixes build (#25517)
* ovirt_storage_connections: fix RETURN, fixes build, pep8
9 years ago
Ondra Machacek f762c61816 cloud: ovirt: Add support to specify multiple LUNs (#22866) 9 years ago
Adrian Likins dde3dac9f8 Support NetBSD 7.1+ style ifconfig -a output (#25442)
* Support NetBSD 7.1+ style ifconfig -a output

network facts on NetBSD after 7.1 cvs would fail
because of format changes in 'ifconfig -a' output.

update code to support new and old format.

add unit tests for both based on
examples from Bruce V Chiarelli.

* wrap use of interfaces.keys() in list() for py3 compat
* sort interface ids for stability
9 years ago
Ondra Machacek d7b3ace0b0 cloud: ovirt: Fix upgraded state of the ovirt_hosts module (#25169) 9 years ago
Ondra Machacek c17efa4aaa cloud: ovirt: Add possibility to specify opentack volume type (#22361)
This PR fixes: https://github.com/ansible/ansible/issues/21580
9 years ago
Ondra Machacek c17e206b0e cloud: ovirt: add module to manage storage connections (#22239) 9 years ago
Tareq Alayan 013f759775 ovirt_vms: add ability to specify storage domain (#24012)
When creatinf a new VM from template, you can specify the storage domain
name and disk format where to copy all the template disks

For example if you want to create a VM from template into specific
storage domain you can do the following:

  ovirt_vms:
    name: vm_on_my_storage_domain
    cluster: my_cluster
    template: my_template
    operating_system: other_linux
    type: server
    cpu_cores: 1
    cpu_sockets: 1
    state: stopped
    clone: True
    storage_domain: my_nfs_storage
    format: COW
9 years ago
Tareq Alayan a401f6a8e9 ovirt_nics.py: support adding nic to template (#24020)
before this change adding nic was allowed only to a vm. Now it is
possible to add it to template.

example:
- name: test add nic to template
  ovirt_nics:
    auth: "{{ ovirt_auth }}"
    state: present
    template: mytemplate
    name: nic1
    interface: virtio
    profile: ovirtmgmt
    network: ovirtmgmt
9 years ago
Katerina Koukiou b8c4ca75cf cloud: ovirt: Add option to register template (#24830) 9 years ago
Ondra Machacek a1a246e85d cloud: ovirt: add ovirt_scheduling_policies_facts module (#25055) 9 years ago
Ondra Machacek 436b8c9791 cloud: ovirt: add localfs option to storage_domains module (#25439) 9 years ago
Adrian Likins f4128746d3 Cmdline fact uefi 23647 (#25446)
* Fix ansible_cmdline initrd fact for UEFI

UEFI cmdline paths use \ path sep which would
get munged by cmdline fact collection.

* Make CmdLineFactCollector easier to test

extract the parsing of the /proc/cmdline content to
_parse_proc_cmdline()

add a wrapper method for get_file_content _get_proc_cmdline()

Add unit tests of _parse_proc_cmdline based on examples
from issue #23647

Fixes #23647
9 years ago
James Cammarata 781bb44b02 Include the original YAML error in syntax error messages 9 years ago
Brian Coca db15528de3 added example for those with ansible_connection set 9 years ago
Brian Coca d325fa00cc corrected docs 9 years ago
Brian Coca a2cff554ee allow more 'backwards compatible' vars_plugins (#25451)
* allow more 'backwards compatible' vars_plugins

* better version relying on exceptions
9 years ago
Jordan Borean 89caef8fb6 win_environment: Added tests and return info in document (#25064)
* win_environment: Added tests and return info in document

* fixing up some yaml issues

* some more things I should have detected

* fixing up test tag name
9 years ago
Branko Majic 6ce7448ca4 New module: Add module for manipulating the dconf database (system/dconf) (#23015)
* Implemented dconf module for manipulating and reading the dconf database.

* Fixed remote execution for the dconf module when state=present by wrapping the invocation with dbus-launch (dconf requires a running DBus user session). Updated documentation to mention external module dependencies.

* Fixed remote execution for the dconf module when state=absent by wrapping the invocation with dbus-launch (dconf requires a running DBus user session).

* Updated dconf module implementation to make it more robust:

- Detect running D-Bus session, and reuse that one if possible.
- If detection fails, try launching process via dbus-run-session to avoid
  left-over D-Bus processes.
- As last resort run dbus-launch, and clean-up after the changes have been
  made.
- Updated documentation to mention new dependencies and to be more explicit
  about module limitations.

* Fixed PEP8 errors reported by ansibot in dconf module.

* Updated dconf module implementation:

- Fail early if psutil library is not available on the system.
- Go through all of user's processes to locate a running D-Bus daemon.
- Test potential D-Bus session bus address before deciding to (re)use it.
- Added a couple of debug statements.
- Updated documentation to include dbus-send as requirement.

* Updated dconf module implementation:

- Simplified module, removing all code for handling dbus-daemon, as discussed in
  a community meeting.
- Module user must ensure that D-Bus user session is available and specified
  either via module parameter or environment variable.
- Updated documentation for the change.

* Updated dconf module implementation:

- Add back ability to detect running D-Bus user session.
- Fail-back to using dbus-run-session if running session could not be detected.

* PEP8 fix for dconf module.

* Updated dconf module implementation:

- Introduce correct examples for Gnome DE.
- Rename existing examples to mark them as Cinnamon-specific.
- Use self.module.get_bin_path instead of custom check for dbus-run-session.
- Fixed typo in method documentation for DconfPreference.reset().
9 years ago
Brian Coca 8badfcd7fe make sure ini handles children no matter the order
fixed 'pending declarations' assumption that children only have 1 parent
fixes #25488
9 years ago
George Nikolopoulos a00089c341 New module: manage Citrix Netscaler service configuration (network/netscaler/netscaler_service) (#25129)
* netscaler_service initial implementation

* Changes as requested by reviewers

* Skip some tests if under python2.6 and importing requests library

* Change option "operation" to "state"

* Remove print statements from netscaler module utils

* Catch all exceptions during login

* Fix fail message

* Add common option save_config
9 years ago
Eric D Helms 2220362a5f fixes(#25299) Don't fail when creating a Foreman organization (#25396) 9 years ago
marlier 6bd1681203 RabbitMQ 3.6.7 changed a couple of response codes (#22715) 9 years ago
Dag Wieers 6e98dbbfd7 wait_for: PEP8, imports, cosmetics (#24634)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)

This fixes #19781
9 years ago
Chris Houseknecht 20bddde669 docker_service: Forward stderr-based output from docker-compose (#25456)
PR #5165 at https://github.com/ansible/ansible-modules-core/pull/5165
adds redirection and capture of stdout during execution of
docker-compose.

This doesn't necessarily catch all errors, since some are printed to
stderr and lost.

This extends the redirection to include stderr, and does minor string
processing to attempt to find a 'useful' message to present as the
final Ansible error.
9 years ago
Matt Martz 13c070948b Fix pep8 issues in profile_roles (#25458)
* Fix pep8 issues in profile_roles

* Fix reduce import
9 years ago
Brian Coca 2e920d724d fixed import, had moved 9 years ago
Tennis Smith 1d15ca739f feat: add role profiler (#20092)
* feat: add role profiler

* fix: use 2.0 api version
9 years ago
Ricardo Carrillo Cruz b3e8c48d4b New module: Add support for Arista EOS vlan (network/eos/eos_vlan) (#25355)
* WIP Add eos_vlan module

* Fix docstrings

* Fix pep8 issues

* Add active/suspend states logic

* Add integration tests for eos_vlan

* Fix map_config_to_obj on EAPI

* Sixify iteritems

* Add platform agnostic net_vlan integration tests
9 years ago
Brian Coca 88f0e0b882 removed spurious warning (traling ,)
also removed unused improt
9 years ago
Matt Martz 004e99316c Allow template files to be vaulted (#22951)
* Allow template files to be vaulted

* Make sure to import exceptions we need

* get_real_file can't take bytes, since it looks specifically for string_types

* Now that we aren't using open() we don't need b_source

* Expand playbooks_vault docs to include modules that support vaulted src files

* Add vaulted template test
9 years ago
Adrian Likins 24f2a616dd Fix manual reference for dmidecode (#25444)
dmidecode(1) does not exist, dmidecode(8) does exists.

(rebased from https://github.com/ansible/ansible/pull/24106)
9 years ago
Dag Wieers 656db3707c win_defrag: New module to defragment local volumes (#23140)
This module performs defragmentation on local Windows volumes.

This module requires PR #23131 for list parameter support.
9 years ago
Jay LaCroix 449cf43926 Add Antergos to OS_FAMILY_MAP as fork of Arch Linux. (#25363)
Support 'Antergos' as a target for distribution facts.
9 years ago
Matt Kunkel 3d21965e73 Fix HPUX cpu facts on HP Integrity VM's (#25369)
Skips cpu facts not returned by machinfo on HP Integrity VM's.

Fixes #25368
9 years ago
Daniele Lazzari eda6a6baee New module: Add module to add/remove a network static route on windows (windows/win_route) (#23405)
* adds win_route windows module

* fix documentation indent

* fix documentation pep8 issues

* fix documentation issues

* genaral code review

* changed 'supported_by' in doc, supports_check_mode removed

* use of powershell cmdlet instead of route command, destnation in CIDR format, adds check mode support

* adds win_psmodule module

* documentation review

* documentation review

* removed files accidentatlly pushed

* add integration tests, add return in documentation

* add conditional statement in test, add os requirementes in documentation

* fix documentation

* fix os check in tests
9 years ago
Mike Wiebe b76acc8ce8 Fix nxos_vpc idempotence issues (#25219)
* Fix nxos_vpc idempotence issues

* Remove legacy-file pep8 now passing
9 years ago
Toshio Kuratomi 80c1765653 When cleaning up the AnsiBallZ tempdir we need to not fail if the tempdir wasn't created
If the temp directory creation failed in mkdtemp then temp_path is never
given a value.  This would lead to a NameError exception which would
obfuscate the original error (out of disk space being a common one).  By
catching NameError, python will raise the original exception as we want.

Fixes #17215
9 years ago
Evan Kaufman 3d1701b959 Fixed subsection replacement with before/after patterns
* using a _named_ capture in our assembled pattern, since before/after could potentially contain their own parenthesized captures
* ensuring we only replace against the named capture in question
* removing some duplication in the regexp replacement, that was introduced in ansible/ansible#22535
* fixed edge case of before/after not matching file content to replace

Fixes ansible/ansible#24840
9 years ago
Abhijeet Kasurde 5bd4e01533 Update documentation of pamd module (#24712)
Updated explanation and documentation of new_module*
in pamd documentation

Fixes #24516

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 577d01baa3 fortios: module_utils: Fix typo in close call (#24853)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 8a4a04b016 logicmonitor: remove closed statement, used for py2.4 compat (#25240)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 26349033c1 Add FreeIPA module for managing DNS records (#25203)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 5b03e55440 Misc typos in azure_rm_deployment (#25372)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 5cf66ceda0 Misc typo in azure_rm_virtualmachine (#25376)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 65bd5c4d56 Refactor github_hook module (#24391)
* PEP8 fixes
* Refactoring for fetch_url call
* Removed un-used code

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 677a6c2982 Pep8 fixes for ejabberd_user and jboss (#24586)
* PEP* Fixes
* Refactor code

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
René Moser 894b86a467 cloudstack: cs_zone_facts: add tests and fix pep8 (#25407) 9 years ago
Ondra Machacek bcc5bffd8e cloud: ovirt: Fix searching of network in datacenter (#25248) 9 years ago
KATO Tomoyuki cbe87d0af7 doc: fix missing period for hostname.py (#25392) 9 years ago
James Cammarata 483df9c5f8 Imports and includes (#25399)
Initial commit to split includes into static imports/dynamic includes

This implements the new include/import syntax for Ansible 2.4:
* include_{tasks,role,variables} = dynamic
* import_{playbook,tasks,role} = static

The old bare `include` will be considered deprecated, as will any use of the `static: {yes|no}` option.

This also adds docs for import/include and reorganizing the "Playbook Reuse" section of the documentation.
9 years ago
Will Thames 3549391673 New facts module for AWS VPC Peering (#19910)
* New facts module for AWS VPC Peering

* Update documentation and region catch for boto3

* Update ec2_vpc_peering_facts for python3 and flake8

Update version to 2.3
Update for python3 exception handling
Use ansible_dict_to_boto3_filter_list rather than duplicating
implementation
Use camel_dict_to_snake_dict on results for ansible standard results
Tidy up flake8 compliance

* Support check_mode for ec2_vpc_peering_facts

Add supports_check_mode to the module declaration

* Fix latest Ansible standards

Update version to 2.4
Add ANSIBLE_METADATA
Move imports
9 years ago
Tim Rupp 6f2c543a33 Updates and refactors the bigip pool module to use REST (#25234)
This patch updates the bigip_pool module to use F5's REST API
as well as includes unit tests.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_pool.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_pool/tasks
9 years ago
Tim Rupp 855fd98be6 Adds the bigip_config module to Ansible (#25191)
This patch adds the bigip_config module to Ansible to support
merging SCF files, saving running configs, resetting config
and validating SCF configs
9 years ago
Sloane Hertel 7bebc83dcf module_utils/ec2: fix boto3 tags to remove (#25277)
* Fix boto3 tags to remove; unable to remove a list of strings, need list of {'Key': key}

* pep8 fix

* cannot bugfix due to differences in AWS APIs - just document

* add more info to guidelines for using compare_aws_tags
9 years ago
Matt Kunkel b2b0938aff Check / Skip cores for AIX5 Series (#25364) 9 years ago
Trishna Guha f6a4803669 New module: platform agnostic way to manage local users on network devices (network/net_user.) (#25259)
* Add net_user platform agnostic module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for net_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify eos_user module to support name param as alias to username

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Test collection of users

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Toshio Kuratomi 15104acc00 Fix json.dumps to do something sensible with sets. 9 years ago
Toshio Kuratomi be4e7a05fa remove_values could hit the recursion limit
When operating on arbitrary return data from modules, it is possible to
hit the recursion limit when cleaning out no_log values from the data.
To fix this, we have to switch from recursion to iteration.

Unittest for remove_values recursion limit

Fixes #24560
9 years ago
Tim Rupp 0133a5a763 Adds the bigip_gtm_pool module (#25275)
This module is used to manage GTM(DNS) pools in a BIG-IP.

Unit tests are provided. Integration tests can be found here

https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_gtm_pool.yaml#L23
https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_gtm_pool/tasks
9 years ago
Ricardo Carrillo Cruz 1476e30c26 Add net_vlan platform agnostic module (#25252)
* Add net_vlan platform agnostic module

* Add vlan_id param

* Fix documentation and examples

* Remove whitespace
9 years ago
Ganesh Nalawade 6215922889 Add support for cliconf and netconf plugin (#25093)
* ansible-connection refactor and action plugin changes
* Add cliconf plugin for eos, ios, iosxr, junos, nxos, vyos
* Add netconf plugin for junos
* Add jsonrpc support
* Modify network_cli and netconf connection plugin
* Fix py3 unit test failure
* Fix review comment
* Minor fixes
* Fix ansible-connection review comments
* Fix CI issue
* platform_agnostic related changes
9 years ago
Toshio Kuratomi 6e473a432b Document the encoding parameter for the replace module
Add encoding parameter for replace to changelog
9 years ago
Evan Kaufman 49fe53266f Replace - workaround for non-utf8 text (#24861)
* Workaround for non-utf8 text exceptions
* Added encoding param, using to convert from bytes to text and back

Fixes ansible/ansible#24521
9 years ago
Ramon bc4a8dbaa4 fix proposal for issue #25151: [python3] pip failed to create virtual env when using custom command (pyvenv) (#25241)
* Fix proposal for bug 25151

* Fix proposal for bug 25151 - pip module, pyvenv validation

* Graceful fail when virtualenv_python is defined and virtualenv_command uses the venv module

* Making sure that venv is being used as a modue "-m venv"

* Updating syntax in validations

* Updating syntax in validations - fixing stupid typo "[)"

* Raising an error if virtualenv_command is pyvenv or venv and virtualenv_python is used

* trailing whitespace gone, pyvenv, venv validation and docs update

* cleaning whitespaces from blank lines
9 years ago
Brian Coca cf59f9765e fix script inventory plugin
fixes #25371

there is still better ways to do this, but this will 'unbreak' devel for now
9 years ago
Brian Coca 9831e1597f minor protection against bad config 9 years ago
Matthieu Simonin 8432ba80c1 Add the email confirmation option to gitlab_users (#25134)
`confirm` is an optional parameter ìn gitlab API[1].
It indicates whether the email of the user has to be confirmed.

[1]: https://docs.gitlab.com/ce/api/users.html#user-creation
9 years ago
Esteban Echeverry e8e73e0edd Use to_text helper function to handle bytes and unicode 9 years ago
Esteban Echeverry 66040e0c9d Fix unicode errors in json.load method
HTTPConnection returns bytes in Python 2. An explicit
decoding is needed in Python 3 to ensure compatibility.
9 years ago
Abhijeet Kasurde 01eb70bdee Remove unwanted params from function call (#25348)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Karthik Suresh 448f6de6bd Minor change in comment sentence of shell (#25336)
Removing actually as "actual" mentioned two times in the sentence does not look good.
9 years ago
Abhijeet Kasurde 38775c5363 Fix a minor typo in network_common (#25328)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Michael De La Rue e28845018d [cloud] New module: AWS API Gageway module (#20230)
* Ultra basic api-gateway module based of lambda.py

* Ultra basic deployment added to api-gateway module

* ApiGateway module Allow creation of APIs, more documentation and better return value

* ApiGateway module incorporate review feedback

* ApiGateway module flake8 cleanup

* APIGateway module - more review fixes.

* slightly better messages in api_gateway module

* AWS api_gateway module - try to improve messages in case of exceptions

* rename api_gateway module to aws_api_gateway as discussed in PR 20230

* aws_api_gateway - Allow delivery of swagger either as text or dictionary.

* aws_api_gateway module - introduce 'unit' tests, improve imports using them and small fixes

* aws_api_gateway module - move path expand_user to avoid early typecheck

* aws_api_gateway - version means version of metadata not module - fix to 1.0

* aws_api_gateway module - Rely on module_utils.ec2 for imports & path type for expanduser / cleanups

* aws_api_gateway module - heavy cleanup and refactor of code + cloud retry functionality.

* api_gateway_module - failing test case for handling more than one deployment in succession and API deletion

* add TooManyRequestsException to AWSRetry exception list - makes API deployment work.

* api_gateway_module - Fixes for various review comments + errors from various linters

* api_gateway_module - Fixes for more review comments + linter error

* api_gateway_module - Major refactor into sensible functions - create_response becomes configure_response

* api_gateway_module - should be working under python3; remove test exclusion

* api_gateway_module - finish off remaining review fixes - use ansible defaults and fix mutually exclusive

* api_gateway_module - attempt to improve handling of botocore errors in python3

* api_gateway_module - implement state=absent / API deletion
9 years ago
Adrian Likins 087b5277f1 Make ServiceMgrFactCollector.is_systemd_managed() a static method (#25316)
Fix 'hostname' module Facts is not defined by updating
'hostname' module to use it.

is_systemd_managed() was previously on the module_utils.facts.Facts
class that no longer exists.

Fixes #25289
9 years ago
René Moser 53c46df323 cloudstack: new module cs_network_acl_rule (#25325)
* cloudstack: new module cs_network_acl_rule
* fix doc errors
9 years ago
Rene Moser fd3c92504a ansible-doc: fix exception for required field 9 years ago
jhawkesworth de8c7c22d2 Add 'exists' to win_stat return docs (#25146)
* Add 'exists' to win_stat return docs

Fix 25107 by adding documentation for 'exists' return value in win_stat module

* Added missing filename attribute to RETURN

Also made the path and filename sample values consistent.
9 years ago
René Moser 3e02b19b98 cloudstack: fix pep8 cs_project (#25322) 9 years ago
Brian Coca 4aeca601f4 corrected default inventory plugin order
default inventory plugin order now follows the hardcoded one in previous versions
yaml plugin shoudl run before ini to avoid ini being able to parse some yaml files succesfully.

fixes #25321
9 years ago
Sebastian Kornehl 5d0340a9e3 datadog_monitor: Idempotence fix (#19217)
* Added matching_downtimes to list of ignores values. Fixes: #19216

* Added overall_state_modified to list of ignores values. Fixes: #19216
9 years ago
Sloane Hertel 6ba040591c {cloud} module_utils/ec2.py: get AWS access and secret keys from boto config (#24783)
* Get AWS access and secret keys from boto config

* matching the elif pattern

* avoid setting credentials as empty strings by checking os.environ.get('cred')

put comments back

* remove None from os.environ.get()
9 years ago
Sloane Hertel 77008707f5 ensure port is an int (#25310) 9 years ago
Matt Martz 99a30f8fdb Python3 fix for hashing in inventory plugins 9 years ago
Will Thames 84eea2a7e3 Support check_mode in ec2_vpc_nacl (#23112)
* Support check_mode in ec2_vpc_nacl

Ensure that all API calls that make changes are guarded by
`if not module.check_mode`.

* Update ec2_vpc_nacl_facts to latest pep8 standards
9 years ago
Kassian Sun 42d57782c0 Try to fix travis 9 years ago
Kassian Sun 981249daa1 use single line for-loop 9 years ago
Kassian Sun b3a37da671 Add --sysctl support for cloud/docker_container 9 years ago
Trishna Guha e90f1d6449 net_command platform agnostic module (#25249)
* net_command platform agnostic implementation

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add net_command platform agnostic module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add integration test for net_command module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix yaml issue
9 years ago
Dag Wieers 8cbed3c534 unarchive: PEP8, imports, cosmetics (#24654)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
9 years ago
Ricardo Carrillo Cruz 955dc6e250 Add net_banner platform agnostic module (#25245)
* Add net_banner platform agnostic module

* Add integration tests for net_banner

* Remove default from required param

* Remove skip/python3 from net_banner aliases
9 years ago
Bill Nottingham d0cc980223 Fix handling of extra_vars_path parameter. (#25272)
tower-cli process_extra_vars takes a list.
9 years ago
Ricardo Carrillo Cruz 64add28657 Platform agnostic net_system module (#24953)
* Platform agnostic net_system module

Also refactor the action network plugins for better code re-use

Still more refactoring to do once the connection plugin work is complete

* Replace importlib for imp

importlib is not available on 2.6, so we need to stick to imp

* Load action plugin via module metadata

* Better error message if no implementation is found

Now the plugin will show the module name and the network OS in the
error message

* Fix typo on documentation author line

* Fix pep8 issues

* Add missing options key on doc string and stringify version

* Return None in case module has no metadata

* Read module metadata only if it's a python module

Check for module suffix, if it's .py then read metadata.
Otherwise this fails on non-python modules, like Windows PS for example.

* Read metadata variable only if it's a python module

Fix referencing a variable before assignment

* Add action_handler to validate_modules metadata schema

* Pull metadata with plugin_docs get_docstring

Using load_source from PluginLoader is troublesome, it is not guaranteed
a module may be importable at the controller, e.g. if a module depends
on module_utils functions it won't work, because module_utils is not
in the sys path.
Rather than putting that module dependencies introspection, just
use plain parsing like plugin_docs get_docstring does as we only care
about reading ANSIBLE_METADATA.

* Add platform agnostic group of groups for integration tests

This will be the target for platform agnostic integration tests.

* Add integration tests for net_system

* Switch to action plugin inheritance from metadata driven action handler

As the metadata action driven action handler work is being worked on
on its standalone proposal+PR, let's just go back to have one
action handler per platform agnostic module.
Those action plugins will inherit from net_base.

* Add blank line to fix pep8

* Add aliases file to net_system integration test

This will avoid CI failure

* Fix integration tests for net_system

* Give more precedence to task network_os over inventory network_os
9 years ago
Silvio Tomatis 2ee2c8c1ab [cloud] ec2_elb_lb module Python 3 fix for string types (#24925)
* Python 3 compatibility for ec2_elb_lb module

* Use string_types from ansible.module_utils.six for python2/3 compatibility
9 years ago
Brandon Davidson 0e0c5328fa amazon/ec2_vpc_igw: Allow internet gateways to be tagged (#23782) 9 years ago
Dag Wieers 5553b20828 Collated PEP8 fixes (#25293)
- Make PEP8 compliant
9 years ago
Dag Wieers 2f33c1a1a1 find: PEP8, imports, cosmetics (#24646)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
9 years ago
Dag Wieers 91ee93ce13 patch: PEP8, imports, cosmetics (#24649)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
9 years ago
Ganesh Nalawade 85219dfdf3 Add support to fetch old style junos facts (#25250)
* Add support to fetch old style junos facts

Fixes #25050

Add support to fetch old style facts supported in Ansible <= 2.2
To fetch old style facts value `gather_subset` value shoule be `all`
and `junos-eznc` is required to be installed on control node as a
prerequisite.

* Remove unwanted import
9 years ago
Dag Wieers 4847613725 win_timezone: Add RETURN information (#24571)
And cosmetic cleanup.

This fixes ansible/ansible-modules-extras#1767
9 years ago
Peter Oliver d0d33262cb pkg5 with `latest` shouldn't ignore absent packages (#23006)
When the state is set to `latest` we should install absent packages, not just upgrade already-instaled packages.

This should fix #22823.
9 years ago
Rene Moser ff35d23a27 adjust versions added 9 years ago
Sloane Hertel 7160a491c2 elasticache: add requirements to parameter_group and snapshot (#24904)
* Add requirements to elasticache parameter group

* add requirements for elasticache_snapshot

* pep8 elasticache_snapshot

* remove elasticache_snapshot from legacy files
9 years ago
Naoya Nakazawa 727b8c80be support host parameter to datadog_event module (#20914) 9 years ago
Evan Kaufman b244397a31 Cron - Explicitly fail on Solaris when given a special_time (#24898)
* Added explicit failure on Solaris given a special_time

Fixes ansible/ansible#22145

* Using get_platform from module utils
9 years ago
Peter Oliver ea56d18c99 Support check mode in pkg5 module. (#23008) 9 years ago
Thomas Krahn f8a99fd745 ipa_role: Add support for privileges (#21149)
* ipa_role: Add support for privileges

* ipa_role: Add default vaule to module documentation
9 years ago
Trond Hindenes 055fd6f5f5 New module: win dsc (#24872)
* Added win_dsc module file

* mute output and track reboot requirements

* added tests

* proper conditionals for test

* Added moar conditionals for test

* ci fixes

* Added metadata

* fixed integration test yaml

* ci fix

* ci fix

* added module_version param and output, no longer chokes on multiple versions found.

* ci fix

* code review improvements, make return vars more pythonic, cleanup
removed reference to handles in commit message

* Fixed tests, clearer documentation

* fixed trailing whitespace
9 years ago
James Labocki 055cc32830 Fix indentation for register module in example (#25274) 9 years ago
Tim Rupp eb83c6f4e7 Fixes documentation (#25273)
This plugin was released with 2.4 but mentions it supports 2.3.
This patch fixes that.
9 years ago
Fabrizio Colonna f364d7af8e Fixes parted i18n issues (#24991)
* Fixed issue 24969

* Used C locale and global env update.
9 years ago
mechaxl 3c3e9c3b36 Fixing policy sorting for Python 3 9 years ago
MechaXL c1f0260ae3 Convert basestring to string_types (#25228) 9 years ago
evancarter-iex 3a2699f1bf gce_instance_template: Fix subnetwork not working (#25231)
* Fix problem with subnetwork not working

It is broken in the current master branch. This fixes it.

* Fix missing version_added
9 years ago
Adrian Likins 45a9f96774 Facts Refresh (2.4 roadmap) (#23012)
Facts Refresh (2.4 roadmap)

This commit implements most of the 2.4 roadmap 'Facts Refresh'
- move facts.py to facts/__init__.py
- move facts Distribution() to its own class
- add a facts/utils.py
- move get_file_content and get_uname_version to facts/utils.py
- move Facts() class from facts/__init__ to facts/facts.py
- mv get_file_lines to facts/utils.py
- mv Ohai()/Facter() class to facts/ohai.py and facter.py
- Start moving fact Hardware() classes to facts/hardware/*.py
- mv HPUX() hardware class to facts/hardware/hpux.py
- move SunOSHardware() fact class to facts/hardware/sunos.py
- move OpenBSDHardware() class to facts/hardware/openbsd.py
- mv FreeBsdHardware() and DragonFlyHardware() to facts/hardware/
- mv NetBSDHardware() to facts/hardware/netbsd.py
- mv Darwin() hardware class to facts/hardware/darwin.py
- pep8/etc cleanups on facts/hardware/*.py
- Mv network facts classes to facts/network/*.py
- mv Virtual fact classes to facts/virtual
- mv Hardware.get_sysctl to facts/sysctl.py:get_sysctl

- Also mv get_uname_version from facts/utils.py -> distribution.py
  since distribution.py is the only thing using it.

- add collector.py with new BaseFactCollector
- add a subclass for AnsibleFactCollector
- hook up dict key munging FactNamespaces
- add some test cases for testing the names of facts
- mv timeout stuff to facts.timeout

- rm ansible_facts()/get_all_facts() etc

- Instead of calling facts.ansible_facts(), fact collection
  api used by setup.py is now to create an AnsibleFactCollector()
  and call it's collect method.

- replace Facts.get_user_facts with UserFactCollector
- add a 'systems' facts package, mv UserFactCollector there
- mv get_dns_facts to DnsFactCollector
- mv get_env_facts to EnvFactCollector
- include the timeout length in exception message

- modules and module_utils that use AnsibleFactCollector
  can now theoretically set the 'valid_subsets'

  May be useful for network facts module that currently have
  to reimplement a good chunk of facts.py to get gather_subsets
  to work.

- get_local_facts -> system/LocalFactCollector
- get_date_time -> system/date_time.py
- get_fips_facts -> system/fips.py
- get_caps_facts() -> system/caps.py
- get_apparmor_facts -> system/apparmor.py
- get_selinux_facts -> system/selinux.py
- get_lsb_facts -> system/lsb.py
- get_service_mgr_facts -> system/service_mgr.py
- Facts.is_systemd_managed ->  system/service_mgr.py
- get_pkg_mgr_facts -> system/pkg_mgr.py
- Facts()._get_mount_size_facts() -> facts.utils.get_mount_size()

- add unit test for EnvFactCollector
- add a test case for minimal gather_subsets
- add test case for collect_ids
- Make gather_subset match existing behavior or '!all'

    If 'gather_subset' is provided as '!all', the existing behavior
    (in 2.2/2.3) is that means 'dont collect any facts except those
    from the Facts() class'. So 'skip everything except
    'apparmor', 'caps', 'date_time', 'env', 'fips', 'local', 'lsb',
    'pkg_mgr', 'python', 'selinux', 'service_mgr', 'user', 'platform', etc.

    The new facts setup was making '!all' mean no facts at all, since
    it can add/exclude at a finer granularity. Since that makes more
    sense for the ansible collector, and the set of minimal facts to
    collect is really more up to setup.py to decide we do just that.

    So if setup.py needs to always collect some gather_subset, even
    on !all, setup.py needs to have the that subset added to the
    list it passes as minimal_gather_subset.

    This should fix some intg tests that assume '!all' means that
    some facts are still collected (user info and env for example).

    If we want to make setup.py collect a more minimal set, we can do that.

- force facts_dicts.keys() to a list so py3 works
- split fact collector tests to test_collectors.py

- convert Facter(Facts) -> other/facter.py:FacterFactCollector

- add FactCollector.collect_with_namespace()

    regular .collect() will return a dict with the key names
    using the base names ('ip_address', 'service_mgr' etc)

    .collect_with_namespace() will return a dict where the key names
    have been transformed with the collectors namespace, if there is
    one. For most, this means a namespace that adds 'ansible_' to the
    start of the key name.

    For 'FacterFactCollector', the namespace transforms the key to
    'facter_*'.

- add test cases for collect_with_namespace

- move all the concrete 'which facts does setup.py' stuff to setup.py

    The caller of AnsibleFactCollector.from_gather_subset() needs to
    pass in the list of collector classes now.

- update system/setup.py to import all of the fact classes and pass
  in that list.
- split the Distribution fact class up a bit

    extracted the 'distro release' file handling (ie, linux
    boxes with /etc/release, /etc/os-release etc) into its
    own class.
- extract get_cmdline_facts -> cmdline.py
- extract get_public_ssh_host_keys -> system/ssh_pub_keys.py
- extract get_platform_facts -> system/platform.py

  platform.py may be a good candidate for further splitting.

- rm test for plain Facts() base class
- let the base class for Collector unit tests provide collected_facts

    some Collectors and/or their migrated Facts() subsclasses need
    to look at facts collected by other modules ('ansible_architecture'
    the main one...).

    Collector.collect() has the collected_facts arg for this, so add
    a class variable to BaseFactsTest so we can specify it.

- mv Ohai to other/ohai.py and convert to Collector
- update hardware/*.py to return facts (no side effects)

- mv AnsibleFactCollector to setup.py
- extra collector class gathering to module method in
  facts/__init__.py (collector_classes_from_gather_subset)
- add a CollectorMetaDataCollector collector used to provide
  the 'gather_setup' fact
- add unit test module for 'setup' module
  (test/units/modules/system/setup.py)

- Collector init now doesnt need a module, but collect does

    An instance of a FactCollector() isnt tied to a AnsibleModule
    instance, but the collect() method can be, so optionally pass
    in module to FactCollector.collect() (everywhere)

- add a default_collectors for list of default collectors

  import and use it from setup.py module

  eventually, would like to replace this with a plugin loader
  style class finder/loader

- unit tests for module_utils/facts/__init__.py
- add unit tests for ohai facts collector
- remove self.facts side effect on populate() in hardware/sunos.py
- convert OpenBSDHardware() to rm side effects on self.facts
- try to rm some self.facts side effects in Network()

    plumb in collected_facts from populate() where it is needed.

    stop passing collected_facts into Network() [via cached_facts=,
    where it eventually becomes self.facts]

- nothing provides Fact() cached_facts arg now, rm it

    Facts() should be internal only implementation so nothing
    should be using it.

    Of course, now someone will.

- add a Collector.name attr to build a map of name->_fact_ids

    To properly exclude a gather_subset spec like '!hardware', we
    need to know that 'hardware' also means 'devices', 'dmi', etc.
    Before, '!hardware' would remove the 'hardware' collector name
    but not 'devices'. Since both would end up in id_collector_map,
    we would still end up with the HardwareCollector in the collector
    list. End result being that '!hardware' wouldn't stop hardware
    from being collected.

    So we need to be able to build that map, so add the Collector.name
    attribute that is the primary name (like 'hardware') and let
    Collector._fact_ids be the other fact ids that a collector is
    responsible for.

    Construct the aliases_map of Collector.name -> set of _fact_ids
    in fact/__init__.py get_collector_names, and use it when we are
    populating the exclude set.

- refactor of distribution.py

    make the big OS_FAMILY literal a little easier to read
    Also keys can now be any string instead of python literals

    99% sure the test for 'KDE Neon' was wrong
    I don't see how/where it should or could get 'Neon' instead
    of 'KDE Neon' as provided in os-release NAME=

    Use 'distribution' string for key to OS_MAP

    ie, we dont need to make it a valid python label anymore so dont.

    move _has_dist_file to module as _file_exists
    easier to mock without mucking with os.path

    mv platform.system() calls to within get_distribution_facts() instead
    of Distribution() init.

- remove _json compat module

    The code in here was to support:

      -a 'json' python module that was not the standard one included
      with python since 2.6.

      - potentially fallback to simplejson if 'json' was not available.

    'json' is available for all supported python versions now so
    no longer needed.

- mv get_collector_names -> facts.collector
- mv collector_classes_from_gather_subset -> facts.collector
- mv collector tests from test_facts -> test_collector

- Use six's reduce() in sunos/netbsd hardware facts

- rm extraneous get_uname_version in utils

  only system/distribution.py uses it

- Remove Facts() subclass metaclass usage

  - using fact_id and a platform id for matching collectors

    gut most of Facts() subclasses

    rm Facts() subclasses with weird metaclass

    only add collectors that match the fact_ids and the platform_info
    to the list of collectors used.

    atm, a collectors platform_id will default to 'Generic', and
    any platform matches 'Generic'

    goal is to select collector classes including matching the
    systems platform in collector.py, instead of relying on
    metaclasses in hardware/*. To finish this, the various
    Facts() subclasses will need to be replaced entirely with
    Collector() subclasses.

    use collector classmethod platform_match() to match the platform

    This lets the particular class decide if it is compatible with
    a given platform_info. platform_info is a dict like obj, so it could be
    expanded in the future.

    Add a default platform_match to BaseFactCollector that matches
    platform_info['system'] == cls._platform

    They were needed previously to trigger a module
    load on all the collector classes when we import
    facts/hardare so that the Hardware() and related
    classes that used __new__ and find_all_subclasses()
    would work.

    Now that is done in collectors based on platform matching
    at runtime we dont need to do it py module import/parse
    time. So the non empty __init__.pys are no longer needed
    and their is a more flexible mechanism for selection
    platform specific stuff.

    facts/facts.py is no longer used, rm'ed

- if we dont find an implement class for gather spec.. just ignore it.

  Would be useful to add a warn to warn about this case.

- Fix SD-UX typo (should be HP-UX)

- Port fix for #21893 (0 sockets) to this branch

    This readds the change from 8ad182059d
    that got lost in merge/rebase

    Fixes #21893

- port sunos fact locale fix for #24542 to this branch

    based on e558ec19cd

    Fixes #24542

    Solaris fact fix (#24793)

    ensure locale for solaris fact gathering

    fixes issue with locale interfering with proper reading of decimals

- raise exceptions in the air like we just dont care.

    Pretty much ignore any not exit exception in facts
    collection. And add some test cases.

- added new selinux fact to clarify python lib

    the selinux fact is boolean false when the library is not installed,
    a dictionary/hash otherwise, but this is ambigous
    added new fact so we can eventually remove the type dichtomy and normalize it as a dict

    Re-add of devel commit 85c7a7b844 to
    the new code layout, since it got removed in merge/rebase
9 years ago
Will Thames 3ca006ecbb Allow removal of target groups from ASGs (#25126)
An empty `target_group_arns` list represents no target groups.
This is different to not passing a `target_group_arns` list at all
which can signify no change.

Remove unnecessary empty list construction, as it must already be
an empty list to get to that point.
9 years ago
Abhijeet Kasurde 07be5f2b67 spelling fixes (non-trivial, changing messages) (#25094)
Multiple spell fixes in single commit.
Taking over existing PR as per comment -
https://github.com/ansible/ansible/pull/23645#issuecomment-304312275

Original Author: klemens <ka7@github.com>

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Trishna Guha 343b83041e nxos_feature fix and unit test (#25200)
* nxos_feature fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_feature unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* remove from pep8/legacy-file

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Trishna Guha fb87680046 fix state present nxos_evpn_vni (#25212)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Brian Coca ea8c9a9b73 minor doc update 9 years ago
Brian Coca 16cc07a016 made doc more tolerant and recursive for spec 9 years ago
Chen Zhiwei a44d57bf91 Allow customize fail message of wait_for module 9 years ago
Łukasz Jendrysik bdd5adf21e Fix module name in example
'sv' module name in example refers to non-existent module.
9 years ago
Aurimas Lapiene 10167d83ee Add Cloudlinux support for hostname.py
**SUMMARY**

Add Cloudlinux 6 and Cloudlinux 7 support

**ISSUE TYPE**

Feature Pull Request

**COMPONENT NAME**

lib/ansible/modules/system/hostname.py

**ANSIBLE VERSION**
```
2.4
```
9 years ago
Esteban Echeverry b7662f7e5b Import from urllib and not url (#25102)
* Import from urllib and not url

In Python 3, the correct way to import
urlparse is through urllib.parse.

* Use six module to import urlparse

Import urlparse from ansible.module_utils.six.
This way, the import statement is compatible both
with Python 3 and Python 2.

* Fix urlparse import using six module

The correct import is:
from six.moves.urllib.parse import urlparse

* Import six from ansible.compat

* Import from six.moves. Don't make six global.

Prevent code smell by not making six available
in the global namespace and instead importing from
one of its subpackages.
9 years ago
piotrsmolinski c3ffc49914 reset_connection fixes: #23621 (#25211)
* moved the logging statement

moved the logging statement before the actual action

* added status code check

In the existing implementation when the ssh command fails the command
result is silently discarded. It hides the fact that the disconnection
did not go as expected. Effectively the intended action was not
successful, but the play continues.

* Revert "added status code check"

This reverts commit fe2eb2ae4a.

* added command status code check

In the existing implementation the command is checked for the success.
As a result failed execution is silently discarded. The change tests for
return code and fails if it did not work.
9 years ago
Dag Wieers c13b1a718a plugins/terminal/: PEP8 compliancy (#25207)
- Make PEP8 compliant
9 years ago
Brian Coca caf5868ec9 removed debugging prints 9 years ago
Brian Coca 798d05ea41 corrected object with columns 9 years ago
Brian Coca 5667603a27 fixed format 9 years ago
Brian Coca 05caa3654c fix to alwasy use param in case subpec is used 9 years ago
Philippe Dellaert 3ae69302a2 Fixes ansible/ansible#25096 (#25098) 9 years ago
Senthil Kumar Ganesan e0db5d23cc Update facts module to support the new OS10 10.3 release (#25090)
* Update facts module to support the new OS10 10.3 release

* Address PEP8 issues reported by ansibot
9 years ago
Brian Coca 62a434141e ensure display is terminal sensistive
fixes #18248 by using display width intead of hardcoded length
9 years ago
Yap Sok Ann 24cfb10ce9 gce_net: change default to match with b7e78656 for idempotency (#23555)
After b7e78656, if `src_range`, `src_tags` or `target_tags` is left as
null, the firewall rule would always be recreated.
9 years ago
Yury V. Zaytsev c559567f16 [cloud] s3_bucket: fix connections for buckets with dots in names (#24720)
Refer to 689f135 for similar fix in s3 module. This change makes `OrdinaryCallingFormat` default for handling S3 connections. 

Signed-off-by: Yury V. Zaytsev <yury.zaytsev@moneymeets.com>
9 years ago
Will Thames bc24ae88a8 Allow iam_role to work with friendly policy names (#22630)
Basically obtain all the policies and create a mapping
from friendly name to ARN

Tidy up module argument specification to remove unneeded
settings.
9 years ago
Rob 2f0ce790d1 [cloud] New module to support ALB/ELBv2 elb_target_group (#19492)
* New module = elb_target_group

* Update elb_target_group.py

Adds support for adding and removing targets from a target group

* Better error handling

* Bump version_added

* Minor fixes

* Scope ec2 imports, add better doco, fix up examples, allow for both upper and lower case in protocol

* Yaml fixes

* ci fix

* Added targets parameter to doc and added new modify_targets flag to prevent runs from modifying targets

* Update to metadata_version

* Update to metadata support

* Remove defaults for some params. Add tags parameter

* Use paginator to get target groups

* Add tag support

* Add tg attributes to module

* Quote multilines

* Remove unnecessary defaults. Fix multiline

* Fix line ending
9 years ago
Rob 76e56bf48e [cloud] New module = elb_application_lb (#19491)
* New module = elb_application_lb

* Update elb_application_lb.py

Adds support for rules, adds wait option for ALB creation, adds support for using target group names instead of ARNs when referencing target groups in rules. All additional features should be idempotent.

* Better exception error messages. Bump version_added. Pep8 fixes

* Add missing full stop to description

* Review changes and fixes

* Fix pep issues

* Fix up examples

* Fix pep8

* half way through sorting elb attributes

* Add access logs enabled param

* Finish implementing elb attributes

* Use paginator to get elbs

* Dont snake_case the tags

* Add listeners to return output and fixed up examples

* review changes

* fix line lengths

* pep8 fixes
9 years ago
Sloane Hertel b04cf04f59 Prior to 2.4 only one source is permitted for ec2_group rules/rules_egress. 2.4 and after a list of sources is accepted. (#25165) 9 years ago
Will Thames 5c1a914002 Fix ec2_asg exception handling (#25121)
`e.message` is a string, and `camel_dict_to_snake_dict` fails when
given a string. The intended code is to run `camel_dict_to_snake_dict`
on `e.response`, the result of which includes a `message` key.

Make exception handling lines more consistent and wrap for slightly
shorter lines.
9 years ago
Dag Wieers d958440bcb win_firewall_rule: Implement idempotency, check-mode and diff support (#23162)
* win_firewall_rule: Small idempotency fix

This PR includes the following changes:
- an idempotency fix when `profile: any`
- better difference output to debug idempotency issues
- documentation fixes (remove `required: false`)
- Parameter handling fixes
- RDP example that matches default RDP rule
- Renamed parameter 'enable' to 'enabled' (kept alias)
- Renamed parameter 'profile' to 'profiles' (kept alias)

* Rewrite module completely

The logic is still intact, but various changes with a single goal:

- Make the module idempotent
- Implement check-mode
- Implement diff-mode
- Adapted integration tests

This fixes #18807 and #23455.

* Change casing to lowercase

* Improve the logic wrt. diff
9 years ago
Dag Wieers 0e160d5c7e Ensure exit_json returns failed = False
This is required for modules that may return a non-zero `rc` value for a
successful run, similar to #24865 for Windows fixing **win_chocolatey**.

We also disable the dependency on `rc` value only, even if `failed` was
set.

Adapted unit and integration tests to the new scheme.
Updated raw, shell, script, expect to take `rc` into account.
9 years ago
Evgeni Golov 1f78715848 apt: include arch in check for installed packages on multi-arch systems (#24846)
* apt: include arch in check for installed packages on multi-arch systems

Thanks: Stefan Löwen <stefan.loewen@gmail.com>

Fixes: #24673

* add an integration test for apt's multi-arch handling
9 years ago
Benjamin Curtis 16c2207d21 Fix return code (#23592)
The Honeybadger API returns 201 for success, not 200.
9 years ago
Will Thames 23324bdda0 Ensure `when` warning is checked before expanding (#25092)
The `when` condition templating warning should only happen
if the condition itself contains templating, not if variables
in the condition are themselves composed through templating

Before

```
vars:
  x: hello
  y: "{{ x }}"

tasks:
- debug: msg=hello
  when: y
```

would fire a warning because `y` would get expanded to `{{ x }}`.
This checks whether a warning is required prior to expansion.
9 years ago
Nathaniel Case 53837c2ab0 Assorted nxos_bgp_* fixes (#25080)
* Simplify apply_key_map

* Fix nxapi

* Clean up get_value

* Fix missing non-values

* Add test for existing bgp_af case

* Fix small issues with bgp_neighbor_af
9 years ago
Pierre-Louis Bonicoli 69edd9e0bb Avoid useless queries: use standard module hashlib
When an unchanged MD5-hashed password was used and passlib was
unavailable, an useless 'ALTER USER' query was executed.

Once this useless query avoided, the last 'SELECT' query becomes
useless too.
9 years ago
Pierre-Louis Bonicoli f59f042bb0 postgresql_user: fix doc
See: https://www.postgresql.org/docs/current/static/sql-createrole.html
9 years ago
Dag Wieers 09ba70f7c4 stat: PEP8, imports, cosmetics (#24653)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
9 years ago
Dag Wieers 8d962209f4 mod_utils/cloudengine: PEP8 compliancy (#24659)
- Make PEP8 compliant
9 years ago
Dag Wieers b3b11fbce2 get_url: PEP8, imports, cosmetics (#24676)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
9 years ago
Dag Wieers 630185cb20 ansible/executor: PEP8 compliancy (#24695)
- Make PEP8 compliant
9 years ago
Dag Wieers 51b595992b ansible/utils/: PEP8 compliancy (#24686)
- Make PEP8 compliant
9 years ago
Ganesh Nalawade d5ad3093d6 Add config_format note in junos_facts docs (#25125)
Fixes #24610

Add note to mention config_format value
dependency.
9 years ago
Ganesh Nalawade 44121352fe Update requirements in junos module docs (#25154)
Fixes #24975

Update requirements section in junos
module docs
9 years ago
Trishna Guha 31c59ad5f9 nxos_portchannel fix and unit test (#25019)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
John R Barker 24fb567c40 MAX_FILE_SIZE_FOR_DIFF (#25170) 9 years ago
Brian Coca 5d572055b3 fixed script plugin
fixes #25130
9 years ago
Brian Coca bc403934ef properlly report plugin name 9 years ago
Sander Steffann 06f76a2741 Fix IndexError when junos_config contains multiple delete lines (#25139)
* Prevent IndexError when deleting multiple lines

The old code will raise `IndexError: list assignment index out of range` when deleting multiple lines because the indexes of the original and the copy get out of sync. Solved by deleting from the high indexes first so the lower ones remain stable.

* Don't load configuration if nothing to load

Instead of sending an empty candidate config (for example because the candidate only consisted of `delete` lines, and all of them were filtered out by `filter_delete_statements`) just return. JunOS seems to get confused by empty changes, and if the candidate config is empty then it's a no-op anyway.
9 years ago
Kei Nohguchi 6dd8a4cf78 openvswitch_bridge.py: Avoid runtime error with no external_ids (#25128)
This happens when there is external_ids configured on the existing
OvS bridge, though playbook doesn't.
9 years ago
Rene Moser 9cbae80c3b cloudstack: fix pep8 cs_pod 9 years ago
Rene Moser 3ef37e88fe cloudstack: fix pep8 cs_facts 9 years ago
Rene Moser 439f0beca5 cloudstack: fix pep8 cs_domain 9 years ago
Rene Moser 1778e23fad cloudstack: fix pep8 cs_account 9 years ago
Rene Moser e3f75227bc cloudstack: fix pep8 cs_affinitygroup 9 years ago
Rene Moser 9fe3891d65 cloudstack: fix pep8 cs_cluster 9 years ago
Brian Coca fd6302bcb8 only set ansible_host if i have data 9 years ago
Brian Coca 68936d0530 updated vbox docs 9 years ago
Brian Coca 21da284f5d added ability to create vars from vbox properties 9 years ago
Brian Coca 5cd0074831 fixed virtualbox plugins, expanded docs 9 years ago
Brian Coca 46a3e6088b fixed shared 'compose' method for inventory plugins 9 years ago
Brian Coca e19109fb3d made inventory plugins list to keep config order 9 years ago
Abhijeet Kasurde 757758cd1a Remove redundant find_content_view method (#24851)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Reilly Herrewig-Pope 723c8f06ab Allow setting/unsetting BYPASSRLS Postgres role attribute (#24625)
* Allow setting/unsetting BYPASSRLS role attr

* Build valid role attrs against version

* Add integration tests
9 years ago
Esa Varemo 603366863f Correct nmcli dns example and documentation. Fix example indent (#20203)
Fixes https://github.com/ansible/ansible-modules-extras/issues/1910
and https://github.com/ansible/ansible-modules-extras/issues/1843
9 years ago
Eric Workman 797259f757 Add monitor and failover support to DNSMadeEasy module (#23434)
* Add monitor and failover support to DNSMadeEasy module

* Fix pep8 and add version_added to new parameters

* Change versions and improve descriptions
9 years ago
John R Barker 3740ad2828 Minor fixes (#25059)
1) Examples: Remove double space between "option:" and "value"
2) Documentation: Fix rendering usses
3) Documentation: Remove `required: true` to match argspec
9 years ago
Evan Kaufman ce584571e8 Fixed backup file behavior in check mode (#24899)
Fixes ansible/ansible#21523
9 years ago
Michael Eaton 8bfa19c4af New module: Add module to manage Windows Firewall (windows/win_firewall) (#23224)
* added win_firewall module and updated to use list for profiles

* removed unnecessary cast and bug/typo in ForEach block
9 years ago
Damien 6dd1fc6f34 aos_login change default port and add version check (#24752)
* Change default port for aos_login and force type to Integer

* Add check to make sure aos-pyez is present and has the right version

* Update min version requirement in doc

* Change default port in documentation as well
9 years ago
tdtrask 8c50105a6c New module: awall: add new module for alpine wall (#24748)
* awall: add new module for alpine wall

* awall: Fix is_policy_enabled bug when policy has description
9 years ago
Steven Bambling 330ad92425 New module: Add Sensu Silence module (monitoring/sensu_silence.py) (#24332)
* adding module to control management of sensu silence entries

* adding doc stanza

* fixing some issues

* more cleanup

* fixing defaults

* fixing more doc issues

* fixing examples

* more fixes
9 years ago
René Moser d5b04aa1f1 cloudstack: add check mode tests (#24908)
* cloudstack: test: cs_network_acl: add check_mode tests

* cloudstack: test: cs_pod: add check_mode tests

* cloudstack: test: cs_user: add check_mode tests

* cloudstack: test: cs_sshkeypair: add check_mode tests

* cloudstack: test: cs_project: add check_mode tests

* cloudstack: test: cs_vpc: add check_mode tests

* cloudstack: test: cs_vpn_gateway: add check_mode tests

* cloudstack: test: cs_volume: add check_mode tests

* cloudstack: test: cs_vmsnapshot: add check_mode tests

* cloudstack: test: cs_account: add check_mode tests

* cloudstack: test: cs_affinitygroup: add check_mode tests

* cloudstack: test: cs_cluster: add check_mode tests

* cloudstack: test: cs_domain: add check_mode tests

* cloudstack: test: cs_instancegroup: add check_mode tests

* cloudstack: test: cs_iso: add check_mode tests

* cloudstack: test: cs_loadbalancer_rule: add check_mode tests

* cloudstack: test: cs_portforward: add check_mode tests

* cloudstack: test: cs_resourcelimit: add check_mode tests

* cloudstack: test: cs_securitygroup: add check_mode tests

* cloudstack: test: cs_securitygroup_rule: add check_mode tests

* cloudstack: test: cs_configuration: add check_mode tests

* cloudstack: test: cs_firewall: add check_mode tests

* cloudstack: test: cs_instance: add check_mode tests

* cloudstack: query current tags from API

Fixes unexpected tags returned in check mode.
9 years ago
Brendan Almonte 2af5556901 Added autoclean/autoremove for the apt module
- Removed alias autoclean from autoremove.
- Added independent execution of apt-get autoclean/autoremove
- Continued to support --auto-remove as a flag to install/remove

Fixes #22222 #24718
9 years ago
Robin Roth 8fca263560 Refactor zypper version parsing and handling (#24056)
Fixes #23516
9 years ago
Brian Coca 110fd917d6 adding caching to script plugin 9 years ago
Brian Coca b8448fdb90 path cli options now resolve relative paths to cli 9 years ago
QijunPan 93ddfeb98a Contributing lib/ansible/modules/network/cloudengine/ce_bgp_af.py module to manage HUAWEI data center CloudEngine (#22031)
* add cd_bgp_af module

add cd_bgp_af module

* fix review issues
9 years ago
QijunPan e86279cee4 Contributing new /lib/ansible/plugins/action/ce.py module to manage HUAWEI data center CloudEngine switch (#21645)
* commit plugins action ce module

commit plugins action ce module

* update plugins/action/ce.py

update plugins/action/ce.py

* update action ce.py

update action ce.py

* fix CI issues

* update ce.py

* add ce action
9 years ago
QijunPan e9f2c080f4 Contributing lib/ansible/modules/network/cloudengine/ce_mlag_config.py module to manage HUAWEI data center CloudEngine (#22054)
* add ce_mlag_config

add ce_mlag_config

* update ce_mlag_config

update ce_mlag_config

* fix CI issues
9 years ago
QijunPan f89d12f26e Contributing lib/ansible/modules/network/cloudengine/ce_link_status.py module to manage HUAWEI data center CloudEngine (#22053)
* add ce_link_status

add ce_link_status

* upgrade ce LinkStatus

* fix CI issues
9 years ago
QijunPan 1359d39f9a Contributing lib/ansible/modules/network/cloudengine/ce_ip_interface.py module to manage HUAWEI data center CloudEngine (#22052)
* add ce_ip_interface

add ce_ip_interface

* fix CI issues
9 years ago
QijunPan 16bea773b8 Contributing lib/ansible/modules/network/cloudengine/ce_interface_ospf.py module to manage HUAWEI data center CloudEngine (#22051)
* add ce_interface_ospf

add ce_interface_ospf

* upgrade Interface OSPF

* fix CI issues
9 years ago
QijunPan 7c78a86338 Contributing lib/ansible/modules/network/cloudengine/ce_interface.py module to manage HUAWEI data center CloudEngine (#22050)
* add ce_interface

add ce_interface

* fix review issue
9 years ago
QijunPan 9aa58dd4ca Contributing lib/ansible/modules/network/cloudengine/ce_info_center_log.py module to manage HUAWEI data center CloudEngine (#22048)
* add ce_info_center_log

add ce_info_center_log

* fix review issues
9 years ago
QijunPan 2e126edb91 Contributing lib/ansible/modules/network/cloudengine/ce_info_center_global.py module to manage HUAWEI data center CloudEngine (#22047)
* add ce_info_center_global

add ce_info_center_global

* fix review issue
9 years ago
QijunPan 2b9ac69692 Contributing lib/ansible/modules/network/cloudengine/ce_info_center_debug.py module to manage HUAWEI data center CloudEngine (#22046)
* add ce_info_center_debug

add ce_info_center_debug

* fix review issues
9 years ago
QijunPan a137349522 Contributing lib/ansible/modules/network/cloudengine/ce_file_copy.py module to manage HUAWEI data center CloudEngine (#22045)
* add ce_file_copy

add ce_file_copy

* fix review issue
9 years ago
QijunPan 182d65d519 Contributing lib/ansible/modules/network/cloudengine/ce_evpn_bd_vni.py module to manage HUAWEI data center CloudEngine (#22038)
* add ce_evpn_bd_vni

add ce_evpn_bd_vni

* upgrade evpn bd vni

upgrade evpn bd vni

* fix review issue
9 years ago
Nathaniel Case 8985f7c930 nxos_static_route updates (#24992)
* Add static_route tests
* Add VRF tests
9 years ago
Abhijeet Kasurde 650b5fedb1 Handle None and Blank value for sysctl module (#24871)
Fix adds check for values provided by user for
name and value in sysctl module.
While providing name and value as in-line params,
check for blank values

Fixes #20176

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Brian Coca 7c325470e2 Pepe Ate 9 years ago
Brian Coca f23920aa5e optimize file finding 9 years ago
QijunPan deeffc61d7 Contributing lib/ansible/modules/network/cloudengine/ce_dldp_interface.py module to manage HUAWEI data center CloudEngine (#22036)
* add ce_dldp_interface

add ce_dldp_interface

* fix review issues
9 years ago
QijunPan 645eb03eeb Contributing lib/ansible/modules/network/cloudengine/ce_bgp_neighbor_af.py module to manage HUAWEI data center CloudEngine (#22033)
* add ce_bgp_neighbor_af

add ce_bgp_neighbor_af

* upgrade bgp neighbor af

upgrade bgp neighbor af

* fix review issues
9 years ago
QijunPan d43fb67583 Contributing lib/ansible/modules/network/cloudengine/ce_bgp_neighbor.py module to manage HUAWEI data center CloudEngine (#22032)
* add ce_bgp_neighbor

add ce_bgp_neighbor

* fix review issues
9 years ago
Brian Coca 85c7a7b844 added new selinux fact to clarify python lib
the selinux fact is boolean false when the library is not installed,
a dictionary/hash otherwise, but this is ambigous
added new fact so we can eventually remove the type dichtomy and normalize it as a dict
9 years ago
Abhijeet Kasurde 211d0656f8 Misc Typo correction (#25025)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Fabrizio Colonna 78fff751ab Fixed issue idempotence issue on label an name. (#23411) 9 years ago
QijunPan 7df246cebb Contributing lib/ansible/modules/network/cloudengine/ce_bgp.py module to manage HUAWEI data center CloudEngine (#22030)
* add ce_bgp module

add ce_bgp module

* upgrade ce bgp

upgrade ce bgp

* fix review issues
9 years ago
QijunPan 079590b589 Contributing lib/ansible/modules/network/cloudengine/ce_ospf_vrf.py module to manage HUAWEI data center CloudEngine (#21881)
* add ce_ospf_vrf module

add ce_ospf_vrf module

* update ce_ospf_vrf

update ce_ospf_vrf

* upgrade ospf vrf

* fix review issues

* fix CI issues
9 years ago
QijunPan eaf23d2ec4 Contributing lib/ansible/modules/network/cloudengine/ce_mtu.py module to manage HUAWEI data center CloudEngine (#21879)
* add ce_mtu module

add ce_mtu module

* update ce_mtu

update ce_mtu

* fix review issues
9 years ago
QijunPan a1578cc01a Contributing lib/ansible/modules/network/cloudengine/ce_acl_advance.py module to manage HUAWEI data center CloudEngine (#21877)
* add ce_acl_advance module

add ce_acl_advance module

* update ce_acl_advance.py

* fix review issues
9 years ago
QijunPan c0ef52cf40 Contributing lib/ansible/modules/network/cloudengine/ce_netstream_template.py module to manage HUAWEI data center CloudEngine (#21818)
* add ce_netstream_template

add ce_netstream_template

* update

* fix review issues
9 years ago
QijunPan 76b9c84cac Contributing new lib/ansible/modules/network/cloudengine/ce_config.py module to manage HUAWEI data center CloudEngine switch (#21667)
* commit ce_config

commit ce_config

* update ce_config

update ce_config

* add module ce_config

add module ce_config

* update ce_config module

update ce_config module

* update ce_config

update ce_config

* fix CI issues

* fix review issues

* fix review issues
9 years ago
Trishna Guha 307fd1b3dc nxos_vlan fix (#24973) 9 years ago
Will Thames 30fec68931 Expose variable_manager to PlayIterator
`variable_manager` is passed to the constructor of `PlayIterator`,
and then used to access the fact cache when fact gathering.
Make `_variable_manager` an attribute of the `PlayIterator` class
9 years ago
Benjamin Schwarze 5668c97850 enable su support for docker connection 9 years ago
louis 7363776174 fixes #19550 (docker_container with empty links list always restarts) 9 years ago
Konrad Klimaszewski 5f3c887c38 Docker does not output Status after pull anymore.
- Docker 1.12 on CemtoOS7 does not output status line anymore.
- Do not rely on Docker output to verify if the image was the latest.
9 years ago
Brendan Almonte b820d024fc Add alternative syntax for upgrading all installed packages via apt (#25007)
syntax: 'apt: name=* state=latest'

feature #24189
9 years ago
kkjang 5c43bd3bae Cmp python3 compat (#25008)
* Use double-quotes for expect integration tests

* Cast user input to string for expect integration tests

* Remove usage of cmp() for python3 compatibility

- Add code smell test to look for cmp usage

- Fixes #24756
9 years ago
Konrad Klimaszewski 64f63a3cac Properly handle Docker image comparison for published_ports defined as IP::PORT
- Published port defined as IP::PORT where parsed in expected.parameters
  as 0.0.0.0::PORT leading to changed==True on every playbook run.
9 years ago
bengerman 5b39368108 use two-tuples rather than dicts to allow multiple aliases for the same target 9 years ago
Nikolay Murga 3610a2457f Fixed #21464 - docker_network: TypeError with existing network (#24266)
Fixed #22530 - docker_network Failed but Overlay network created successfully on Docker swarm mode
9 years ago
bengerman cb3026f769 rebuild docker containers if there are less ports exposed 9 years ago
Guillaume Coré a5c70dc672 os_user: fix module undefined
module variable in the function is undefined. Pass it.

fix "NameError: name 'module' is not defined"
9 years ago
Brian Coca a86878c425 fixes for insserv on SLES11
fixes #23700, seems SLES11 has diff behaviour of insserv
these changes are compatible with debian/ubuntu.
9 years ago
bengerman fab2dfd1c6 typo in security opts 9 years ago
Adrian Likins ea3914f438 Show the ansible version if invoked with more than one -v (#22091)
* Show the ansible version if invoked with more than one -v

* use display.vv directly
9 years ago
Michael Sheinberg 272125023f Add working_dir to docker_container (#20044) (#24977)
* docker_container: add working_dir (fixes #20044)

Added a working directory option that will get passed with the other
docker container parameters. This is optional and addresses feature
request #20044.
9 years ago
Brian Coca e558ec19cd Solaris fact fix (#24793)
* ensure locale for solaris fact gathering

fixes issue with locale interfering with proper reading of decimals
fixes #24542

* fixed typoe
9 years ago
Brian Coca 1e1caaad06 docs update, use connection: local vs local_action 9 years ago
Tim Rupp 6ef022b034 Adds the bigip_snmp_trap module to Ansible (#24848)
This patch adds the bigip_snmp_trap module to Ansible to support managing
SNMP trap destinations on an F5 BIG-IP.
9 years ago
Brian Coca 40b222867f ensure fullpaths on vars files (#24990)
fixes #24970
now correctly picks up group/host vars inside group/host named directories
9 years ago
tdtrask 0d761e4568 Add apk available and repository (#24146)
* apk: Allow update and upgrade in same task

* apk: Add repository option

* apk: Add available option

* apk: Add stdout and stderr output where possible

* apk: Add packages return with list of changed packages
9 years ago
Abhijeet Kasurde 625ee36e06 Make os_volume idempotent (#24881)
Fix adds idempotency while deleting volume in os_volume
module

Fixes #19619

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Damien a611449cad eos_user Add documentation and example to change password (#24750)
* Add doc for password

* Add example to change user password

* Add dot at the end of the doc for password

* Add disclaimer in documentation for password

* Correct provider option name in description
9 years ago
Brian Coca 0cde9489fb removed unused import 9 years ago
Brian Coca f2e4a90c93 clarified error messages 9 years ago
John R Barker c158705c48 Fix pep8 issue
lib/ansible/plugins/vars/host_group_vars.py:74:41: E261 at least two spaces before inline comment
Caused by daef6f0911
9 years ago
Jiri Tyr 09e80a1306 Removing unecessary exception in jenkins_plugin (#24968) 9 years ago
Ganesh Nalawade 825d9df5ea Add eos changes for Python3 (#24600)
* eos python3 changes

* changes to convert response from byte to text

* Add dellos6 python3 changes
Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431

* Fix py3 prompt issue for invalid show command
* Fix review comments
* Add generic fix for error prompt in py3
* Fix CI issue
* Fix network_cli unit test failure
9 years ago
Brian Coca daef6f0911 allow empty files in host/group_vars
also remove unused import
fixes #24963
9 years ago
Alexander Teves d2032116cd Added timeout to jenkins_script POST request (#24924)
* Added timeout to jenkins_script POST request

The timeout value is passed to fetch_url to allow a custom timeout
bigger than the predefined 10 seconds.

* Added version, removed no_log
9 years ago
Ricardo Carrillo Cruz cd13b70903 Add name_servers alias to name_server vyos_system parameter (#24972)
Other modules use name_servers, we need to have a consistent interface
for the platform agnostic modules work.
9 years ago
Abhijeet Kasurde 2039abbbfa Fix typos in eos module_utils (#24966)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Brian Coca 6dc2a6ce8b fixed docs for host list examples 9 years ago
Joseph Callen 8ca836ad14 Fix script inventory plugin 9 years ago
Nathaniel Case 9737c6b90d Python3 chokes on casting int to bytes (#24952)
But if we tell the formatter that the var is a number, it works
9 years ago
kkjang daada2000c Fix expect for python 3 (#24912)
* Fix expect for python 3

- Change generator next to python 3 compatible
- Added tests for expect

* Add pexpect to integration.txt

- add pexpect library to requirements for integration tests

* Use ansible_python_interpreter in integration tests for expect

* Use double-quotes for expect integration tests

* Cast user input to string for expect integration tests

* Cast user input to string earlier in expect integration tests

* Use ansible.module_utils.six.moves input for expect integration tests

* Fix yamllint errors in the expect test

* Use cat to trigger timeout for expect integration tests

* Use realpath filter in expect integration tests
9 years ago
Dag Wieers 66355df917 module_utils/six: PEP8 compliancy
- Make PEP8 compliant
9 years ago
Brian Coca 8f97aef1a3 Transition inventory into plugins (#23001)
* draft new inventory plugin arch, yaml sample

 - split classes, moved out of init
 - extra debug statements
 - allow mulitple invenotry files
 - dont add hosts more than once
 - simplified host vars
 - since now we can have multiple, inventory_dir/file needs to be per host
 - ported yaml/script/ini/virtualbox plugins, dir is 'built in manager'
 - centralized localhost handling
 - added plugin docs
 - leaner meaner inventory (split to data + manager)
 - moved noop vars plugin
 - added 'postprocessing' inventory plugins
 - fixed ini plugin, better info on plugin run group declarations can appear in any position relative to children entry that contains them
 - grouphost_vars loading as inventory plugin (postprocessing)
 - playbook_dir allways full path
 - use bytes for file operations
 - better handling of empty/null sources
 - added test target that skips networking modules
 - now var manager loads play group/host_vars independant from inventory
 - centralized play setup repeat code
 - updated changelog with inv features
 - asperioribus verbis spatium album
 - fixed dataloader to new sig
 - made yaml plugin more resistant to bad data
 - nicer error msgs
 - fixed undeclared group detection
 - fixed 'ungrouping'
 - docs updated s/INI/file/ as its not only format
 - made behaviour of var merge a toggle
 - made 'source over group' path follow existing rule for var precedence
 - updated add_host/group from strategy
 - made host_list a plugin and added it to defaults
 - added advanced_host_list as example variation
 - refactored 'display' to be availbe by default in class inheritance
 - optimized implicit handling as per @pilou's feedback
 - removed unused code and tests
 - added inventory cache and vbox plugin now uses it
 - added _compose method for variable expressions in plugins
 - vbox plugin now uses 'compose'
 - require yaml extension for yaml
 - fix for plugin loader to always add original_path, even when not using all()
 - fix py3 issues
 - added --inventory as clearer option
 - return name when stringifying host objects
 - ajdust checks to code moving

* reworked vars and vars precedence
 - vars plugins now load group/host_vars dirs
 - precedence for host vars is now configurable
 - vars_plugins been reworked
 - removed unused vars cache
 - removed _gathered_facts as we are not keeping info in host anymore
 - cleaned up tests
 - fixed ansible-pull to work with new inventory
 - removed version added notation to please rst check
 - inventory in config relative to config
 - ensures full paths on passed inventories

* implicit localhost connection local
9 years ago
Abhijeet Kasurde 91a72ce7da Remove redundant return statement from a10_ser* (#24930)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Brian Coca 77be724913 fixed extension matching
and name is valid for all
9 years ago
Brian Coca 6fa5dbdb5c fixed pep8 issues 9 years ago
Brendan Almonte 8d8cfb5fcd Read directory_mode as 'raw' type
Reads the directory_mode param as 'raw' type to mirror the same behavior as mode.
This'll cause non-quoted values to be represented as an int, rather than a str.

Covered by 'assert recursive copied directories mode' test.

Fixes #24202
9 years ago
cheko 0dc5e8bf71 Bugfix: Directories in /etc/skel will get users ownership when home dir is created (#24943)
* Bugfix: Directories in /etc/skel will get users ownership when home dir is created
* Bugfix: Chmod works now recursive for the home dir
9 years ago
kgottholm 5240e5a230 Vertica schema fix (#24915)
* replace deprecated cmp() with custom conditional
cmp is not present in Python3 but several modules use it
Reference 24756
9 years ago
Dag Wieers 9cd6f1bf91 win_copy: Fix recursive copy (#23581)
This fixes #23559.

This should be backported to v2.3 branch too.
9 years ago
Nathaniel Case dd4a79d7d3 Clean up nxos_bgp_neighbor_af (#24890)
* Fix pep8 in bgp_neighbor_af
* Remove WARNINGS
* Rewrite command detection
* Add bgp_neighbor_af test
* Finally kill invoke
9 years ago
kgottholm 1e4b227e6f Os port fix (#24913)
* replace deprecated cmp() with custom conditional
cmp is not present in Python3 but several modules use it
Reference 24756
9 years ago
Brian Coca e0e94a4d02 reinstated to legacy
(cherry picked from commit a6484da0f11d03056b446526ef1cf78f968ae3ee)
(cherry picked from commit f23e766efa859b25557537d5098de557e85120cf)
9 years ago
Kevin Clark 04073dfa9b adds privilege escalation method for pmrun(Unix Privilege Manager 6.0) 9 years ago
Abhijeet Kasurde f9b836a901 Include error exception in AnsibleError
- Use to_native instead of str

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Trishna Guha 4066b03a4c nxos_evpn_global refactor (#24919)
* nxos_evpn_global refactor

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* ansibot told me to do this

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Matt Martz 4ac135c1b5 Fix logic surrounding copy and remote_src, remote_src is preferred, make copy action plugin only. Fixes #23591 (#24732) 9 years ago
Andrew Shewmaker f5fd32eae6 docker_container: do not split command on commas (#24900)
* docker_container: do not split command on commas

Fix issue #24430

* docker_container: document command parameter

Prior behavior was strange, splitting strings on commas
only to join them again ... replacing commas with spaces.

FYI, docker-py accepts strings or lists, using shlex.split
on strings ... splitting on spaces while respecting things
like quotes.

https://github.com/docker/docker-py/blob/master/docker/api/container.py
https://github.com/docker/docker-py/blob/master/docker/types/containers.py
https://github.com/docker/docker-py/blob/master/docker/utils/utils.py

More info regarding Dockerfile syntax for CMD strings and lists
can be found at https://docs.docker.com/engine/reference/builder/#cmd
9 years ago
pdasilva f8e47e2204 Changed assemble_from_fragments to use os.path.join (#24909)
Fixes #19437
9 years ago
Anton Kasimov 2e392f47c8 Bugfix for setting user groups on OpenBSD 9 years ago
Brian Coca e506b5da14 only set executable from shell if not set already 9 years ago
Brian Coca 55135c0825 enable run_command to use non /bin/sh shells
fixes #24169
9 years ago
kgottholm 16d522cf2c Letsencrypt fix (#24906)
* Replaced deprecated cmp with custom condition

References  #24756

* Fix PEP 08 indention
9 years ago
Rob 43fc97cad3 [cloud] Fix iam_role to compare trust policies accurately (#22936)
* Fix iam_role to compare trust policies accurately

* Better exception handling and better handling of detaching all managed policies
9 years ago
Tim Rupp 4fc40304d5 Adds the bigip_command module to Ansible (#24850)
This patch adds the bigip_command module to Ansible to support arbitrary
tmsh command to a F5 BIG-IP.
9 years ago
pdasilva 45e4b8f97a Converted the response from _get_url_data using to_native (#24901)
Updated the exception message to no longer use e.message.
Fixes #24526
9 years ago
Ricardo Carrillo Cruz b12beca3ed Refactos nxos_ip_interface module (#24885) 9 years ago
Abhijeet Kasurde 7fba31677e Remove redeclared module variable
Fix removes redeclared module variable defined
previously without any usage.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Trishna Guha 9fb9c00092 Remove deprecation for username/password eos_user, nxos_user and Doc update (#24880)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
glassresistor 4a718645e8 fixed minor py3 compliance issue in ec2_vpn_nacl (#24758)
wrapped a dict.items() with list
9 years ago
Ganesh Nalawade 7563d93901 Add nxos changes for Python3 (#24602)
* Add nxos changes for Python3

Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431

* Fix CI issues

* Fix review comment

Replace surrogate_or_strict with
surrogate_then_replace as per review
comment os PR #24601
9 years ago
Michael b65ebf3519 Fixed import of urlencode and pathname2url from urllib for python3 (#24424) 9 years ago
Phil Huang 98a8b967d2 Fixed wrong variable in cumulus network module (#23950)
Signed-off-by: Phil Huang <phil_huang@edge-core.com>
9 years ago
Trishna Guha 1e5a0982b9 Fix nxos_hsrp and add unit test (#24770)
* nxos_hsrp fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* unit test nxos_hsrp

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* ansibot told me to do this

* revert apply_key_map and simplify method
9 years ago
Trishna Guha 4782a4e62f Make host required field and minor refactor (#24534)
* Make host required field and minor refactor

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* ansibot pep8 legacy file

* example doc update
9 years ago
QijunPan 68f38c5e9d Contributing lib/ansible/modules/network/cloudengine/ce_info_center_trap.py module to manage HUAWEI data center CloudEngine (#22049)
* add ce_info_center_trap

add ce_info_center_trap

* upgrade Info Center Trap

* fix CI issues
9 years ago
QijunPan 8086f12ddb Contributing lib/ansible/modules/network/cloudengine/ce_facts.py module to manage HUAWEI data center CloudEngine (#22044)
* add ce_facts

add ce_facts

* fix CI issues
9 years ago
QijunPan 35bc99156a Contributing lib/ansible/modules/network/cloudengine/ce_evpn_bgp_rr.py module to manage HUAWEI data center CloudEngine (#22043)
* add ce_evpn_bgp_rr

add ce_evpn_bgp_rr

* fix CI issues
9 years ago
QijunPan 4961778732 Contributing lib/ansible/modules/network/cloudengine/ce_eth_trunk.py module to manage HUAWEI data center CloudEngine (#22037)
* add ce_eth_trunk

add ce_eth_trunk

* fix CI issues
9 years ago
QijunPan a54c3398e1 Contributing lib/ansible/modules/network/cloudengine/ce_dldp.py module to manage HUAWEI data center CloudEngine (#22035)
* add ce_dldp module

add ce_dldp module

* fix CI issues
9 years ago
QijunPan 9f297ff0c6 Contributing lib/ansible/modules/network/cloudengine/ce_acl_interface.py module to manage HUAWEI data center CloudEngine (#21878)
* add ce_acl_interface module

add ce_acl_interface module

* update ce_acl_interface.py

* fix CI issues
9 years ago
QijunPan b5805d5aa3 Contributing lib/ansible/modules/network/cloudengine/ce_aaa_server.py module to manage HUAWEI data center CloudEngine (#21757)
* commit ce_aaa_server module

commit ce_aaa_server module

* update ce_aaa_server.py

update ce_aaa_server.py

* update ce_aaa_server module

* upgrade ce aaa server

upgrade ce aaa server

* fix CI issues
9 years ago
QijunPan 365f816e46 Contributing lib/ansible/modules/network/cloudengine/ce_evpn_bgp.py module to manage HUAWEI data center CloudEngine (#21759)
* commit ce_evpn_bgp.py

commit ce_evpn_bgp.py

* update ce_evpn_bgp

update ce_evpn_bgp

* fix CI issues
9 years ago
QijunPan ea0060ba64 Contributing lib/ansible/modules/network/cloudengine/ce_netstream_global.py module to manage HUAWEI data center CloudEngine (#21817)
* add ce_netstream_global module

add ce_netstream_global module

* update ce_netstream_global

update ce_netstream_global

* fix CI issues

* fix pep8 error
9 years ago
QijunPan 4ef5177e62 Contributing lib/ansible/modules/network/cloudengine/ce_netstream_export.py module to manage HUAWEI data center CloudEngine (#21816)
* add ce_netstrem_export module

add ce_netstrem_export module

* update ce_netstream_export

update ce_netstream_export

* fix CI issues
9 years ago
QijunPan c291e5d895 Contributing lib/ansible/modules/network/cloudengine/ce_acl.py module to manage HUAWEI data center CloudEngine (#21815)
* add ce_acl module

add ce_acl module

* update ce_acl.py

update ce_acl.py

* fix CI issues
9 years ago
QijunPan e2cd0ee18b Contributing lib/ansible/modules/network/cloudengine/ce_netstream_aging.py module to manage HUAWEI data center CloudEngine (#21761)
* commit ce_netstream_aging

commit ce_netstream_aging

* update ce_netstream_aging

update ce_netstream_aging

* update ce_netstream_aging

update ce_netstream_aging

* fix CI issues
9 years ago
QijunPan 594dcbcaa2 Contributing lib/ansible/modules/network/cloudengine/ce_evpn_global.py module to manage HUAWEI data center CloudEngine (#21760)
* commit ce_evpn_global

commit ce_evpn_global

* update ce_evpn_global

update ce_evpn_global

* fix CI issues
9 years ago
QijunPan 04d5a80f96 Contributing lib/ansible/modules/network/cloudengine/ce_aaa_server_host.py module to manage HUAWEI data center CloudEngine (#21758)
* commit ce_aaa_server_host.py

commit ce_aaa_server_host.py

* update ce_aaa_server_host.py

* fix CI issues
9 years ago
QijunPan 0fe0538a43 Contributing lib/ansible/modules/network/cloudengine/ce_command.py module to manage HUAWEI data center CloudEngine (#21669)
* update ce_command.py

update ce_command.py

* update ce_command

update ce_command

* update ce_command.py

update ce_command.py

* update ce_command module

update ce_command module

* update ce_command module

update ce_command module
9 years ago
Sergey Bondarev f39fa7fd22 fix from https://github.com/ansible/ansible/pull/23001 9 years ago
Sergey Bondarev 72fc9f5cbe fix deprecation import ansible.vars.unsafe_proxy to ansible.utils.unsafe_proxy 9 years ago
Niall Donegan 29fb573fd6 Tiny Typo Fix (#24828) 9 years ago
Abhijeet Kasurde d4857ed6c4 Add Password for login method in github_release (#23661)
Fix allows user to specify username and password for
using github_release to perform various operations

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
QijunPan 6352a54f19 Contributing new lib/ansible/plugins/terminal/ce.py module to manage HUAWEI data center CloudEngine switch (#21653)
* commit plugins terminal ce.py module

commit plugins terminal ce.py module

* update plugins/terminal/ce.py

update plugins/terminal/ce.py

* deal with pep8 error
9 years ago
QijunPan ad85f2b483 Contributing new /lib/ansible/plugins/action/ce_template.py module to manage HUAWEI data center CloudEngine switch (#21649)
* commit plugins action ce_template.py

commit plugins action ce_template.py

* deal with pep8 error
9 years ago
QijunPan 627ac2493d commit plugins action ce_config module. (#21648)
commit plugins action ce_config module.
9 years ago
Gaurav Rastogi 32b4eab3dc Avi module to setup GSLB Geo DB profile. (#24812) 9 years ago
Gaurav Rastogi ea6955109b New module to setup HTTP Policy set objects (#24813) 9 years ago
Gaurav Rastogi 1960aa8d96 New module to setup GSLB Application persistence profile (#24814) 9 years ago
Gaurav Rastogi e90d63edd1 New Avi Module for setup of network security policy (#24815) 9 years ago
Gaurav Rastogi d6e2943c97 New Avi Module to setup virtualservice datascripts (#24818) 9 years ago
Gaurav Rastogi b26bc5be88 New Avi Module to setup DNS policies. (#24819) 9 years ago
Gaurav Rastogi 788e2efe2a New Avi Module to setup various controller properties. (#24811) 9 years ago
Gaurav Rastogi fd94b5b20d New Avi Module to setup SE properties. (#24816) 9 years ago
Gaurav Rastogi b44f3cbcf6 New Avi Module to setup user account profile settings. (#24817)
* New Avi Module to setup user account profile settings.

* removed blank line failing pep8
9 years ago
Gaurav Rastogi 61882cfdfa New Avi Module to create VIP objects that can be used in shared VIP and multiple VIP use cases for application deployment. (#24809) 9 years ago
QijunPan d53136cf1b Contributing lib/ansible/modules/network/cloudengine/ce_ntp_auth.py module to manage HUAWEI data center CloudEngine (#22058)
* add ce_ntp_auth

add ce_ntp_auth

* fix review issues
9 years ago
QijunPan 21b778ddb0 Contributing lib/ansible/modules/network/cloudengine/ce_ospf.py module to manage HUAWEI data center CloudEngine (#22059)
* add ce_ospf

add ce_ospf

* upgrade OSPF

* fix review issues.
9 years ago
QijunPan f8193622d6 Contributing lib/ansible/modules/network/cloudengine/ce_reboot.py module to manage HUAWEI data center CloudEngine (#22060)
* add ce_reboot

add ce_reboot

* fix review issues.

* update requirements.
9 years ago
QijunPan 7353b357e9 Contributing lib/ansible/modules/network/cloudengine/ce_rollback.py module to manage HUAWEI data center CloudEngine (#22061)
* add ce_rollback

add ce_rollback

* fix review issues
9 years ago
QijunPan 954906c143 Contributing lib/ansible/modules/network/cloudengine/ce_snmp_location.py module to manage HUAWEI data center CloudEngine (#22065)
* add ce_snmp_location.py

* fix review issues
9 years ago
QijunPan 9b20d6ac34 Contributing lib/ansible/modules/network/cloudengine/ce_sflow.py module to manage HUAWEI data center CloudEngine (#22062)
* add ce_sflow

add ce_sflow

* fix review issue
9 years ago
QijunPan 3927341872 Contributing lib/ansible/modules/network/cloudengine/ce_snmp_target_host.py module to manage HUAWEI data center CloudEngine (#22066)
* add ce_snmp_target_host

* fix review issues.
9 years ago
QijunPan dda49ca7c9 Contributing lib/ansible/modules/network/cloudengine/ce_snmp_traps.py module to manage HUAWEI data center CloudEngine (#22067)
* add ce-snmp_traps

* fix review issues

* fix pep8 error
9 years ago
QijunPan 0172522406 Contributing lib/ansible/modules/network/cloudengine/ce_snmp_user.py module to manage HUAWEI data center CloudEngine (#22069)
* add ce_snmp_user.py

* upgrade snmp user

* fix review issues

* fix review issue

* fix CI issue

* fix CI issue
9 years ago
QijunPan 45fda73653 Contributing lib/ansible/modules/network/cloudengine/ce_vxlan_global.py module to manage HUAWEI data center CloudEngine (#22082)
* add ce_vxlan_global.py

* upgrade Vxlan Global

* metadata_version update
9 years ago
QijunPan 1c0d74339a Contributing lib/ansible/modules/network/cloudengine/ce_vxlan_tunnel.py module to manage HUAWEI data center CloudEngine (#22083)
* add ce_vxlan_tunnel.py

* update

* upgrade Vxlan Tunnel

* metadata_version update

* deal with review issue.

* deal with review issue
9 years ago
Michael Scherer f88c2b8ac5 Fix wrongly named variable, introduced by error on ac1017b7ad (#24795)
This broke ansible-playbook -D for template module
9 years ago
Trishna Guha 21e28a431b Remove unused method from nxos_ospf (#24820) 9 years ago
Trishna Guha 998305a493 nxos_ospf_vrf fix and unittest (#24495) 9 years ago
Matt Martz 1eed6c5b3d Convert some more base64 strings to text for winrm, to support async and become (#24796) 9 years ago
Lee Shakespeare def76a3c3b Lookup credential id and pass in credential rather than scm_credential (#24624)
* Lookup credential id and pass in credential rather than scm_credential

* Change the excepting handling to catch missing credentials

* Make error messages for not found lookups more useful
9 years ago
QijunPan 1487ec0ea2 Contributing lib/ansible/modules/network/cloudengine/ce_vxlan_gateway.py module to manage HUAWEI data center CloudEngine (#22081)
* add ce_vxlan_gateway.py

* metadata_version update

* deal review issues
9 years ago
QijunPan b20c550426 Contributing lib/ansible/modules/network/cloudengine/ce_vxlan_arp.py module to manage HUAWEI data center CloudEngine (#22080)
* add ce_vxlan_arp.py

* metadata_version update

* deal review issues
9 years ago
QijunPan a8475f6ef5 Contributing lib/ansible/modules/network/cloudengine/ce_vrf_interface.py module to manage HUAWEI data center CloudEngine (#22079)
* add ce_vrf_interface.py

* metadata_version update

* fix code review issues

* fix ci_verified

* tab to space
9 years ago
QijunPan cb75f2a43d Contributing lib/ansible/modules/network/cloudengine/ce_vlan.py module to manage HUAWEI data center CloudEngine (#22076)
* add ce_vlan.py

* metadata_version update

* fix review issues

* Update ce_vlan.py

* fix check issue

required_if not work well when the option value is "not None"
9 years ago
QijunPan fb54e47491 Contributing lib/ansible/modules/network/cloudengine/ce_switchport.py module to manage HUAWEI data center CloudEngine (#22075)
* add ce_switchport.py

* metadata_version update

* fix review issues

* fix review issue

* fix CI issue
9 years ago
QijunPan a1cbecd23c Contributing lib/ansible/modules/network/cloudengine/ce_stp.py module to manage HUAWEI data center CloudEngine (#22073)
* add ce-stp

* fix review issues

* fix CI issues
9 years ago
QijunPan 55d0f97ace Contributing lib/ansible/modules/network/cloudengine/ce_snmp_contact.py module to manage HUAWEI data center CloudEngine (#22064)
* add ce_snmp_connect

add ce_snmp_connect

* fix review issues
9 years ago
QijunPan f5fc565721 Contributing lib/ansible/modules/network/cloudengine/ce_startup.py module to manage HUAWEI data center CloudEngine (#22070)
* add ce_startup

add ce_startup

* fix review issues
9 years ago
Lars Larsson 53baa36a8b [cloud][GCE] fix bug in persistent disk snapshot naming (#23218)
snapshot_name keeps on prepending the device_name to the same string if more than one device.
result is: disk3-disk2-disk1-MySnapshot
9 years ago
Tim Rupp c1397626fc Adds the bigip_user module to Ansible (#24753)
The patch adds the bigip_user module to Ansible to support managing
users on an F5 BIG-IP.

Unit tests are provided. Integration tests can be found here

  * https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_user.yaml
  * https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_user/tasks
9 years ago
Matt Davis 569377e951 add segfault detection to TQM
* prevents indefinite hangs when a worker segfaults
9 years ago
QijunPan ba3a0e8e34 Contributing lib/ansible/modules/network/cloudengine/ce_snmp_community.py module to manage HUAWEI data center CloudEngine (#22063)
* add ce_snmp_community

add ce_snmp_community

* upgrade snmp community

* fix review issues
9 years ago
Tom Melendez 13f2d9222f [GCP] Global Load Balancer Integration Test (#24704)
* Revert to using url_map internal to the module to allow parameter generation to work. module parameter is still url_map_name.

* [GCP] Cross Region Load Balancer Integration Test
9 years ago
Dag Wieers c4a7f64c02 ansible/galaxy: PEP8 compliancy (#24696)
- Make PEP8 compliant
9 years ago
Dag Wieers 6f6bdf7914 ansible/parsing: PEP8 compliancy (#24701)
- Make PEP8 compliant
9 years ago
Tom Melendez c99c3b2b5d [GCP] Healthcheck module (#24564)
* [GCP] Healthcheck module

* fix return YAML block

* removed update_ return value; removed python26 check; typos and docs updates

* doc fix

* Updated int test for no-update conditions

* added filter_gcp_fields test

* fixed bug in update where dictionary wasn't built correctly and port was not being set.

* added default values to documentation block
9 years ago
John R Barker ed2f13b3db Fix more module returns (#24782)
* Correct return structure

* typo
9 years ago
Tom Melendez 3fbf3b51ff [GCP] remove ansible.utils.display for deprecations (#24738)
* [GCP] remove ansible.utils.display for deprecations, use module.deprecate instead.

* removed test file from legacy files
9 years ago
Dylan Silva bba4549b43 Downgraded more modules from Curated to Community (#24751) 9 years ago
Will Thames 5741712a09 ec2_group_facts tag list should have case preserved (#24760)
Tags should retain case, and should not be snake cased.
Easiest way to do this is to snake before converting tag
list as while that affects the keys of the boto3 tag lists,
it doesn't affect the values. Need to use `tag_value_key_name`
and `tag_name_key_name` following recent change to
`boto3_tag_list_to_ansible_dict`, which used to handle both
`key`/`Key` and `value`/`Value`
9 years ago
Trishna Guha feafae70b5 Fix transport getting set to None when not set explicitly (#24769)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Dag Wieers ac1017b7ad ansible/constants: PEP8 compliancy (#24692)
- Make PEP8 compliant
9 years ago
Dag Wieers 37bfca23c9 slurp: PEP8, imports, cosmetics (#24677)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
9 years ago
Dag Wieers de907a8e36 ansible/compat/: PEP8 compliancy (#24689)
- Make PEP8 compliant
9 years ago
Dag Wieers ac27c54c2e ansible/errors: PEP8 compliancy (#24693)
- Make PEP8 compliant
9 years ago
Dag Wieers 7a5e46c732 aix_lvol: PEP8, imports, cosmetics (#24717)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
9 years ago
James Cammarata 5728bd9065 Merge branch 'modules_issue_1568' of https://github.com/ajdecon/ansible into ajdecon-modules_issue_1568 9 years ago
Dag Wieers 6b7d669a2b win_psexec: Change default for -nobanner (#24739)
* win_psexec: Change default for -nobanner

* Update documentation too
9 years ago
Abhijeet Kasurde 2f955e7da8 Save commit_timeout as string in junos_config (#24761)
Fix converts commit_timeout to string as
Elementree.SubElement requires text as string.

Fixes #24611

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Martz e7d8ebf080 Base changes required to allow winrm to work on py3 (#24744) 9 years ago
James Cammarata f217dae938 Also check the iterator for failed host status in linear strategy
When only looking at the failed state of the TaskResult, certain failures
cause the linear strategy to fail out sooner than it should and not execute
the always portion of blocks.

Fixes #24301
9 years ago
Lee Shakespeare e2c08edfcc Tower user remove organization (#24544)
* Remove organization field from the tower_user module re: issue #24510

* Fix trailing spaces.

* Fixes for Shippable errors, pep8

* Remove a random inserted space.
9 years ago
QijunPan 40c2b8cac9 Contributing new lib/ansible/module_utils/ce.py module to manage HUAWEI data center CloudEngine switch (#21666)
* add module_utils ce.py

add module_utils ce.py

* update module_utils/ce.py to support netconf

update module_utils/ce.py to support netconf

* update module_utils ce.py

update module_utils ce.py
9 years ago
Monty Taylor 6e85ac2ba6 Deal with server.security_groups being None (#24742)
It shouldn't happen - but there is a bug in shade where it can be None
but should be [] instead. Work around it.

Fixes #24675
9 years ago
Jonathan Mainguy 3ad09604f2 add catapult as a sms /mms api notification provider. (#23052) 9 years ago
Ganesh Nalawade 38eeeb755d Add ios changes for Python3 (#24601)
* Add ios changes for Python3

Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431
pep8 fixes

* Fix CI issues

* Fix review comment
9 years ago
Jose Armesto 3eb8142a41 [cloud] Fixes #24578: ROLLBACK_COMPLETE is a failure state for CloudFormation module (#24596)
* ROLLBACK_COMPLETE is a failure state

Fixes #24578

* Adding AWS documentation on Stack status

* Fixed comment
9 years ago
Andrea Tosatto b230b03045 [cloud] Rebase and fix ENI lookup logic to only hit unique ENIs (rebase of #20039) (#23404)
* fix eni lookup logic to update them only when univocally specified (Fixes #19972)

remove redundant eni lookup

* Rename the univocally_find_eni method to uniquely_find_eni

* Idempotency logic minor fixes

* Fixing pep8 reported issues

* Adding a required_together constraint for instance_id and device_index

* Fix ec2_eni private_ip_address matching

* Adding an example of matching via subnet_id and private_ip_address

* Removing the required_together and subnet_id constraints

* Addding some notes to explain the module assumptions

* Implementing Ryan's wording proposal
9 years ago
Abhijeet Kasurde ad41d0e88f Pep8 fixes for parted (#24713)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Trishna Guha 8937246f8f Fix nxos ospf and Unit test (#24613)
* nxos_ospf fixes refactor

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* unit test nxos_ospf

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
QijunPan 05d8b64cc9 Contributing lib/ansible/modules/network/cloudengine/ce_vrf_af.py module to manage HUAWEI data center CloudEngine (#22078)
* add ce_vrf_af.py

* upgrade ce vrf af

* metadata_version update

* fix review issues

* fix CI issues
9 years ago
QijunPan a8570db624 Contributing lib/ansible/modules/network/cloudengine/ce_ntp.py module to manage HUAWEI data center CloudEngine (#22057)
* add ce_ntp

add ce_ntp

* fix review issues

* deal pep8 issues
9 years ago
QijunPan 7722b95dd4 Contributing lib/ansible/modules/network/cloudengine/ce_static_route.py module to manage HUAWEI data center CloudEngine (#22072)
* add ce_static_route

add ce_static_route

* upgrade Static Route

* fix review issues

* fix CI issues

* fix CI issue

* fix CI issue
9 years ago
QijunPan d7e6a6bff3 Contributing lib/ansible/modules/network/cloudengine/ce_vrf.py module to manage HUAWEI data center CloudEngine (#22077)
* add ce_vrf.py

* update ce_vrf.py

update ce_vrf.py

* upgrade vrf

* metadata_version update

* fix review issues

* fix RETURN doc
9 years ago
QijunPan 7bb64bb9a4 Contributing lib/ansible/modules/network/cloudengine/ce_vxlan_vap.py module to manage HUAWEI data center CloudEngine (#22084)
* add ce_vxlan_vap.py

* metadata version upate

* fix fail_json msg
9 years ago
QijunPan 45f05ca8aa Contributing lib/ansible/modules/network/cloudengine/ce_mlag_interface.py module to manage HUAWEI data center CloudEngine (#22055)
* add ce_mlag_interface

add ce_mlag_interface

* upgrade ce mlag interface

* fix CI issues
9 years ago
QijunPan fbeec055a4 Contributing lib/ansible/modules/network/cloudengine/ce_netconf.py module to manage HUAWEI data center CloudEngine (#22056)
* add ce_netconf

add ce_netconf

* update

* upgrade netconf

* fix review issues

* fix review issue.
9 years ago
Ricardo Carrillo Cruz 14b1405ee4 Fix conn_type assignment (#24697)
This should be a single equal, not a double-one
9 years ago
Brandon Davidson 0210a1a7dc [cloud] Add vpc_id option for ec2_lc security group lookups by name (#24459) 9 years ago
Daniel Shepherd cf4806d29d [cloud] Update AWS CloudTrail module to use boto3 and updated/new CT parameters (#22884)
remove cloudtrail.py from legacy-files as it passes pep8 tests now

update return values to use snake case per coding guidelines

update boto3 exception handling to use method outlined in coding guidelines

update parameter spec and return value code per PR code review
9 years ago
Tom Melendez 07c55b855a [GCP] Forwarding Rule module (#24627)
* [GCP] Forwarding Rule module

* pep8 formatting for tests

* remove py26 check and updated_ key; docs and typo fixes
9 years ago
Tom Melendez 29decad261 [GCP] Target Proxy Module (#24527)
* [GCP] Target Proxy Module

* pep8 fix

* updates from review: removed 26 check, fix get method, typos, renamed url_map to url_map_name

* removed blank line
9 years ago
Ganesh Nalawade e52d06b401 Add dellos9 changes for Python3 (#24607)
* Add dellos9 changes for Python3

Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431

* Minor changes
9 years ago
Ganesh Nalawade a883635aeb Add dellos6 changes for Python3 (#24606)
Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431
9 years ago
Ganesh Nalawade 442df927f1 Add dellos10 changes for python3 (#24608)
Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431
9 years ago
Ganesh Nalawade a3c689bf0d Add sros changes for Python3 (#24604)
* Add sros changes for Python3

Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431

Code cleanup
pep8 fixes

* Fix CI issue
9 years ago
Ganesh Nalawade 16d610c1de Add vyos changes for Python3 (#24603)
* Add vyos changes for Python3

Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431
pep8 fixes

* Fix CI issues
9 years ago
Ganesh Nalawade f4e1dc503b Add iosxr changes for Python3 (#24605)
* Add iosxr changes for Python3

Make `execute_command` arguments and its
return value complaint to PY3 changes
made in PR #24431

* Fix CI issue
9 years ago
Dag Wieers 4f29662a9e ansible/vars/: PEP8 compliancy (#24685)
- Make PEP8 compliant
9 years ago
jctanner bfc551b3f8 Add vmware_guest_find.py module (#24260)
* Add vmware_guest_find.py module

* Fixup linter errors

* Add missing empty line
9 years ago
Lemar Carthens ef13f0f389 vmware_guest: Fix VM creation when adding a network device without a MAC address (#24138)
* vmware_guest: Fix VM creation when adding a network device without a MAC address

* Provide python2.4 compatibility
9 years ago
James Cammarata e5cd675b38 Use delegated vars for the delegated host name
In _process_pending_results (strategy/__init__.py), we were using the delegate_to
field directly from the original task, which was not being templated correctly.
As an alternate to #23599, this patch instead pulls the host name out of the delegated
vars passed back in the task result dictionary to avoid having to re-template things.

Fixes #23599
Fixes #20508
9 years ago
Will Thames 9a958da57e [cloud] Make ec2_vpc_nat_gateway results consistent (#24042)
Ensure newly created NAT gateways get converted to snake dict
Remove custom code, and associated test, for generating snake
dict and use `camel_dict_to_snake_dict`
Make use of `required_if` rather than bespoke parameter checks
Remove ec2_vpc_nat_gateway from pep8 legacy files list
9 years ago
kwerey 668092e95a [cloud] Add support for AWS China to elasticache_subnet_group role (#24286) 9 years ago
kwerey 6f66e88bd8 [cloud] Use boto connect_to_region so Elasticache works in AWS China (#24250) 9 years ago
Will Thames 6e13e3918f [cloud] Update VPC configuration for existing lambda (#24368)
If a lambda exists but does not have a VPC configuration,
add the VPC configuration when it's present in the ansible
parameters.

Prior to this change, setting VPC configuration on a lambda
that did not have any VPC configuration would ignore that config.
9 years ago
Ondra Machacek 4d890c1e9f cloud: ovirt change URL in documentation (#24438) 9 years ago
Ganesh Nalawade f5d865a208 Fixes #24251 save config only if it is changed (#24345)
* Fixes #24251 save config only if it is changed

Save to startup configuration only when it is different
from running configuration.

* Fix unit test issue
9 years ago
Dag Wieers c6533d4da9 utils/unicode: PEP8 compliancy (#24668)
- Make PEP8 compliant
9 years ago
Nathaniel Case f240ba6b60 nxos_bgp_neighbor cleanup (#24446) 9 years ago
Nathaniel Case ea2569db92 Workaround for unicast RPF check (#24519) 9 years ago
Dag Wieers d07f18fbb9 module_utils/rax: Small parameter cleanup (#24664)
Nothing really fancy.

- Removing boolean choices
- Use path-type for credentials
9 years ago
Lujeni a3a0742ce5 Add new aws module - iam_cert_facts (#24451) 9 years ago
Jimmy Conner 2380e50408 vmware_guest: Add support for Linked Clones (#23284)
* vmware_guest: Add support for Linked Clones

* Resolve PEP8 Issues

* Change snapshot_name to snapshot_src

* Add additional option 'snapshot_linked' to specify whether to use a linked clone or not

* Changed snapshot_linked parameter to "linked_clone"

* Remove unnecessary conditional
9 years ago
Dag Wieers 61d68275e8 module_utils/asa: PEP8 compliancy (#24655)
- Make PEP8 compliant
9 years ago
Justin Menga 8dae2ea869 Cast CloudFormation parameter values to string - fixes #23593 (#24182) 9 years ago
Abhijeet Kasurde e9672748cc Add archive option in git plugin (#23332)
* Add archive option in git plugin

This fix will add archive option in git plugin

Fixes https://github.com/ansible/ansible/issues/22943

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Update code as per code review comments

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Monty Taylor 91969b8c67 Actually protect against use_default_subnetpool
We have a protection against a user setting use_default_subnetpool in
their playbook - but then we sure do pass the kwarg anyway. Maybe let's
not do that.
9 years ago
Abhijeet Kasurde 764b4b20ec Fix UnboundLocalError in basic.py
* Fix for UnboundLocalError while accessing deprecations
  in result
* Add Unit test

Fixes #24592

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ryan S. Brown 6141818110 [cloud] Document stage option on `serverless` module 9 years ago
René Moser 3ca3163af1 cloudstack: add new module cs_network_acl (#24609) 9 years ago
Jonathan Davila 6410e13903 Fix bug in iam_role (#22618) 9 years ago
Mohammed Naser f9b4499082 Set facts type to dict
With newer versions of ansible, module arguments are assumed to
be strings unless otherwise specified.  Our 'facts' argument is
expected to be a dictionary, so tell ansible that.

Without this, the argument will arrive as a string and be written
to the facter file inside string quotes.  Facter will produce the
following error:

  undefined method `each' for #<String:0x000000016ee640>

This was originally fixed and found in the Ansible Puppet role which
is maintained by the OpenStack infrastructure team.

8d0f0bfd0a
9 years ago
René Moser 19e7abb971 cloudstack: return known used resources in fail_json (#24575) 9 years ago
Toshio Kuratomi 84a59e472b Be explicit about pickle protocol and encoding (#24454)
On Python3 and Python2 use pickle slightly differently so we need to be
explicit about some things.

If pickles could be shared between python2 and python3, as in
ansible-connection and the pickle cache, we need to specify the protocol
to use when dumping and the encoding to use for byte strings when
loading.

The dumping protocol needs to be no higher than 2 as python-2 only
supports up to protocol 2.  The encoding should usually be 'bytes' so
that python2 str type becomes python3 bytes type.  However, doing this
means that we must make sure that the objects being serialized properly
make their strings into text strings except when they're supposed to be
bytes.  If strings are improperly byte strings, they may cause
tracebacks on the receiving end
9 years ago
Sloane Hertel 822fcc566e [cloud] Stop ec2_group module from authorizing duplicate rules (#24528) 9 years ago
Kevin Howell 65f0668475 Add pool_ids option to redhat_subscription (#23266) 9 years ago
Chris Alfonso 8c0faa2ebf Revert "[WIP]Fortios address group" (#24549)
* Revert "Add check for processor_core value"

This reverts commit 8ad182059d.

* Revert "Fix for persistent connection plugin on Python3 (#24431)"

This reverts commit d834412ead.

* Revert "removing folded style formatting for synopsis (#22746)"

This reverts commit e539726543.

* Revert "[WIP]Fortios address group (#21831)"

This reverts commit f2dbf512cb.
9 years ago
Abhijeet Kasurde 8ad182059d Add check for processor_core value
Fixes #21893

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi d834412ead Fix for persistent connection plugin on Python3 (#24431)
Fix for persistent connection plugin on Python3.  Note that fixes are also needed to each terminal plugin.  This PR only fixes the ios terminal (as proof that this approach is workable.)  Future PRs can address the other terminal types.

* On Python3, pickle needs to work with byte strings, not text strings.
* Set the pickle protocol version to 0 because we're using a pty to feed data to the connection plugin.  A pty can't have control characters.  So we have to send ascii only.  That means
only using protocol=0 for pickling the data.
* ansible-connection isn't being used with py3 in the bug but it needs
several changes to work with python3.
* In python3, closing the pty too early causes no data to be sent.  So
leave stdin open until after we finish with the ansible-connection
process.
* Fix typo using traceback.format_exc()
* Cleanup unnecessary StringIO, BytesIO, and to_bytes calls
* Modify the network_cli and terminal plugins for py3 compat.  Lots of mixing of text and byte strings that needs to be straightened out to be compatible with python3
* Documentation for the bytes<=>text strategy for terminal plugins
* Update unittests for more bytes-oriented internals

Fixes #24355
9 years ago
Eric Beahan e539726543 removing folded style formatting for synopsis (#22746) 9 years ago
Benjamin Jolivot f2dbf512cb [WIP]Fortios address group (#21831)
* New module fortios_address_group

* Fix issue when fortigate don't contain any address group

* Add alias & change member from str to list type

* Fix pep8

* Fix aliases format in doc

* Fix pep8

* Remove duplicate arg spec with module_utils/fortios.py

* Change string format for better compat + better exception catching + cosmetic changes

* Use set, specify exception, RE pattern one time...

* fix pep8
9 years ago
Ilya Drey 62b8813873 Improving nxos_ip_interface module (#21353)
* Improving of nxos_ip_interface module

Added features:

  * Route tags for an IP address at interface level with 'tag' option
  * Support of IPv4 secondary addresses if option 'allow_secondary' is
true (false by default). If option 'allow_secondary' is true primary
IPv4 address will be replaced

All features support NXAPI and CLI transport, but only with text/raw
output. Currently not possible to get route tags for secondary IPv4/IPv6
addresses from JSON output.

Other changes:
  * Module return state 'changed' only when configuration commands were
executed
  * Module result includes multiple prefixes if IPv4 addresses were
found

* Fix PEP8 issues

* Addition fix of PEP8 issues

* Remove unused variable from main()

* Fix "proposed" sample in RETURN variable

* Fix "existing" sample in RETURN variable

* Update RETURN variable

Add 'secondary' for every element of 'addresses' list.

* Restore old version number

* Added exception when ipaddress module is imported

* DOCUMENTATION string was updated

  * Added 'version_added' for new features
  * Added 'requirements' for module

* Added compatibility with latest commit in devel branch

* DOCUMENTATION was fixed
* Improve changes of route tag for existing ip addresses
* Added compatibility with core code

* Fixed mistypes in the DOCUMENTATION variable

* argument_spec fixed

allow_secondary argument type was changed according to allowed choices.
9 years ago
Gabriele 78ed0cadea Fixing nxos_ntp (#20651)
* Fixing nxos_ntp

* Fixing style issues
9 years ago
Jan-Piet Mens 0e0e5097a9 Optionally return raw data from URL lookup using split_lines=False 9 years ago
Sloane Hertel 91b87d4cbb dict.values() was a list python2 but in python3 it's a view (#24504) 9 years ago
Kai Xia(夏恺) 97b0448f0b fix typo. (#24531)
Signed-off-by: Kai Xia(夏恺) <xiaket@gmail.com>
9 years ago
Toshio Kuratomi 548cacdf6a Fix template not showing a diff with a directory
Template can take a directory as the destination.  When that's the case,
we need to diff between the source and the file inside of the directory.
That happened when the directory was specified with a trailing slash but
not when it was specified on its own.  This change fixes that.

Fixes #24413
9 years ago
Toshio Kuratomi 16325f6f15 Fix pam_limits writing text to a file opened in binary mode
Fixes #24392
9 years ago
rodolfojcj a47fbba8ae Little documentation fix (#24522)
Added the 'reset_connection' option to the available choices
9 years ago
James Cammarata 78478e80ea Avoid default serialization of classes in dump_attrs
For playbook base objects, when dumping attributes via dump_attrs() an
attribute like loop_control is a class. Using the default serialization
for these is slow and consumes a lot of memory. Since LoopControl is also
based on the Base class, we can use serialize() instead and save a lot of
resources.

This also adds a from_attrs() complimentary method to nicely turn the
dumped attrs back into proper field attributes.

Fixes #23579
9 years ago
taksekine b04df23da2 fix #24429 (#24491) 9 years ago
Brian Coca c50cf22d52 deal with null/none connections
fixes #23621
pushed 'connection resolution' to play_context
override fieldattribute getter
9 years ago
Tom Melendez 4a5cf0b5c1 [GCE] [GCP] UrlMap module (#24422)
* [GCP] UrlMap module

This module provides support for UrlMaps on Google Cloud Platform.  UrlMaps allow users to segment requests by hostname and path and direct those requests to Backend Services.

UrlMaps are a powerful and necessary part of HTTP(S) Global Load Balancing on Google Cloud Platform.

UrlMap takes advantage of the python-api so the appropriate infrastructure has been added to module_utils.

More about UrlMaps can be found at:
https://cloud.google.com/compute/docs/load-balancing/http/url-map

UrlMap API:
https://cloud.google.com/compute/docs/reference/latest/

Google Cloud Platform HTTP(S) Cross-Region Load Balancer:
https://cloud.google.com/compute/docs/load-balancing/http/

* updated documentation, remmoved parens

* fixed tabs
9 years ago
Abhijeet Kasurde 728d3e6c84 Pep8 fixes for web_infra/ansible_tower (#24479)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Dylan Silva fc3cc73b73 Downgrading module from core to community (#24463) 9 years ago
wiso bb90f5d220 netconf_config: support new src attribute (new Action Plugin) (#24337)
* Create netconf_config.py

To support new attribute 'src' for the netconf_config module.
Cross-check with #24323

* Update netconf_config.py

* Update netconf_config.py
9 years ago
Jon Hadfield eb4cc31ae5 [cloud] migrate ec2_asg to boto3 and support application ELB target groups. (#19667)
* switch to boto3 and add support for application ELBs with target groups.

* use py23 compatible dict iterator.

* removing commented out fail_json calls

utilize sets to simplify logic

remove setting a redundant variable

add bounds checking in two places

add AWSRetry decorator - do we want this for other functions too?

change xrange to range so python3 doesn't fail

remove sorting lists of dicts; in python2 this returns None, in python3 this fails

* remove error variable from traceback.format_exc

* Remove boto2-style calls brought in by rebase

Old boto-style calls to `as_group` attributes break in boto3

Also remove module from legacy-PEP8 list

* Add  parameter to target_group_arn option

* Fix HAS_BOTO3 check

* use tags.items() instead of iteritems

* import botocore

* Fixed bugs in deleting autoscaling groups

* make changes in deleting autoscaling groups pep8

* more pep8

* fix version

* fix bugs so local integration tests run

* fix launch config check

* reflect changed status for ASG updates

* Fix existing exception handling and use traceback.

Fix imports

* line length

* Fix notification setup

* Fix mutually exclusive arguments
Only one of the AvailabilityZones and VPCZoneIdentifier arguments should be provided to the CreateAutoScalingGroup call.

* Allow desired_capacity, min_size, max_size, launch_config_name to be derived from the existing ASG if not specified

Remove code updating dict after ASG already uses it
9 years ago
Abhijeet Kasurde 3d51081a59 Refactor nxos_reboot module (#24484)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Rob fd1debb869 Feature/aws helper function for tags (#23387)
* Add new helper function for comparing AWS tag key pair dicts. Also modify boto3_tag_list_to_ansible_dict function to be more generic when looking for key names because AWS sometimes uses 'Key', sometimes 'TagKey' and who knows what the future holds! Fixed modules to work with changes.

* Review changes

* Add some more doc to GUIDELINES for tags and fix var name for snaked values in ec2_group_facts
9 years ago
Trishna Guha b2a2f69a6e nxos_vrf_af fix and unit test (#24399)
* nxos_vrf_af fix and unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* ansibot told me to do this

* use sorted() as the test list elements differ in order for python2.x and 3.x
9 years ago
Trishna Guha 62eafa8837 fixes nxos_evpn_vni and unittest (#24372)
* fixes nxos_evpn_vni

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fixes pep8 issue and syntax error

* ansibot tole me to do this

* Unit test
9 years ago
Dag Wieers 748f27e597 expect: Add a pointer to the shell/script modules
This PR also includes:
- DOCUMENTATION and EXAMPLES cleanup

This fixes #21335
9 years ago
Dag Wieers e855274dc8 win_psexec: Enable -nobanner option by default (#23422)
* win_psexec: Enable -nobanner option by default

PR also includes:
- Option `nobanner:` to remove this flag
- Improvements to Examples
- Improvement to Return Value
- Add types to all parameters now
- Add (limited) integration tests

* Move sysinternals into C:\Windows\Temp
9 years ago
Nathaniel Case 09b2964dee nxos_bgp_af updates (#24171)
* update docs
* clean up nxos-bgp_af
* Remove useless params from bgp_af
* Add bgp_af tests
9 years ago
Abhijeet Kasurde 2f26c5285a Refactor nxos_file_copy module (#24314)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ondra Machacek a5020a40e5 Minor fixes for oVirt modules (#23452)
* cloud: ovirt: only image disk can be sparsified

* cloud: ovirt: add post-copy scheduling policy
9 years ago
René Moser 2ef6713abb cloudstack: new module cs_vpn_gateway (#23954)
* cloudstack: new module cs_vpn_gateway
* add integration tests for cs_vpn_gateway
9 years ago
Matt Martz 3324d0a4b0 Support auto_remove in docker_container (#22929)
* Support auto_remove in docker_container

* Fail if not docker>=2 and auto_remove=True, don't set auto_remove in host_config if not docker>=2

* Make quoting more readable in ansible errors
9 years ago
wiso 0a22dbd9d8 Update netconf_config.py (#24323)
* Update netconf_config.py

Implementation proposal for feature request #24220

* Update netconf_config.py

fixed pep8
added code proposal for #24221

* Update netconf_config.py

correct more pep8 related things
add some cosmetic changes
9 years ago
Sloane Hertel 2618e6d516 ec2_elb_lb: allow elb scheme to be updated by restarting the resource - fixes #19116 (#22916)
* allow elb scheme to be updated by restarting the resource

use ensure_gone and require wait option

* fix pep8

* fix yaml

* requested changes

* fix fail_json
9 years ago
Dag Wieers bc806ff479 Windows: Small fix to Add-Warning and Add-DeprecationWarning (#23520)
Simplified the logic, and fix the issue of having a nested list as
entry.

Also indicate that we deliberately want to retain $null values
(and i.e. do not want them to be turned into a boolean).
9 years ago
Ganesh Nalawade 5b3ea6562b Add junos integration test (#24404) 9 years ago
Feike Steenbergen c5adf08c40 Reference correct variable and key for role expiry (#23397)
Previously, this module could throw the following error message:
    NameError: global name 'current_roles_attrs' is not defined

The referencing key should also match the name of the column, which is
rolvaliduntil, not rol_valid_until
9 years ago
Abhijeet Kasurde a255cfd22a Check login_token for user before any operations (#23600)
Fix adds extra check if user is authorized or not while
using login_token.

Fixes https://github.com/ansible/ansible/issues/23033

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Benjamin Jolivot e99815e9f5 Fortios file only mode + integration tests (#23275)
* WIP file_mode

* WIP

* Add file_mode + integration tests

* fix pep8

* Update doc fragments
Create mutualy_exclusive param
Fix yamllint problem in tests

* Add aliases file + main playbook for fortios

* Install pyfg before running tests

* Install pyfg before running tests in role

* Remove pre_task as it's done in roles

* Force pyFG minimal version for python3

* role_path not role_dir :(

* Change requirements

* Specify Error type when error on import

* Bug in pygf library with python 2.5 (PR is waiting https://github.com/spotify/pyfg/pull/19)

* Bad requirement format

* still bad format -_-'

* remove test/integration/fortios.py (auto generated by tests)
missing new lines at end of file

* pyFG is now fixed in 0.50
9 years ago
Abhijeet Kasurde e342b281d8 Check if api_key and app_key before proceeding (#24336)
Fix adds check if app_key and api_key provided by
user is correct or not. If this combination is wrong
then fail with appropriate error message given by
Datadog server

Fixes https://github.com/ansible/ansible/issues/24325

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Clay d999d613cb Python 3 fixes for CloudStack modules and tests. (#24400) 9 years ago
Gaurav Rastogi 6aa32d3e9d Added no_log flag for all the sensitive fields. (#24386) 9 years ago
Dag Wieers b58cf0d23a windows: Various small documentation fixes (#23138) 9 years ago
Dag Wieers 5ab97b30cd powershell: Add support for list parameters (#23131)
This is a first implementation of list parameters.

It will convert a single string, or comma-separated value into an Array.
9 years ago
Matt Davis 98ff93b2db fix spurious warnings with ansible_winrm_kinit_X args (#24380)
* added to pywinrm arg whitelist
* clarified error text on kinit_mode error
* fixes #23822
9 years ago
James Cammarata ed56f51f18 Fixing security issue with lookup returns not tainting the jinja2 environment
CVE-2017-7481

Lookup returns wrap the result in unsafe, however when used through the
standard templar engine, this does not result in the jinja2 environment being
marked as unsafe as a whole. This means the lookup result looses the unsafe
protection and may become simple unicode strings, which can result in bad
things being re-templated.

This also adds a global lookup param and cfg options for lookups to allow
unsafe returns, so users can force the previous (insecure) behavior.
9 years ago
Nathaniel Case 830f19d444 nxos_bgp updates (#24270)
* Remove invoke from nxos_bgp
* Try to simplify get_existing
* Streamline state_present
* More testing, squash & compact get_value & get_custom_value
* Streamline main
* nxapi has problems reading CustomNetworkConfig directly
9 years ago
Ganesh Nalawade 4186b07d21 Fixes #24375 Add check to identify if diff is empty (#24377)
* Fix #24375 Add check to identify if diff is empty
9 years ago
Abhijeet Kasurde d072d91aed Use wait_timeout as integer in redshift module (#24279)
Fix stricts datatype of wait_timeout to int as module
is using it as integer.

Fixes https://github.com/ansible/ansible/issues/24267

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Gaurav Rastogi b1efad52a4 New module to setup cloud connector properties (#22225)
* New module to set up cloud connector properties

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 1978795089 New module to setup string group. (#22223)
* New module to setup string group.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Abhijeet Kasurde 2425143cf2 Pep8 fixes for digital_ocean_*
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 9c5b55232c Pep8 fixes for Windows module (#24349)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Martin Kopta c4ad0f86c7 fixed yum.parse_check_update regex (#24331)
Output of `yum check-update` can contain lines with long package names and long
repository label names, which will be broken into multiple lines, which need to
be sanitized. The solution to this has been fixed and refactored in 2.3 in form
of parse_check_update(), but it still contains subtle bug, which makes such
multi-lines invisible to later logic (such packages aren't included in
parse_check_update()) output. The problem is caused by using '\1' in re.sub(),
instead of proper r'\1', which literally puts unicode symbol \1 into resulting
output.
9 years ago
Sloane Hertel 0438236263 [cloud] Add version_added to route53 option 'state' - fixes #24306 (#24335)
* fix route53 documentation

* improve state option description and remove version_added
9 years ago
Toshio Kuratomi 4bf8071889 Give user whatever information we have from ssh-keyscan
ssh-keyscan isn't very verbose about errors.  Give the user whatever
information we have available even if it isn't much.  At least they will
know how we were running ssh-keyscan and why there's an error now.

Fixes #19440
9 years ago
Adrian Likins 3840119bc7 Fix vaulted vars templating (#24312)
Use the default repr of AnsibleVaultEncryptedUnicode.data instead
of a custom one, since jinja templating ends up using the repr()
results.

Fixes #23846, #24175
9 years ago
Trishna Guha ad0a01ffb5 nxos_vrf refactor (#24280)
* nxos_vrf refactor

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Unit test for nxos_vrf
Remove unnecessary keys() method
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Dag Wieers 58c1a9dd94 vmware_guest: Don't force onto specific host (#22777)
Unless we provided a specific esxi_hostname, don't force new VMs onto the first host in the cluster.
9 years ago
Trishna Guha 986765312f Fixes #23948 body not defined nxos_hsrp (#24093) 9 years ago
Trishna Guha 67bd8f9204 fixes nxos_interface (#24199)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Alberto Murillo Silva d31a09ceb7 Fix os_quota to not break when volumev2 service is not available.
os_quota checks the current quotas for compute, network and volume
services and fails when no volume service is found in the catalog.

Since openstack test deployments without volume services are common
os_quota shouldn't fail if such service is missing.

Fixes #23085

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
9 years ago
Alberto Murillo Silva 136a6eec9e dnf: Add autoremove option
This allow users to write better playbooks by replacing

- shell: dnf autoremove -y
with
- dnf: autoremove=yes

Fixes #18815

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
9 years ago
Abhijeet Kasurde d8a9b9f347 Fix win_user warning message (#24263)
Fix adds correct warning after deleting Windows User.
Also, adds modular function to get group

Fixes https://github.com/ansible/ansible/issues/24190

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Martz 63f8e6b68a Fix version_added for new option in template introduced in #21846 (#24307) 9 years ago
Dane Summers 4bd04c299b Fixes #23285 (#24291)
Makes subversion module --check fail when modified files are in
repository.
9 years ago
Toshio Kuratomi e36d2f0bd0 ansible-doc snippet format changes
* ansible-doc -s is supposed to output a sample snippet of how you could
  add the module into a playbook.  These changes update the style:
  * Use yaml mappings instead of key=value
  * Use the module name directly instead of action: modulename
* Fixes a bug when displaying option descritpions which are yaml strings
  instead of lists.

This fixes in code the bad formatting reported in #24201
9 years ago
Joris (J.J.M.) Weijters 2a7ce1059d adjusted descriptions in DOCUMENTATION, and fixed type in RETURN 9 years ago
Gaurav Rastogi 4f7d342c0e New module to setup Cloud properties (#22226)
* New module to set up Cloud properties

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi ffeb105423 New module to setup serviceengine group. (#22227)
* New module to setup serviceengine group.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 5ccba73c55 New module to setup network object. (#22228)
* New module to setup network object.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 099a1c5aef New module to set up GLSB object (#22229)
* New module to set up GLSB object

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 368ccf1ac7 New module to setup GSLB service (#22230)
* New module to setup GSLB service

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 243eacb650 New module to set up gslb health monitors (#22231)
* New module to set up gslb health monitors

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 91f255a07b New module to setup IP address group. (#22224)
* New module to setup IP address group.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi b0465a2fbd New module to set up cloud object (#22198)
* New module to set up cloud object

* Fixed documentation error

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Abhijeet Kasurde 86966c75fa New module : github_issue (#23654)
Using github_issue module, user can retrive status of issue
listed on Github repository and depending upon status takes
various actions e.g., workarounds and downloading patches.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
jctanner 08a3ea2221 sysctl: switch basestring to string_types (#24277) 9 years ago
Matt Davis 2052ed48d5 Deprecated restart option in win_feature, added return docs 9 years ago
Matt Davis db91dd8685 fixed issue with multiple calls to Add-DeprecationWarning 9 years ago
Matt Martz 7dbec976af Switch last remaining decode to to_text (#24269) 9 years ago
Brian Coca b731c2d809 include_vars to delegated only if delegate_facts (#24259)
* include_vars to delegated only if delegate_facts

fixes #24172

* since code is now same, simplified
9 years ago
Toshio Kuratomi a0dfa8616a Make fetch default to fail on errors
Fixes #23501
9 years ago
Toshio Kuratomi 90a229c793 Fix error in unittesting
When unittesting, the framework creates a pipes module that is picked up
by the basic module_utils test.  Switch to using shlex_quote as that is
the right thing to use for portability anyway.
9 years ago
Toshio Kuratomi 36d7c0c403 Fix places where path needs to be bytes on python3
These were discovered on python3 with fetch code that fails on errors.  Probably could be
provoked with particular sets of arguments to stat as well.
9 years ago
Sloane Hertel ad8cb903f4 rds: do not update multi-az unless specified - fixes #23385 (#23498)
* allow multi_az to be unmodified if not explicitly specified

* fix pep8 and remove from legacy files
9 years ago
Ritesh Khadgaray fb6e9e8fbe rhn+register: do not pass username/passwd for registration if none is specified. (#24244) 9 years ago
Sloane Hertel 4278618746 verify arns differently than function names (#23966) 9 years ago
Gaurav Rastogi e8a0215cd3 Avi 17 1 (#24047)
* Added new common argument api_version for all Avi modules

* Updated dependency for the new modules to use avi sdk 17.1 and above

* Updated Avi 17.1.1 modules with descriptions and moddule dependencies

* Updated version_added for new options
9 years ago
mattwwarren 45ac28ba04 remove self from function outside of class (#24017)
* remove self from function outside of class

* fix indentation
9 years ago
Abhijeet Kasurde a3053d8c2c Add validate_certs option to ldap_attr, ldap_entry (#24060)
This fix adds a module option `validate_certs' to check
self-signed certificate of LDAP server.

Fixes https://github.com/ansible/ansible/issues/24009

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Kevin Howell a93aa6dc04 Fix typo in rhsm.configure (system -> server) (#24179)
This fix makes it so that the module works as expected when
`server_hostname` is provided. It was being silently ignored
previously. I suppose this may also fix similar behavior with
`server_insecure`, but I did not check that explicitly.
9 years ago
Ganesh Nalawade a42b892f70 Fix junos_rpc and junos_user broken issues (#24238)
* Fix junos_rpc and junos_user broken issues

Add persistent connection related changes.

* Fix CI issues
9 years ago
Benny Zlotnik 80f0157f3c cloud: ovirt: Remove extra "the" from descriptions (#24242) 9 years ago
Abhijeet Kasurde 465c12ccdb Pep8 fixes for deploy_helper (#24237)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ganesh Nalawade 73c24001d9 Fix netconf port validation and minor doc change (#24210)
* Fix netconf port validation and minor doc change

Add check to confirm if `validate_*` funcion is
callable.

Add `config_format` in `junos_facts` documentation

* Fix review comments
9 years ago
Ricardo Carrillo Cruz 7195c31753 Refactor openvswitch_port module (#24205)
Use current patterns from other network modules for better
maintainability.
9 years ago
Abhijeet Kasurde 53f0cd197e Pep8 fixes for jira (#24229)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde b6b3f84990 Pep8 fixes for htpasswd (#24230)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Clay 785bc93ff7 Allow empty string for EC2 session token from env. 9 years ago
Matt Clay 425d35ef0f Fix ec2_elb_lb error handling. (#24183)
- Use `fail_json` for `get_all_load_balancers` unhandled exception.
- Do not mask error message on failure of `enable_zones`.
- Do not mask error message on failure of `disable_zones`.

Also added/removed blank lines to improve PEP 8 compliance.
9 years ago
Abhijeet Kasurde fbb924ff24 Pep8 fixes for letsencrypt module (#24144)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde df5be2b8ea Pep8 fixes for django_manage (#24198)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Robin Roth 0cf00db750 Make git module pep8 compliant (#24196) 9 years ago
higginsd 8408c6b454 fixed missing "import traceback" (#23427) 9 years ago
Ricardo Carrillo Cruz 9e246a857c Sanitize the output from ovs get-fail-mode (#24208)
If a bridge does not have a fail mode set, it returns nothing, i.e.
empty string.
This causes a failure when doing the want vs have compare in plays
where the fail-mode is missing, as we compare "" vs None respectively.
9 years ago
Ricardo Carrillo Cruz e67eba877e Sanitize ovs br-get-external-id output on openvswitch_bridge (#24209)
If a bridge does not have external_ids, ovs-vsctl returns '{}'.
This causes issues on the current want vs have comparison in cases
where the play does not define external_ids, as the comparison
is None vs '{}'.
9 years ago
Sloane Hertel e13fc5d6bd elasticache_parameter_group: fix documentation and exception handling - fixes #23709 (#23718)
* fix documentation and correct exception handling

* follow AWS exception guidelines

* fix parameter_group_family req; only needed when creating cache parameter group

make pep8 and remove from legacy files
9 years ago
Sloane Hertel fcaa49b536 sns: move from notification directory to cloud/amazon directory - fixes #11874 (#23805)
* move sns to cloud directory

* make sns pep8 and remove from legacy files
9 years ago
Abhijeet Kasurde 9d9e9a79e2 Pep8 fixes for apache2 module (#24185)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
John R Barker 93de128844 Return type is dict, not dictionary (#24191) 9 years ago
Thomas Bilk ن 77e550192c Added Composer Command global (#24158)
* Added Composer Command global

Added a parameter to run composer commands globally. The `working_dir`
parameter is only required if `global_command` is `False`.

Fixes #24052

* Added Composer Command global

Added a parameter to run composer commands globally. The `working_dir`
parameter is only required if `global_command` is `False`.

Fixes #24052
9 years ago
Toshio Kuratomi 3428f42120 Add integration test that modules are loaded from the expected locations (#24170)
* Add integration test that modules are loaded from the expected locations
* Fix ping module to pass PEP8
9 years ago
Abhijeet Kasurde 8ba069315e Pylint fixes for packaging (#23553)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Martz 040fb4435a Fix password prompt matching (#24081)
* Fix password prompt matching

* Add some tests for check_password_prompt

* Prevent pep8 line ends with a space error
9 years ago
Abhijeet Kasurde d8f76bed97 Misc fixes and Pep8 fixes for proxmox_* modules (#24162)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde cdca648f15 Pep8 fixes for jenkins_* module (#24154)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi d088030fa6 Facts Timeout was not settable via ansible.cfg
The timeout for gathering facts needs to be settable from three places
(highest precedence to lowest):

* programmatically
* ansible.cfg (equivalent to the user specifying it explicitly when
  calling setup)
* from the default value

The code was changed in b4bd6c80de to
allow programmatically and the default value to work correctly but
setting via ansible.cfg/parameter was broken.

This change should fix setting via ansible.cfg and adds unittests for
all three cases

Fixes #23753
9 years ago
Abhijeet Kasurde 806506c032 Pep8 fixes for taiga_issue module (#24143)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde bb8666471d Update documentation of fetch_url in urls.py (#23892)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Nathaniel Case dce2d5eea9 Remove `provider` requirement from nxos_vrf (#24118)
Fixes #23920
9 years ago
Rene Moser e9dfbdf7a2 rundeck_project: set ansible_metadata status to preview 9 years ago
Alberto Murillo Silva bb234b9206 Fix ClearLinux pretty name
ClearLinux has changed its pretty name in os-release file
from: 'Clear Linux Software for Intel Architecture'
to: 'Clear Linux OS for Intel Architecture'

This patch makes the SEARCH_STRING 'Clear Linux' rather than
the full name to make it compatible with the old and new name.

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
9 years ago
Nick Piper 403c142750 Minor typo correction varibles -> variables
No impact as variable wasn't used.
9 years ago
René Moser 594d7d5d9d cloudstack: cs_region: fix pep8 (#24134) 9 years ago
Toshio Kuratomi 1c05ed7951 Fix circular import with unsafe_proxy, template, and vars
template/__init__.py imported unsafe_proxy from vars which caused
vars/__init__.py to load.  vars/__init__.py needed template/__init__.py
which caused issues.  Loading unsafe_proxy from another location fixes
that.
9 years ago
Toshio Kuratomi 500de1f557 Remove hack for backwards compatible v2_playbook_on_start callback
Just after release of 2.0.0 (in 2.0.0.1) we had a change to the API of
callbacks without bumping the API version.  We added the playbook to the
arguments passed to the callbacks.

This wasn't in the Tower callback at the time.  In order to prevent
breaking that callback we added a temporary hack to inspect the
callback's API to decide if we needed to call it with arguments or not.

We scheduled the hack for removal in January 2017.  Since that's now
past, removing the hack.

Change signed off by matburt on the Tower side.
9 years ago
Patrick Chauncey 0d5fe8fd94 Add 'uuid' to the attributes returned from the vmware_vm_facts module. (#23773) 9 years ago
David Moreau Simard b95fefd8f5 Add support for specifying the modulepath for the Puppet module (#24122)
Puppet modules are not always installed in the default location
(i.e, /etc/puppet/modules) so it is useful to be able to specify
an alternate location.
9 years ago
Cody Boggs 1c11a35f70 Fix orphan resource pool crash (Issue #24078) (#24079)
Fixes issue [#24078](https://github.com/ansible/ansible/issues/24078)

Resource pools are retrieved from VSphere regardless of the state of the `resource_pool` parameter. During this process, each retrieved Resource Pool is checked for the `parent` attribute, and if it exists, the currently-scoped parent object is compared against the Resource Pool's parent object. The method doing the check, however, `assert`s that the parent object is not `None`. In some cases, a Resource Pool will have the `parent` attr, but that `parent` object will be `None`, causing the `assert` to fail.

This should avoid that. :-)
9 years ago
Nathaniel Case f9ec06d1dc Print specific error for BadHostKeyException (#24120) 9 years ago
nerzhul e09cd58a17 New module: rundeck_project
This module permits to manage rundeck project creation or removal through rundeck API
9 years ago
John R Barker 1d12f13612 dict, not dictionary (#24123) 9 years ago
nerzhul 96d2dbb11e Add rundeck_acl_policy module 9 years ago
Ricardo Carrillo Cruz 467a9bdd4e Refactor openvswitch_bridge (#24014)
Use common patterns from other network modules for better
maintainability.
9 years ago
Ganesh Nalawade 06732acd4c Fix exception in junos_package (#24107) 9 years ago
Alex Willmer 1ac17213ea Rename fact returned by docker_network to avoid restricted prefix (#23919)
This fixes #23918
9 years ago
SesquipedalianDefenestrator 3f321e7591 Add check_mode to get_url (#20532)
* Add check_mode to get_url that does a HEAD request to make sure the URL exists, but doesn't write the real file

* Add info about new --check behavior to docs.  Add tests for the new behavior.  Populate res_args with the info the tests are looking for.

* Add trailing comma

* Change nonexistent test URL to http://{{httpbin_host}/DOESNOTEXIST.  Fix spacing while I'm at it

* Further spacing cleanup

* State that this functionality is in Ansible 2.4+
9 years ago
Abhijeet Kasurde ca7616b4a1 Pep8 fixes for ha_proxy module (#24090)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
John R Barker 3d4523f231 Correct RETURN data types for Network modules (#24104)
`path` isn't a datatype
9 years ago
Trishna Guha bc22223d63 Fixes #23890 Remove idle ShellError exception and get_exception() method from nxos modules (#23947)
Remove idle ShellError exception and get_exception() method from nxos modules
9 years ago
Brian Coca 31045d58c6 added versions to dep notices (#24019)
* added versions to dep notices

* pep7

* string
9 years ago
John R Barker 6845234d72 nmcli: fix docs for add necessary package (#24071)
Originally report in https://github.com/ansible/ansible/pull/23817
9 years ago
Erwin Lang b729b35e32 synchronize: Fix (delegated) local rsync
Makes delegated local rsync work even if ansible_host or ansible_ssh_host is set.
Makes local rsync work when no ssh is installed.
9 years ago
John R Barker fcb52ce808 Added note on netcat dependency (#24070)
Originally https://github.com/ansible/ansible/pull/23911/files
9 years ago
Trishna Guha 2741907cba Refactor nxos_interface and add unit test (#24008)
* [WIP] Refactor nxos_interface

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Modification in refactor
Unittest for nxos_interface
9 years ago
Nathaniel Case 689b93bf14 Junos_config unicode (#23369)
* Try to handle unicode output more sensibly

* Appears I'm getting latin1 instead

Ugh.
9 years ago