Commit graph

18545 commits

Author SHA1 Message Date
Sam Doran
2c8382eb87 Ensure valid_plugin_bin is defined
Fixes #31824
2017-10-18 14:05:03 -07:00
Brian Coca
7fe6a8dab7 add all group vars back to implicit localhost
fixes #31857
reverts #31425
2017-10-18 13:57:55 -07:00
s-hertel
bd0e1b8743 Fix header direct_connect module_utils 2017-10-18 12:08:19 -07:00
Tim Rupp
f94d337ef6 Adds new module allowing you to wait for a bigip (#31846)
Module allows you to wait for a bigip device to be
"ready" for configuration. This module will wait for things like
the device coming online as well as the REST API and MCPD being
ready.

If all of the above is not online and ready, then no configuration
will be able to be made.
2017-10-18 18:05:43 +01:00
tacatac
91e9aaca28 Add nosh service manager module (#31847)
* Add nosh service manager module

* based on the `svc`, `systemd`, `runit` and proposed `rc_service`
modules
* uses the high-level 'system-control' command and assumes nosh-native
interfaces though it should work with daemontools-style service scanning
* assumes a single service name is provided

* Metadata fixes

* Added "author" and "version_added"
* fixed the RETURN yaml

* PEP8 fixes

* fixed spacing issue
2017-10-18 11:13:43 -04:00
Marek Nogacki
b9223cdc89 ec2_group: do not fail on description mismatch (#31704) (#31734)
* ec2_group: do not fail on description mismatch (#31704)

* ec2_group: do not fail on description mismatch (#31704) - fix test case
2017-10-18 09:21:55 -04:00
Sloane Hertel
1b63885fc5 [cloud] Check instance public-IP property before transforming to dict (#31849) 2017-10-18 09:17:06 -04:00
John R Barker
598084fbc8 Document backup_path (#31844)
Fix a few consistency issues at the same time
2017-10-18 14:07:28 +01:00
Jerry Chong
567e989581 Fix exception upon display.warn() (#31876)
Fixes #31875
2017-10-18 13:04:59 +02:00
guilhermeoki
a35b4449ee Add support to pass a Makefile (#31853) 2017-10-18 11:19:24 +01:00
Jerry Chong
4acd0de8f0 Remove extraneous comment block (#31865) 2017-10-18 11:08:29 +01:00
Johannes Weißl
269672faf1 [cloud] Add CAA record type to route53 (#29178)
The CAA record type is supported in Amazon Route 53 since Aug 21, 2017. Tested manually.

- https://aws.amazon.com/about-aws/whats-new/2017/08/amazon-route-53-now-supports-caa-records/
- http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/ResourceRecordTypes.html#CAAFormat
- https://tools.ietf.org/html/rfc6844
2017-10-18 12:48:04 +10:00
Jordan Borean
743ff4897a win_regedit: added function to load a dat file for editing (#31289)
* win_regedit: added function to load a dat file for editing

* try to make the tests more resiliant

* more stability changes
2017-10-18 06:30:33 +10:00
Will Thames
70ae7382e5 Allow AWS region to be detected from boto profiles (#31768) 2017-10-17 15:43:30 -04:00
Michael Fenn
eab9ca9a00 ec2_vpc_endpoint: make policy_path usable (#31801)
The current code flow precludes the use of the policy_path module
parameter that's documented.  It's actually called policy_file in the
code.

What's worse is that the policy_file branch actually tries to open the
file named by the policy parameter, even though policy and policy_file
are marked as mutually-exclusive.

This change fixes the logic bug in policy_file and updates the
documentation to reference policy_file.  The old parameter policy_path
is provided as an alias
2017-10-17 14:34:29 -04:00
Martin Krizek
efec43dd1e hostname: fix for a new version of rhel (#31839)
Fixes #31811
2017-10-17 13:43:54 -04:00
Eike Frost
1d14016087 add validate_certs to zabbix_template and move documentation for common options to zabbix module_doc_fragment (#31838) 2017-10-17 11:37:54 -04:00
Eike Frost
0a89873df9 zabbix: Move commonly used docs to doc fragments (#31833)
* Move commonly used configuration parameter documentation for zabbix_*-modules to cental doc fragment

* fix indentation
2017-10-17 17:03:51 +02:00
adambanker
ee4e1be7cd Fixed redshift_subnet_group typo (#31836) 2017-10-17 09:16:59 -04:00
paulquack
5a6ee054c0 Network command module for Brocade IronWare routers (#31429) 2017-10-17 13:54:32 +01:00
Prasad Katti
b9e15d0df1 Support 'termination protection' for cloudformation stacks (#31675)
* Support 'termination protection' for cloudformation stacks

- Pass in the stack_name and desired termination protection state to update_termination_protection

* Fix for failing cloudformation unit test

* Check if cfn has update_termination_protection attr

* Use hasattr to test if cfn supports update_termination_protection

* termination_protection shouldn't prevent update_stack call for existing stacks
2017-10-17 08:34:45 -04:00
Takuya Sato
a8bc6f69d9 skip check environment parameter if has no containers. (#31083)
* skip check environment parameter if has no containers.

* optimize code
2017-10-17 08:30:32 -04:00
Jordan Borean
888de842b3 win_regedit: fix extra info coming into stdout (#31813) 2017-10-17 11:58:32 +10:00
James Tanner
87db43afce Remove duplicate import 2017-10-16 21:50:31 -04:00
James Tanner
940bf1f627 Fallback to the newer object type for dvswitch 2017-10-16 21:50:31 -04:00
Brian Coca
21cdddce74 correctly deal with changed (#31812) 2017-10-17 11:44:17 +10:00
Jordan Borean
4ac475a967 win_dsc: link module documentation to main RST page (#31814) 2017-10-17 09:43:38 +10:00
Chris Meyers
cf938e9992 tests for InventoryModule error conditions (#31381)
* tests for InventoryModule error conditions

* modified unicode in tests to ahear to Ansible best practices

* flake8 fixes
2017-10-16 18:52:44 -04:00
Brian Coca
68f177d381 py2/py3 safer shas on hostvars (#31788)
* py2/py3 safer shas on hostvars

* plain bytes
2017-10-16 16:43:56 -04:00
Brian Coca
618627febd remove hosts from removed when rescuing
fixes #31707
2017-10-16 15:14:41 -04:00
Brian Coca
07f1e7540b move to use ansible logging 2017-10-16 11:34:55 -07:00
Javier Cortejoso
844e58aedb Define new_target_group before. Fixes #31378 (#31379) 2017-10-16 14:33:47 -04:00
Brian Coca
c0fc797a06 fix html formatting 2017-10-16 14:27:46 -04:00
Brian Coca
a26a2841ff fix closure issues
fixes #31786
2017-10-16 11:26:28 -07:00
John Kerkstra
1e85facf36 add note to ec2_vpc_route_table that purge_subnets option is contingent subnets option (#31749) 2017-10-16 13:35:59 -04:00
Eike Frost
1b71fb0499 fix legacy PEP8 violations in zabbix modules, remove test exception for them (#31702)
* fix legacy PEP8 violations in zabbix_*, remove test exception for them

* fix new pep8 violations for zabbix_maintenance.py
2017-10-16 19:20:54 +02:00
Tim Rightnour
85bd104c7c Add the snow_record module. Module to create/update/delete/read records (#27931)
in ServiceNow

Remove "updated" as a option for state, per review from bcoca.  Update
examples section, and tested.

Update metadata to 1.1

Rip out some more instances of updated from documentation.

Update for ansible 2.5 first version
2017-10-16 12:58:32 -04:00
Ilya Margolin
9bc60cd05e Fix -M/--module-path option for ansible-doc and ansible-console (#31744)
Fixes #31743
2017-10-16 10:47:40 -04:00
evancarter-iex
d6520c64b3 gce_instance_template: fix allow the setting of the service account (#29154) 2017-10-16 16:00:07 +02:00
Brian Coca
01b6c7c9c6 better cleanup on task results display (#27175)
* better cleanup on task results display

callbacks get 'clean' copy of result objects
moved cleanup into result object itself
removed now redundant callback cleanup
moved no_log tests

* moved import as per feedback
2017-10-16 09:44:11 -04:00
Will Thames
03abce2d39 Add pagination for IAM group API calls (#31554)
get_group and list_attached_policies_for_groups can be paginated
so add pagination handling.

Fixes #31545
2017-10-16 09:42:43 -04:00
Werner Dijkerman
6984eecdb9 zabbix: add validate certs param (#31739) 2017-10-16 15:42:28 +02:00
Prasad Katti
30fd1870f3 [docs] Clean up the cloudformation examples (#31770)
- added `role_arn` to the "role example" example
- removed the irrelevant parameters to the "role example" example
- updated comment on one of the examples
- removed the last example as it was a duplicate of "role example" example
- some other minor changes
2017-10-16 08:53:10 -04:00
Trishna Guha
f94ef03625 Fixes #30529 nxos_facts ipv6 interface (#31286)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-16 18:19:44 +05:30
Ondra Machacek
052f4d2571 ovirt_networks: Fix label assigment condition (#31772) 2017-10-16 04:58:51 -04:00
Eike Frost
e648a00312 Fix #24964 comparaison string vs integer (#31701) 2017-10-16 04:44:12 -04:00
Marat Bakeev
f84b5b6059 Update ssm lookup to support getting parameters by path (#31752) 2017-10-16 10:31:57 +10:00
Yaacov Zamir
2fc1d6618f fix the handeling of empty auth_key (#31753) 2017-10-15 19:30:34 -04:00
Fabian von Feilitzsch
b058b8e653 Update k8s_common.py 2017-10-15 14:52:39 -04:00
Fabian von Feilitzsch
20d2a83e13 use to_str instead of json.dumps when serializing k8s object for logging 2017-10-15 14:52:39 -04:00
Tim Rupp
6e6a6ff36b Fixes an fqdn error (#31745)
the pool module was not correctly interpreting the partitions
in the monitors list vs the partition at the task level. This patch
fixes that.
2017-10-14 15:39:18 -07:00
Tim Rupp
02cd881697 Refactors bigip_selfip (#31732)
In this refactor we moved to the most recent coding standards for
both F5 and Ansible. Many bugs were fixed and some features were
also added (such as ipv6 support).
2017-10-13 23:31:32 -07:00
Tim Rupp
0610f09dab Adds various provision fixes (#31731)
* vcmp provisioning support
* documentation fixes
* fixes for python3 causing an exception
2017-10-13 22:19:46 -07:00
Tim Rupp
53445ded84 Fixes documentation related bugs (#31730)
New conventions for ansible warrant fixes to accomodate those
in bigip_partition.

This patch also includes an import fix that can raise an error when
Ansible unit tests run
2017-10-13 22:06:19 -07:00
Tim Rupp
a969a529ab Fixes various gtm pool issues (#31728)
Various formatting related fixes. Also fixed an idempotency problem
with the 'disabled' state
2017-10-13 21:51:28 -07:00
René Moser
8b8d5aaca7 cs_instance: remove CloudStackException dep (#31724)
- fixes dep
- fix docs
2017-10-14 00:09:57 +02:00
Adrian Likins
297dfb1d50 Vault secrets script client inc new 'keyring' client (#27669)
This adds a new type of vault-password script  (a 'client') that takes advantage of and enhances the 
multiple vault password support.

If a vault password script basename ends with the name '-client', consider it a vault password script client. 

A vault password script 'client' just means that the script will take a '--vault-id' command line arg.

The previous vault password script (as invoked by --vault-password-file pointing to an executable) takes
no args and returns the password on stdout. But it doesnt know anything about --vault-id or multiple vault
passwords.

The new 'protocol' of the vault password script takes a cli arg ('--vault-id') so that it can lookup that specific
vault-id and return it's password.

Since existing vault password scripts don't know the new 'protocol', a way to distinguish password scripts
that do understand the protocol was needed.  The convention now is to consider password scripts that are
named like 'something-client.py' (and executable) to be vault password client scripts.

The new client scripts get invoked with the '--vault-id' they were requested for. An example:

     ansible-playbook --vault-id my_vault_id@contrib/vault/vault-keyring-client.py some_playbook.yml

That will cause the 'contrib/vault/vault-keyring-client.py' script to be invoked as:

     contrib/vault/vault-keyring-client.py --vault-id my_vault_id

The previous vault-keyring.py password script was extended to become vault-keyring-client.py. It uses
the python 'keyring' module to request secrets from various backends. The plain 'vault-keyring.py' script
would determine which key id and keyring name to use based on values that had to be set in ansible.cfg.
So it was also limited to one keyring name.

The new vault-keyring-client.py will request the secret for the vault id provided via the '--vault-id' option.
The script can be used without config and can be used for multiple keyring ids (and keyrings).

On success, a vault password client script will print the password to stdout and exit with a return code of 0.
If the 'client' script can't find a secret for the --vault-id, the script will exit with return code of 2 and print an error to stderr.
2017-10-13 15:23:08 -04:00
Sloane Hertel
53e476ad4e [cloud] Only enforce state (running/stopped/etc) in EC2 "exact_count" when state is specified (#31648)
fix issue in ec2 module where exact count would create new instances if the instane state is stopped or terminated
2017-10-13 14:11:07 -04:00
Sloane Hertel
90b6178e61 [cloud] Don't try to deregister an instance that isn't in the load balancer (#31660) 2017-10-13 13:59:24 -04:00
Sloane Hertel
34e2019251 [cloud] Require src parameter when aws_s3 is used with mode 'put' (#31657) 2017-10-13 13:57:40 -04:00
Sloane Hertel
e26955fc9a [cloud] Document alias for aws_s3 'overwrite' option. (#31638) 2017-10-13 13:55:24 -04:00
Kenny Gillen
1234a79349 Fix gender pronouns and the odd typo (#31709) 2017-10-13 13:52:38 -04:00
Tim Rupp
ecee475a3a This patch fixes a number of outstanding bugs and code convention problems. (#31618)
* documentation was not inline with other Ansible modules
* Python 3 specific imports were missing
* monitor_type is no longer required when creating a new pool; it is now the default.
* A new monitor_type choice of "single" was added for a more intuitive way to specify "a single monitor". It uses "and_list" underneath, but provides additional checks to ensure that you are specifying only a single monitor.
* host and port arguments have been deprecated for now. Please use bigip_pool_member instead.
* 'partition' field was missing from documentation.
* A note that "python 2.7 or greater is required" has been added for those who were not aware that this applies for ALL F5 modules.
* Unit tests were fixed to support the above module
2017-10-13 09:47:49 -07:00
Ganesh Nalawade
89428a40b3 Validate parse_cli filter inputs (#31293)
* Validate parse_cli filter inputs

Fixes #30517

*  Add check to validate input is of type string
*  Add check to confirm template file exist

* Update error message for parse_cli_textfsm invalid template path

* Add input validation for parse_cli_textfsm filter
2017-10-13 21:26:24 +05:30
Katerina Koukiou
8d4c059275 cloud: ovirt: Add ovirt_disk_facts module (#30422) 2017-10-13 10:32:41 -04:00
Abhijeet Kasurde
a047fe0e4c Correct usage for shutil.rmtree (#31541)
* Correct usage for shutil.rmtree

Fix adds correct usage of shutil.rmtree in git module

Fixes: #31225

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Include archive tests so they get run

* Use new include syntax

* Cleanup syntax on git tests

- use multi-line YAML
- remove unneeded {{ }} around vars in conditionals
- remove unneeded quotes
- add task file name to task names for easier troubleshooting when things fail

* Make archive tests work for RHEL/CentOS 6

The older versions of Jinja2 in RHEL/CentOS 6 required assertion tasks using the map filter to be skipped.

The older version of git required gzip compression to be skipped on RHEL/CentOS 6.

* Account for ansible_distribution_major_version missing
2017-10-13 10:30:15 -04:00
James Molet
42deaf2c71 updating argument validation for activation keys to match subscription-manager command line, fixes #27283 (#30236) 2017-10-13 08:59:49 -04:00
Kevin Burke
434e9e1d8f Un-nest nested if statements (#19190)
Easier and clearer to write

if a and b:
    foo()

than

if a:
    if b:
        foo()
2017-10-13 08:32:59 -04:00
Clemens Weiß
2a987f59d2 Update Zabbix maintenance if it already exists to set new period, hosts etc. (#24371)
* Update Zabbix maintenance if it already exists to set new period, hosts etc.

* Whitespace
2017-10-13 13:30:15 +02:00
Lujeni
91ab88dac7 pip: Use chdir directive in the venv path (fixes #25122) (#26865) 2017-10-13 12:39:47 +02:00
rahushen
046d430a26 Fixes #31056 (#31057) 2017-10-13 10:38:44 +05:30
Ryan Brown
e0c2b6bbb4 Rename ssm_parameter_store module and ssm lookup to be prefixed with aws (#31662) 2017-10-13 13:52:10 +10:00
Tim Rupp
381b18fd80 Adds a refactored bigip_monitor_http module. (#30998)
This patch refactors the bigip_monitor_http module to use REST
instead of SOAP. It additionally adds unit tests and current F5
code conventions.

Integration tests can be found here
* https://github.com/F5Networks/f5-ansible/blob/devel/test/integration/bigip_monitor_http.yaml
* https://github.com/F5Networks/f5-ansible/tree/devel/test/integration/targets/bigip_monitor_http/tasks
2017-10-12 17:02:05 -07:00
Brian Coca
12c8dd1893 config tests
also a couple of fixes to manager
2017-10-12 19:26:39 -04:00
James Mighion
50052b3d70 Adding a cli transport option for the bigip_command module. (#30391)
* Adding a cli transport option for the bigip_command module.

* Fixing keyerror when using other f5 modules. Adding version_added for new option in bigip_command.

* Removing local connection check because the F5 tasks can be delegated to any host that has the libraries for REST.

* Using the network_common load_provider.

* Adding unit test to cover cli transport and updating previous unit test to ensure cli was not called.
2017-10-12 15:07:15 -07:00
Samprita Hegde
6d16739926 [cloud] Support changeset_name parameter on CloudFormation stack create (#31436) 2017-10-12 15:44:06 -04:00
Ted Timmons
bc1e3d22c2 [cloud][docs] Document default/required 'state' in CloudFormation module (#31642)
* fix documentation to match default/required status of 'state'

* add 'choices'
2017-10-12 15:31:42 -04:00
Brian Coca
341db894f5 update delegated var fetching for new 'loop' (#31588)
* update delegated var fetching for new 'loop'

* mixed loop/terms
2017-10-12 14:57:38 -04:00
Pilou
840a57a4ed s3_sync: fix broken import (#31460) 2017-10-12 20:48:05 +02:00
Brian Coca
83dec70ad8 validate that existing dest is valid directory 2017-10-12 14:19:58 -04:00
Ondra Machacek
8dd1267e6b ovirt: Add new api facts module (#28875)
* ovirt: Add new api facts module

* Simplify boilerplate and add Python 3 import
2017-10-12 13:57:33 -04:00
Brian Coca
1bf09a7d84 warn on bad keys in group 2017-10-12 12:02:11 -04:00
Kairo Araujo
8415d2e60a new module: AIX rootvg backup image using mksysb (#30460)
* new module: AIX rootvg backup image using mksysb

This module is simple but very useful for AIX system
administrators. Easy to construct playbooks to generate
and manage rootvg backups using mksysb tool.

* added module_check, pep8, non-written convention

- implemented module_check;
- fixed some pep8 and non-written convention

* removed parameters as global variables and doc

Moved global variables parameters to inside main()
Better doc format for mentioned files
2017-10-12 11:58:43 -04:00
sethp-nr
402b095841 wait_for: treat broken connections as "unready" (#28839)
* wait_for: treat broken connections as "unready"

We have observed the following condition while waiting for hosts:

```
Traceback (most recent call last):
  File "/var/folders/f8/23xp00654plcv2b2tcc028680000gn/T/ansible_8hxm4_/ansible_module_wait_for.py", line 585, in <module>
    main()
  File "/var/folders/f8/23xp00654plcv2b2tcc028680000gn/T/ansible_8hxm4_/ansible_module_wait_for.py", line 535, in main
    s.shutdown(socket.SHUT_RDWR)
  File "/usr/local/opt/python/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
socket.error: [Errno 57] Socket is not connected
```

This appears to happen while the host is still starting; we believe something is
accepting our connection but immediately resetting it. In these cases, we'd
prefer to continue waiting instead of immediately failing the play.

This patch has been applied locally for some time, and we have seen no adverse
effects.

* wait_for: fixup change

We were missing an import and a space after the `#`
2017-10-12 11:37:20 -04:00
Mihai Moldovanu
79f2cfbcf9 etcd.py module improved . added posibility to configure from playbook… (#18580)
* etcd.py module improved . added posibility to configure from playbook etcd server to query

* Update playbooks_lookups.rst

documented etcd lookups

* Update playbooks_lookups.rst

* Update playbooks_lookups.rst

* Update playbooks_lookups.rst

* Update playbooks_lookups.rst

* Update playbooks_lookups.rst

* Fixed errors reported by ansibot

* Update playbooks_lookups.rst

* Update playbooks_lookups.rst

* Copy edits.
2017-10-12 15:55:59 +01:00
Zubair Lutfullah Kakakhel
4034630625 vmware_vm_facts: Add error check for config.vm (#31629)
Add a simple check to see if vm.config exists before looking for
vm.config.hardware
2017-10-12 10:32:06 -04:00
Brian Coca
b68fe2cd23 highlight dynamic parts of error msg 2017-10-12 10:00:06 -04:00
Ondra Machacek
f5c0e2895b ovirt_vms: Wait for VM disks when adding VM (#31468)
Fixes: https://github.com/ansible/ansible/issues/30515
2017-10-12 08:56:13 -04:00
Ondra Machacek
e5c0958dbb ovirt_templates: Fix exlusive parameter (#31470) 2017-10-12 08:49:38 -04:00
Ondra Machacek
23c47a65c1 ovirt_networks: Add label to network (#31517) 2017-10-12 08:49:30 -04:00
Ondra Machacek
c71394a13a ovirt_clusters: add alias performance_preset for memory_policy (#31523) 2017-10-12 08:49:22 -04:00
Anil Kumar Muraleedharan
de53e280f1 Adding enos/__init__.py (#31580)
##### SUMMARY
Creating the modules for enos from Lenovo.

##### ISSUE TYPE
- New Module Pull Request

##### COMPONENT NAME
<!--- Name of the module/plugin/module/task -->
lib/ansible/modules/network/enos/__init__.py

##### ANSIBLE VERSION
ansible 2.5.0
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules',
u'/usr/share/ansible/plugins/modules']
ansible python module location =
/usr/local/lib/python2.7/dist-packages/ansible-2.5.0-py2.7.egg/ansible
executable location = /usr/local/bin/ansible
python version = 2.7.6 (default, Oct 26 2016, 20:30:19) [GCC 4.8.4]

##### ADDITIONAL INFORMATION

This is an effort to create modules for enos based switches from Lenovo.
2017-10-12 13:34:36 +01:00
Anil Kumar Muraleedharan
1c85ff0e68 Update base.yml to add enos from lenovo (#31565)
* Update base.yml to add enos from lenovo

* Update base.yml
2017-10-12 13:34:08 +01:00
Anil Kumar Muraleedharan
295a0e9225 Create document fragment for enos modules (#31512) 2017-10-12 13:33:04 +01:00
Anil Kumar Muraleedharan
ead00e9cae create terminal plugin for enos modules (#31510) 2017-10-12 13:32:27 +01:00
Anil Kumar Muraleedharan
fa9421ef98 create cliconf plugin for enos - enos.py (#31509) 2017-10-12 13:31:57 +01:00
Anil Kumar Muraleedharan
34cc563727 Create action file enos.py (#31508)
* Create action file enos_facts.py

* Update and rename enos_facts.py to enos.py

* Taking chances on Dealing with Unstable issues

* Removing blank space/ white line
2017-10-12 13:31:23 +01:00
Trishna Guha
c002b47a79 fix nxos_vlan unexpected deprecation warning (#31624)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-12 12:00:35 +05:30
Abhijeet Kasurde
9d811a34c4 pep8 fixes for vmware modules (#31537)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-10-12 07:50:05 +02:00
René Moser
540d53327d cs_instance_facts: fix pep8 (#31606) 2017-10-12 14:00:14 +10:00