Compare commits

..

4721 Commits

Author SHA1 Message Date
8a6ebd1e8d New release v2.6.3 2018-08-16 17:47:36 -07:00
68bdea317f Prevent data being truncated over persistent connection socket (#43885)
* Change how data is sent to the persistent connection socket.

We can't rely on readline(), so send the size of the data first. We can
then read that many bytes from the stream on the recieving end.

* Set pty to noncanonical mode before sending

* Now that we send data length, we don't need a sentinel anymore

* Copy socket changes to persistent, too

* Use os.write instead of fdopen()ing and using that.

* Follow pickle with sha1sum of pickle

* Swap order of vars and init being passed to ansible-connection

(cherry picked from commit f221105882)
2018-08-14 07:50:25 -07:00
d5e278e471 Fix typos in 2.6 changelog (#44076)
* Fix markdownism in changelog

* Fix typo in vmware remove vm scenario changelog entry
2018-08-14 07:50:06 -07:00
76392c3ddd inventory plugins: add test about config API usage (#41888) (#43040)
* inventory plugins: add test about config API usage (#41888)

* Check get_option method works with inventory plugins

This use case is already tested by some cloud inventoty plugin but
these tests are slow and aren't always executed, hence this new quick
test.

* AnsiblePlugin: Fix typo in docstring

(cherry picked from commit 06f5e49dfb)

* Update aliases
2018-08-13 17:23:10 -07:00
dabd81deba [stable-2.6] Only print warning when ansible.cfg is actually skipped (#43583)
Only print warning when ansible.cfg is actually skipped

* Also add unittests for the find_ini_config_file function
* Add documentation on world writable current working directory
  config files can no longer be loaded from a world writable current
  working directory but the end user is allowed to specify that
  explicitly.  Give appropriate warnings and information on how.

Fixes #42388
(cherry picked from commit 30662bedad)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-08-13 15:26:52 -07:00
d49240a619 Azure module bugfix backport (#43808)
* Fix nsg cannot add rule with  purge_rules false (#43699)

(cherry picked from commit 88a738b0ba)

* Create azure_securitygroup_fix_adding_rule.yaml

* azure_rm_loadbalancer_facts.py: list() takes at least 2 arguments fix (#29046) (#29050)

(cherry picked from commit d1d08304f9)

* azure_rm_deployment: collect tags from existing Resource Group (#26104)

(cherry picked from commit 6741e98c04)

* add change log
2018-08-13 15:22:00 -07:00
c2aadff306 fixing aiuth source (#42923)
(cherry picked from commit 750774d768)
2018-08-13 15:19:43 -07:00
1b2c691980 [2.6] Fix invocation output. Fixes #43447 (#43542) (#43646)
* [2.6] Fix invocation output. Fixes #43447 (#43542)
(cherry picked from commit 4094b01)

Co-authored-by: Matt Martz <matt@sivel.net>

* Add changelog for #43542
2018-08-13 14:21:33 -07:00
9ee6651a42 Updated release and maintenance page (#42613) (#43567)
* Updated release and maintenance page (#42613)

(cherry picked from commit ccb2e9d32f)

* underscore not dash for links
2018-08-13 13:40:21 -07:00
decbe2acd8 CloudStack: Fix typos in the Guide (#43303)
(cherry picked from commit d94cc3568a)
2018-08-13 13:38:57 -07:00
1b2d7571a7 Backport/2.6/40872 (#43396)
* Convert valid_date to bytes for conversion (#40872)

Fixes: #40523

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit b310b278be)

* 40872: Add fragment changelog
2018-08-13 13:35:49 -07:00
7e835bf60a Fix for creation and removal of swap record in fstab (fixes #42706, #31437 and #30090) (#42837) 2018-08-13 13:34:26 -07:00
dc477a3882 [2.6] \r does not round-trip the local socket, escape and restore on the other side (#43507)
(cherry picked from commit 9169daa)

Co-authored-by: Nathaniel Case <this.is@nathanielca.se>
2018-08-13 13:32:07 -07:00
c687b1b874 nicer error message on multiprocessing fail
fixes #43090

(cherry picked from commit 21fc6a0c38)
2018-08-13 13:31:16 -07:00
f33ec9fc0a fix issue [ get_url does not change mode when checksum matches ] (#43342)
* fix  #29614

* add change log for #43342

* Cleanup tests and add tests for this scenario


Co-authored-by: ptux
(cherry picked from commit 68683b4c73)
2018-08-13 13:30:09 -07:00
cd876cf9e8 meraki_snmp - Added full response documentation for normal responses (#42488)
* Added full response documentation.

* Changed always to success for responses

(cherry picked from commit 0c59a3bc48)
2018-08-13 13:28:13 -07:00
41b88cc279 Fix bug #32437 (#38166)
(cherry picked from commit 71952a0aad)
2018-08-13 13:27:39 -07:00
bc3db437e8 VMware: handle pnic in proxyswitch
Fixes: #42943

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

(cherry picked from commit f2640d3394)
2018-08-13 13:26:12 -07:00
1631d1a30f Corrects module name in net_get module doc (#43816)
(cherry picked from commit 8662e87b1a)
2018-08-13 13:25:27 -07:00
178afb1497 Fix link description typo in tools documentation (#43828)
(cherry picked from commit 4a0b32083c)
2018-08-13 13:24:39 -07:00
53327649af Fix introduction version for parameter "local" in module "group" (#43719)
Parameter "local" has been introduced to the "group" module in version 2.6, not 2.5.
2018-08-13 13:23:43 -07:00
53a96e36b9 win_domain modules: ensure Netlogon service is still running after promotion (#43703)
(cherry picked from commit 7b1cc11685)
2018-08-13 13:22:00 -07:00
a0061e72fa [stable-2.6] Fix the local and ssh plugins for a cornercase retrying a syscall
The bundled selectors library which is used by the local and ssh
connection plugins had a bug which caused a traceback in a cornercase.
If selectors were in use and a syscall was interrupted, selectors would
attempt to restart the syscall after the interrupt was processed.  if
the attempt determined that the timeout for running the syscall had
already expired, the code attempted to raise OSError.  The raise was
using a Python3-ism and needed to be ported to work on Python2.

Fixes #41630
(cherry picked from commit e2e44f8)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-08-13 13:19:53 -07:00
4cbf048996 Only template values in vars_prompt rather than all vars (#39304)
This allows the use of variables in vars_prompt fields but allows variables entered in the prompt to affect play vars rather than throwing an undefined error.

Add tests for vars_prompt

(cherry picked from commit 6d38167d49)
2018-08-13 13:18:30 -07:00
3caa736403 Resolves bug where existing host_record was deleted when existing record name is used with different IP (#44088)
* Resolves bug where existing host_record was deleted when existing record name is used with different IP (#43235)

* resolves bug 42937

* resolves integration test failure

* resolves integration test failure

* resolves integration test failure

(cherry picked from commit fd4e774cec)

* changelogs
2018-08-13 13:17:17 -07:00
c5b49fe4a3 Fix actions and wait in os_server_action module (#43504)
* Fix call to sdk.iterate_timeout in os_server_action

* Correct indentation for several actions in os_server_action

(cherry picked from commit d5662df695)
2018-08-13 13:16:24 -07:00
0730eae41b Fix path handling in hacking/env-setup.
(cherry picked from commit 0392dbeba1)
2018-08-13 12:15:22 -07:00
afa818acb2 refine aks document (#43810)
(cherry picked from commit 6dce96e1d0)
2018-08-13 09:26:02 -07:00
9794e5b610 openvswitch_db : Handle column value conversion and idempotency in no_key case (#43914)
* openvswitch_db : Handle column value conversion and idempotency in no_key case (#43869)

* change column value to string. handle idempotency in no key case

* fix unit test failures in baseline

(cherry picked from commit 8eaebf86b6)

* change column value to string. handle idempotency in no key case
2018-08-10 17:07:01 -07:00
71eabf134f Fix download URL for yum integration test.
(cherry picked from commit 3b693be80f)
2018-08-09 14:46:32 -07:00
39182552ef improve 'service' integration tests (#43655)
* service tests: check that daemon is really running

(spoiler: it isn't)

* service tests: add PIDFile directive in systemd unit

* service tests: check 'changed' too

* service tests: fix indentation & use changed test

* service tests: #16694 has been fixed a long time ago

* service tests: refactor

- always execute cleaning tasks
- move tests tasks in a dedicated file

* service tests: add test for #42786

* service tests: display value of ansible_service_mgr

* service tests: allow to run tests twice in a row

stop & disable ansible test service

* service tests: 'pattern' value must be a substring

'pattern' parameter is poorly named

* service tests: check ansible_test service status

* service tests: test daemon must handle SIGHUP

because 'initctl reload' sends SIGHUP, otherwise test daemon stops when
receiving the signal

* service tests: remove upstart override file too

and check that files were removed using raw module and stat command

(cherry picked from commit c5f37f6bd6)
2018-08-09 10:41:54 -07:00
516ed4d7bc [stable-2.6] Fix 2 issues in sysvinit module (backport/2.6/42786) (#43831)
* Fix 2 issues in sysvinit module (#42786)

* Do not compare result to unset parameter in sysvinit module

* Fix misformed command in sysvinit module

* Small None-comparison style fix in sysvinit module

(cherry picked from commit f26272a492)

* Update changelog
2018-08-08 09:53:28 -07:00
6f529a20b3 Fix ini variables for netconf and network_cli connections (#43601)
* Fix netconf ini variable names (#43130)

* Fix ini variables for netconf and network_cli connections
2018-08-08 15:58:54 +02:00
f3c3c99642 Fix add member failure 2018-08-06 09:34:57 -07:00
9ad21fbfb5 Forgot to include validations. 2018-08-01 14:14:03 -07:00
ca1916a43f Update nclu.py (#40369) (#43364)
* Update nclu.py
Added NCLU BGP Unnumbered Example
+label: ansible/ansible#40323
* Adding AS number example
(cherry picked from commit a9dc79e07b)
2018-07-31 21:40:26 -05:00
4f73a24b06 cherry-pick and fixed conflicts -pr43116 (#43513) 2018-07-31 21:38:10 -05:00
ba801be6a6 Add AnsibleModule signature schema, and fix associated issues (#43512) (#43516)
* Add AnsibleModule signature schema, and fix associated issues (#43512)

(cherry picked from commit 01c0446cb5)

* Address additional module issues
2018-07-31 15:51:53 -07:00
fc21507a30 Update openstack inventory script to keep basic functionality Backport/2.6/43432 (#43465)
* Update openstack inventory script to keep basic functionality (#43432)

re-applies commit 6667ec4474 which
fixed the plugin to the script so that it will work with current
ansible-inventory.

Also redirect stdout before dumping the ouptput, because not doing
so will cause JSON parse errors in some cases.
(cherry picked from commit fa45c44026)

* fixed the plugin to the script so that it will work with current
2018-07-31 08:28:28 -07:00
d067de5206 Update Openstack dynamic inventory reference (#41459) (#43455)
* Update Openstack dynamic inventory link

* Add note for change of script name

* Change name of script to prevent Python module import errors.

Fixes #41562

(cherry picked from commit 8d194fa5f7)
2018-07-31 10:21:17 -05:00
17ecc3f093 New doc guide for GCP (#41753) (#43453)
* New doc guide for GCP (#41753)
(cherry picked from commit 2916adc88a)

* fixes broken link (#43458)
(cherry picked from commit 5fa8747af3)
2018-07-31 10:07:57 -05:00
6edc740614 Update JSON Query filter examples (#42432) (#43456)
* Update JSON Query filter examples

Correct syntax on one example
Add more examples of escaping
Change example to show joining list to string

(cherry picked from commit 7b0dea45e9)
2018-07-31 09:28:32 -05:00
61901c35e1 document rescue vars (#43101) (#43457)
(cherry picked from commit c809500c79)
2018-07-31 09:26:42 -05:00
af7ea01645 Document more tools (#43053) (#43454)
* Document more tools (#43053)
(cherry picked from commit 3ab9030f05)

* Update with Emacs info (#43450)
(cherry picked from commit d79027b77f)
2018-07-31 09:25:47 -05:00
4c0d1798b4 Fix docs typo modules_intro.rst (#40835) (#43452)
Fixed typo in modules_intro.rst.

+label: docsite_pr
(cherry picked from commit f785bf3a9c)
2018-07-31 09:24:44 -05:00
7a6fc1d5a8 Update Ansible release version to 2.6.2.post0. 2018-07-28 00:32:12 -07:00
c997811f45 New release v2.6.2 2018-07-27 16:18:51 -07:00
aee1d42fe7 Correcting conditionals looping (#43331) (#43346)
* Correcting conditionals looping (#43331)

Empty conditionals would not break out of the loop, causing every command to be run for the same number of times as retries is defined (10 by default)

(cherry picked from commit e215f842ba)

* Update changelog
2018-07-27 08:06:15 -07:00
460183ce47 Error on empty group/host name (#42584)
* error on false host/group name

(cherry picked from commit 12a8363fae)
2018-07-27 08:03:14 -07:00
0aa5d8ed45 fixes #42042
do not create group with region name if it is not given
Backport https://github.com/ansible/ansible/pull/42939

(cherry picked from commit d3f53b4b9f6167c359dae1069cb71eb10d00afc0)
2018-07-27 08:02:25 -07:00
b0a4627975 [stable-2.6] ensure 'text' source assumptions (#42522) (#43341)
* [stable-2.6] ensure 'text' source assumptions (#42522)

* ensure 'text' source assumptions.
(cherry picked from commit 937e710485)

Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>

* Remove piece of bugfix that depends on newer feature
2018-07-26 21:54:08 -07:00
bc49055f28 Revert "[stable-2.6] ensure 'text' source assumptions (#42522)"
This reverts commit c0e7f890fb.
2018-07-26 20:15:12 -07:00
0bb62437f8 handle connection error exception 2018-07-26 17:50:24 -07:00
171c6fcf4d nxos_facts module and nxos cliconf fix stable-2.6 (#43180)
* Refactor nxos cliconf get_device_info and add requirements for JSON structured output support in nxos_facts module (#42089)

* nxos_facts requires JSON structured output support

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

* refactor get_device_info for legacy devices

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

* update additional logic

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 0e05425b32)

* fix regex cliconf nxos (#42288)

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit df8ad8ebf9)

* get_device_info nxos zero or more whitespace regex (#43178)

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit dd6ef3355f)

* warning message improved (#42969)

(cherry picked from commit bea8e0200c)

* Add text output along with structured output in nxos_facts (#42886)

* nxos_facts to use default output instead of structured output

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

* fix shippable error

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

* nxos_facts refactor

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

* Add structured output back

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 1d5f881f5c)

* changelog

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-07-26 17:48:16 -07:00
953cd53f08 Special case project creation so that it is possible (#42132)
(cherry picked from commit 9eccc96586)
2018-07-26 17:45:27 -07:00
134ed24474 Properly format API key when set in an enviroment variable (#42202)
(cherry picked from commit 0421305254)
2018-07-26 17:45:27 -07:00
18ef94d56c Use top level values as defaults if metadata is not provided (#42277)
(cherry picked from commit 4f63134d78)
2018-07-26 17:45:27 -07:00
8a964d4052 Fix docker_image archive features to work with Python 3 2018-07-26 17:43:39 -07:00
569c045361 [AWS] Fix SSM Parameter Store module when description is missing (#43020)
(cherry picked from commit 07927edfac)
2018-07-26 17:42:34 -07:00
2267ba2f05 Only report change when home directory is different on FreeBSD (#42865)
* Only report change when home directory is different

Add tests with home: parameter

Have to skip macOS for now since there is a bug when specifying the home directory path for an existing user that results in a module failure. That needs to be fixed in a separate PR.

(cherry picked from commit 0ca61e9d87)
2018-07-26 17:41:59 -07:00
e288c23a18 Fix example of nmap plugin (#42925)
(cherry picked from commit e756ef8265)
2018-07-26 17:41:05 -07:00
dea07afdae Python3: compare bytes with bytes and strings with strings. (Fixes #42677) (#42878) 2018-07-26 17:39:37 -07:00
c622cc6509 better error messasge (#42770)
* better error messasge

(cherry picked from commit 9217fbb7dd)
2018-07-26 17:36:04 -07:00
26e3f61dbf remove dupe entries
(cherry picked from commit 18aa87803f)
2018-07-26 17:35:13 -07:00
a0138e5461 Fix multiple var files combining (followup to #36357)
(cherry picked from commit 2e62e36590)
2018-07-26 17:34:27 -07:00
49d81006df sysvinit: Fix for false changed messages (#42956)
(cherry picked from commit e129616ba6)
2018-07-26 17:33:02 -07:00
f1a0918ad3 Eos subnet overlap fix (#43023)
* Detect overlapping subnet & provide better errors

(cherry picked from commit dba975470d)
2018-07-26 17:32:03 -07:00
ae45488ba2 Fixes #41549 (#41551)
* Fix_module_correction
(cherry picked from commit 1152f86ba1)
2018-07-26 17:31:16 -07:00
ee62c8ffbc Actually fix eos_facts feature detection 2018-07-26 17:30:03 -07:00
fb6ef26e39 fix typo security_protocols 2018-07-26 17:28:52 -07:00
35da8e8a04 move the TLS detection block of win_url before creating WebRequest 2018-07-26 17:28:52 -07:00
3e9a390809 win_user: use different method to validate credentials that does not rely on SMB/RPC (#43059)
* win_user: use different method to validate credentials that does not rely on SMB/RPC

* Use Add-Type as SetLastError on .net reflection not working on 2012 R2

(cherry picked from commit 04431216e7)
2018-07-26 17:27:28 -07:00
e84931b9c2 don't assume all delegation subkeys exist (#43032)
* don't assume all delegation subkeys exist

fixes #43026

* add tests

(cherry picked from commit cdc762dd9e)
2018-07-26 17:25:46 -07:00
8a91c36d64 also get checksum on 'any' if it is a file
fixes #42785

(cherry picked from commit 0718a53b07)
2018-07-26 17:25:02 -07:00
a0cf6d7930 add example using peer keepalive vrf and delay restore (#41111)
* add example using peer keepalive vrf and delay restore

<!--- Your description here -->
add example using peer keepalive vrf and delay restore
+label: docsite_pr
+label: issue ansible/community#311

* Update nxos_vpc.py

update task name to include "existing"

(cherry picked from commit d6fb00e797)
2018-07-26 17:24:27 -07:00
e0bb304f85 Fix ssl_version default value. (#42955) 2018-07-26 17:23:50 -07:00
c0e7f890fb [stable-2.6] ensure 'text' source assumptions (#42522)
* ensure 'text' source assumptions.
(cherry picked from commit 937e710485)

Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
2018-07-26 17:21:35 -07:00
7ea879ee18 cherry-picked with manually resolved conflicts from 8759d97071 (#43048) 2018-07-24 14:15:42 -05:00
1ae5e5a347 fixed typo (#42900) (#43028)
(cherry picked from commit 1900635409)
2018-07-24 14:12:50 -05:00
880882bfd4 Update Shippable integration test groups. (#43118)
* Update Shippable integration test groups.
* Update integration test group aliases.
* Rebalance AWS and Azure tests with extra group.
* Rebalance Windows tests with another group.

(cherry picked from commit 4e489d1be8)
2018-07-24 09:55:27 -07:00
4b7925dfd4 Fix win_reboot test and mark win_uri unstable.
(cherry picked from commit 547f11ad8f)
2018-07-23 18:29:10 -07:00
8c829778d1 Docker modules: improve documentation on docker vs. docker-py Python package requirements (#42457)
* Make sure all docker-py/docker requirements are listed, and clarify about docker vs. docker-py.

* Adjusting changes made in #40839.
2018-07-17 17:00:56 -07:00
26be841b23 vultr.py: fix env var handling (#42659) 2018-07-17 16:52:59 -07:00
d9f5eb69d5 [2.6] Update ios tests (#42509) (#42516)
* [2.6] Update ios tests (#42509)

* 192.168.0.1/24 conflicts with management IP

* Images don't have the hostnames we expect
(cherry picked from commit 399d13d)

Co-authored-by: Nathaniel Case <this.is@nathanielca.se>

* ios test cleanup pt 2 (#42570)

* Remove local from ios_config to avoid needing to add provider

* ios_smoke should test all with local to pick up the slack

(cherry picked from commit 381263ad99)
2018-07-16 18:18:30 -07:00
be411bc9ba meraki_admin - Added full return documentation for normal responses (#42487)
* Added full return documentation for normal responses

* Changed returned for responses

- Old responses were saying always returned, should have been success
or something more refined

(cherry picked from commit 5960b215bb)
2018-07-16 18:08:45 -07:00
b0dae4f90e Documentation: show non-string non-iterable defaults for choices (#40… (#42075)
* Documentation: show non-string non-iterable defaults for choices (#40212)

* Also marking non-string defaults.

* Adding list filter from #37517 to plugin_formatter.

* Simplifying list test.

* Redistribute imports

(cherry picked from commit 0752dc12b7)

* for 2.6 compatibility, removes dependency on collections.py, take two

* fix blank line error
2018-07-16 18:07:03 -07:00
498aca834e VMware: Remove VM using vmware_guest (#42100)
This adds scenario guide for removing VM using vmware_guest module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 6339e37abd)
2018-07-16 18:04:26 -07:00
31a425d26c Fix pause module so it does not stack trace when redirecting stdout. (#42217)
* Use separate variables for stdin and stdout file descriptors

* Do not set stdout to raw mode when output is not a TTY

(cherry picked from commit 1d1595b990)
2018-07-16 18:03:18 -07:00
114fa9dd08 Changing example code block language from yaml to yaml+jinja. (#40365)
(cherry picked from commit 9f84c09bf3)
2018-07-16 17:57:25 -07:00
9bd219eee2 Document module links (#42308)
(cherry picked from commit 6366df700d)
2018-07-16 17:56:36 -07:00
7906087b0c Cherry-Picked fix for 40782 2018-07-16 17:55:59 -07:00
9edd51928f efs_facts: improve performance by reducing the number of api calls (#36520)
* efs_facts: improve performance by reducing the number of api calls

* Remove efs_facts tests from running in CI
(cherry picked from commit 0f612d1b76)
2018-07-16 17:54:28 -07:00
69a36a3fa7 Fix remote_tmp when become with non admin user (#42396)
* Fix tmpdir on non root become

 - also avoid exception if tmpdir and remote_tmp are None
 - give 'None' on deescalation so tempfile will fallback to it's default behaviour
   and use system dirs
 - fix issue with bad tempdir (not existing/not createable/not writeable)
   i.e nobody and ~/.ansible/tmp
 - added tests for blockfile case

* Revert "Temporarily revert c119d54"

This reverts commit 5c614a59a6.

* changes based on PR feedback and changelog fragment

* changes based on the review

* Fix tmpdir when makedirs failed so we just use the system tmp

* Let missing remote_tmp fail

If remote_tmp is missing then there's something more basic wrong in the
communication from the controller to the module-side.  It's better to
be alerted in this case than to silently ignore it.

jborean and I have independently checked what happens if the user sets
ansible_remote_tmp to empty string and !!null and both cases work fine.
(null is turned into a default value controller-side.  empty string
triggers the warning because it is probably not a directory that the
become user is able to use).

(cherry picked from commit 8bdd04c147)
2018-07-16 17:53:06 -07:00
27e57e41d1 Version must be quoted (otherwise it is printed as 2.1) (#42496) 2018-07-16 17:52:04 -07:00
c3f2e4679c openvswitch_db: Make 'key' parameter optional (#42110)
The OVSDB schema consists of typed columns. The 'key' parameter is
required only for columns with type of a 'map'. This patch makes 'key'
an optional parameter to allow setting values for other column types
like int.

Fixes #42108

(cherry picked from commit 26b0908270)
2018-07-16 17:49:54 -07:00
11d2d3da55 Make sure we are comparing bytes extensions in inventory plugins (#42475)
* Ensure we are comparing text paths with extensions. Fixes #42118

* Add changelog

(cherry picked from commit abb05c98f3)
2018-07-16 17:48:57 -07:00
4bfa7f6689 Added missing type for both template and parameters variables. (#42033)
* Added missing type for both template and parameters variables.

* changed object to dict

(cherry picked from commit 133b70ff45)
2018-07-16 17:48:11 -07:00
e4e0433d2f [2.6] Fix docker container init check requirements (#42533)
* docker_container: fix init check requirements (#40839)

* docker_container: ensure 'init' is supported

Check docker-py version too.

Move API version check in docker_container module since 'init' module
parameter isn't defined by other docker modules.

docker-py supports 'init' since 2.2.0:
https://github.com/docker/docker-py/blob/2.2.0/docs/change-log.md

* docker_container: fix compat with docker-py<2.2

Exception was:
TypeError: create_host_config() got an unexpected keyword argument 'init'
fatal: [localhost]: FAILED! => {
    "changed": false,
    "module_stderr": "Traceback (most recent call last):
                        File ansible_module_docker_container.py, line 2089, in <module>
                          main()
                        File ansible_module_docker_container.py, line 2084, in main
                          cm = ContainerManager(client)
                        File ansible_module_docker_container.py, line 1704, in __init__
                            self.present(state)
                        File ansible_module_docker_container.py, line 1724, in present
                            new_container = self.container_create(self.parameters.image, self.parameters.create_parameters)
                        File ansible_module_docker_container.py, line 826, in create_parameters
                            host_config=self._host_config(),
                        File ansible_module_docker_container.py, line 932, in _host_config
                            return self.client.create_host_config(**params)
                        File lib/python3.6/site-packages/docker/api/container.py, line 157, in create_host_config
                            return utils.create_host_config(*args, **kwargs)
                      TypeError: create_host_config() got an unexpected keyword argument 'init'",
    "module_stdout": "",
    "msg": "MODULE FAILURE",
    "rc": 1
}

(cherry picked from commit 3301a0b530)

* add changelog fragment
2018-07-16 17:47:21 -07:00
44edfd96f1 meraki_network - Added proper response documentation (#42393)
* Added proper response documentation to meraki_network

* Missing colon

(cherry picked from commit c644e3da79)
2018-07-16 17:46:08 -07:00
1d1812b1a5 ovirt_affinity_lables_facts: Raise error when host/vm not found 2018-07-16 17:45:24 -07:00
f3570c2b0c win_reboot: fix 2.6 issues and better handle post reboot reboot (#42330)
* win_reboot: fix 2.6 issues and better handle post reboot reboot

* changed winrm _reset to reset

* Add handler to reset calls when .reset() throws an AnsibleError on older hosts

* Moving back to _reset to get the issue fixed

(cherry picked from commit 940d4a0e89)
2018-07-16 17:42:55 -07:00
f126eddff1 return wu result from inner job (#42647)
fixes #42423

(cherry picked from commit a5fc9a17f0)
2018-07-16 17:42:07 -07:00
25d5d10f51 Fixed regex to pick correct items (#42557)
(cherry picked from commit fa624eba29)
2018-07-16 17:41:35 -07:00
bf1a5293d4 [aws] Add missing methods to AnsibleAWSModule (#42679)
(cherry picked from commit 00c88f6497)
2018-07-16 17:40:56 -07:00
b9bff5e39a win_chocolatey: add TLSv1.2 support for install phase (#41992)
(cherry picked from commit e3521776f5)
2018-07-16 17:40:18 -07:00
26f8b67fbd nxos bugfix cherry-pick 2.6 (#42724)
* Add get_capabilities in nxapi module_utils (#42688)

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit d5e9653c96)

* add changelog

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-07-16 17:39:27 -07:00
2b87a84301 aci_bd_subnet: Support parameter scope not set
If parameter scope is not set (None) the usual handling of lists does
not apply, and should be avoided or we get an exception.
2018-07-16 17:38:37 -07:00
9e706a3ed4 win_security_policy: Allow setting a value to empty (#42051)
* win_security_policy: allow removing values (resolves #40869)

* Removing warning

* Adding test for remove policy setting

* Fixing string comparison

* Make idempotent

* Adding idempotency and diff test

* added changelog fragment

(cherry picked from commit dc32842573)
2018-07-16 17:37:59 -07:00
e3a0431c77 Cmdlets output handling 2.6 (#42721)
* fix win_unzip and win_share Powershell cmdlets output invalid JSONs (#42713)


(cherry picked from commit b2527c55c3)

* Added changelog fragment
2018-07-16 17:37:01 -07:00
56caa66290 ovirt_auth: In case of token is passed u/p is not requierd 2018-07-16 17:27:23 -07:00
c40b85d01f Backport pagination fix for cloudfront_facts (#42746)
* Fix #38038 cloudfront_facts module returns only first page of response (#38045)

(cherry picked from commit 12057de1c6)

* changelog
2018-07-16 17:26:48 -07:00
f5053506d9 Fixes #42734 - typo in update-rc.d detection
(cherry picked from commit f0463befc7)
2018-07-16 17:25:50 -07:00
cbebcc3ac8 Fix for starttls connections for notification mail module
* starttls connection usage is now adding smtp.ehlo before smtp.has_extn function.
* Fixes #42338

(cherry picked from commit 5df01abd58)
2018-07-16 17:24:27 -07:00
944161c9ea Fix fact cleaning (#42595)
* fix fact cleanup

fixes #41684

(cherry picked from commit 006f08da99)
2018-07-16 17:23:26 -07:00
e8ff717ba8 preserve delegation info on no_log (#42577)
* preserve delegation info on no_log

fixes #42344


(cherry picked from commit e115e6496f)
2018-07-16 17:21:49 -07:00
64737fea2d fix a (forgotten?) change in moving createhome -> create_home (#42711)
* fix a (forgotten?) change in moving createhome -> create_home

Fix for following bug on FreeBSD host whith user module:
```
fatal: [webssp]: FAILED! => {"changed": false, "module_stderr": "X11 forwarding request failed
Traceback (most recent call last):
  File \"/tmp/ansible_2rmlBl/ansible_module_user.py\", line 2487, in <module>
    main()\n  File \"/tmp/ansible_2rmlBl/ansible_module_user.py\", line 2426, in main
    (rc, out, err) = user.modify_user()
  File \"/tmp/ansible_2rmlBl/ansible_module_user.py\", line 1011, in modify_user
    if (info[5] != self.home and self.move_home) or (not os.path.exists(self.home) and self.createhome):
AttributeError: 'FreeBsdUser' object has no attribute 'createhome'
", "module_stdout": "", "msg": "MODULE FAILURE", "rc": 1}
```
It happenned with 'createhome' AND with 'create_home' form, with python 2.7 AND python 3.6

* Add changelog


Co-authored-by: dgeo <dgeo@users.noreply.github.com>
(cherry picked from commit ae96ba0d4f)
2018-07-16 17:21:04 -07:00
8b26e3899f Fix ios_vlan issue CP into 2.6 (#42665)
* Make ios_vlan identify vlans starting with 9 (#42247)

* Make ios_vlan identify vlans starting with 9

* Add unit test for vlan id start with 9

(cherry picked from commit 70e33ef92c)

* Added changelog for ios_vlan fix

* Fixed changelog Shippable errors

* Fix 2 for Shippable changelog errors
2018-07-16 17:13:14 -07:00
880f1d1817 [s3_bucket] import urlparse (#42474)
Fixes #42459

(cherry picked from commit 7086863c52)
2018-07-16 17:11:31 -07:00
8274fd00fc Fix NameError in pause module (#42038)
* Fix NameError in pause module

* Add comment and changelog

Co-authored-by: Jerry Chong <jchong@netbase.com>
(cherry picked from commit 42f44b24c6)
2018-07-16 17:10:48 -07:00
4b17adaf66 Temporarily switch RHEL and Windows tests to AWS.
(cherry picked from commit 11d0eb04ce)
2018-07-10 15:17:04 -07:00
7968a84e4b Fix openshift integration test requirements.
(cherry picked from commit 2fbc2abf86)
2018-07-10 10:10:50 -07:00
0c504ce2c4 Remove unwanted containers at CI job start.
(cherry picked from commit 528de5b82f)
2018-07-09 21:50:04 -07:00
edf933918d nxos and eos bugfix pick2.6 (#42291)
* fix nxos_vxlan_vtep_vni issue (#42183)

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 981c9f6a79)

* nxos CI failures bugfix (#42240)

* fix nxos_portchannel and remove deprecated param in test

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

* fix _nxos_switchport CI failures

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

* fix nxapi nxos_command test

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

* remove unsupported param nxos_smoke test

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

* fix nxos_vxlan_vtep_vni

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

* syntax error

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 805d13f287)

* Update eos_l2_interface.py (#42270)

(cherry picked from commit 51092c6ea5)

* add changelog

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

* Enforcing NXAPI default HTTP behavior (#41817)

* nxos_nxapi http default behavior

* Use nxos_nxapi module in prepare_nxos_tests

* Refactor nxos_nxapi configure test to use yaml block

* Extend nxos_nxapi https & http test cases

* Removed NXOS internal release naming

* Resolved ansibot sanity errors

* Fix typo in prepare_nxos_tests

* Address PR comments

* Shippable indicates this is no longer needed

* Add port change logic and testing

(cherry picked from commit db7300904d)

* update changelog

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-07-09 11:31:57 -07:00
9ed5e706be Fix fetching old style facts in junos_facts module (#42336) (#42351)
* Fix fetching old style facts in junos_facts module (#42336)

* Fix fetching old style facts in junos_facts module

Fixes #42298
* To fetch old style facts from junos device it requires
  login credentials in provider, hence while using
  connection=nectonf do not delete provider values
  as it might not be ignored

* Add `ofacts` as one of the options in `gather_subset`

* Minor update in documentation

* Fix CI failure

(cherry picked from commit 31dd41e4c5)

* Update changelog
2018-07-09 11:27:10 -07:00
3bec68a3b3 Backport #42013 for 2.6 - linenfile empty regexp warning (#42204)
* Add warning when using an empty regexp in lineinfile (#42013)

* Revert "Account for empty string regexp in lineinfile (#41451)"

This reverts commit 4b5b4a760c.

* Use context managers for interacting with files

* Store line and regexp parameters in a variable

* Add warning when regexp is an empty string

* Remove '=' from error messages

* Update warning message and add changelog

* Add tests

* Improve warning message

Offer an equivalent regexp that won't trigger the warning.
Update tests to match new warning.

* Add porting guide entry for lineinfile change

# Conflicts:
#	docs/docsite/rst/porting_guides/porting_guide_2.7.rst
#	lib/ansible/modules/files/lineinfile.py
#	test/integration/targets/lineinfile/tasks/main.yml

* Add porting guide info
2018-07-09 11:26:45 -07:00
1d759ffa2f Meraki module utility request() has improved error reporting (#39838)
* request() has improved error reporting
- 5xx errors show same as before
- 3xx and 4xx errors show error body

* Print body for errors greater than 300, but less than 500

* Remove trailing whitespace

(cherry picked from commit dd31dcab70)
(cherry picked from commit d75f821f0c)
2018-07-09 11:26:14 -07:00
6e479d5989 To fix the NoneType error raised in ios_l2_interface when Access Mode VLAN is unassigned (#42343)
* To fix the NoneType error raised in ios_l2_interface when Access Mode VLAN is unassigned (#42312)

* to fix the bug41657

* to fix review comment

(cherry picked from commit 828dd1a663)

* adding changelog

* renaming the changelog file name

* deleting the wrong changelog file name
2018-07-09 11:25:37 -07:00
d48fae9990 Update Ansible release version to 2.6.1.post0. 2018-07-09 11:23:50 -07:00
0f3a22cb13 add .post support to rpm/deb version munger (#42444)
(cherry picked from commit a2bc0129f0)
2018-07-09 11:23:50 -07:00
bcd724d05c allow dev and prerelease at the same time (#41464)
(cherry picked from commit 0c92b11335)
2018-07-09 11:23:50 -07:00
1a6fe6cc05 New release v2.6.1 2018-07-05 11:48:35 -07:00
e433f82fc2 callback/grafana_annotations: define validate_grafana_certs type as bool (#42318)
Fixes #42317
2018-07-05 08:39:53 -07:00
56cca2a312 Allow documentation of module options type (#42285)
* Allow documentation of module options

Pass through the `type` of a modules option so it's displayed on the
html module docs

* docs

(cherry picked from commit d962611528)
2018-07-05 08:36:17 -07:00
ffd660f2d7 Fix broken links. (#42323)
(cherry picked from commit df2e0c7c00)
2018-07-05 08:33:25 -07:00
1e427b1b34 Fix Ansible Galaxy documentation link. (#42316)
More info: https://github.com/ansible/galaxy/issues/830
(cherry picked from commit 1dafd92c8e)
2018-07-05 07:40:40 -07:00
e65f7d218d win_domain: fix typo in cmdlet call (#41993)
(cherry picked from commit 77526a5036)
2018-07-03 15:22:08 -07:00
1024f53ffd Win group membership sid refactor 2.6 (#41990)
* Refactor/fix win_group_membership to use SIDs for internal comparisons (#40725)

* refactor win_group_membership to use SIDs for comparisons instead of name parsing

* carry over previous doc cleanup changes

* remove trailing whitespace from docs

(cherry picked from commit bcb49f2575)

* Added changelog fragment
2018-07-03 15:21:21 -07:00
4cecbe81ad [stable-2.6] ignore ansible.cfg in world writable cwd (#42070)
* ignore ansible.cfg in world writable cwd
 * also added 'warnings' to config
 * updated man page template
(cherry picked from commit b6f2aad)

Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
2018-07-03 15:19:59 -07:00
25ee10cd9a [stable-2.6] Fix file module with check_mode - Fixes #42111 (#42115)
* Fix file module check_mode
(cherry picked from commit 22a6927)

Co-authored-by: Sloane Hertel <shertel@redhat.com>
2018-07-03 15:18:46 -07:00
e6aac0e1ff pamd module regression fix (#42025)
* pamd: typo fix sufficicent->sufficient

* pamd: is_valid is a property, not a method; return a tuple

* pamd: define is_valid for all PamdLine classes

* pamd: use validate() for verbose errors, define generically

* pamd: PamdRule: rule_control is always str, use _control

Fixes https://github.com/ansible/ansible/issues/41179
2018-07-03 15:09:59 -07:00
d1a92f85d2 Update changelog 2018-07-03 15:09:16 -07:00
1bf1af8dde Fix junos_config confirm commit issue (#41527)
* Fix junos_config confirm commit issue

Fixes #40626

* Due to issue in ncclient commit() method for Juniper
  device (ncclient/ncclient#238)
  add a workaround in junos netconf plugin to generate proper
  commit-configuration xml and execute it using ncclient
  generic `rpc()` method.

* Update junos_config doc

(cherry picked from commit 88b966e23b)
2018-07-03 15:09:16 -07:00
149acedf6d Corrects typos in net_get/put module docs 2018-07-03 15:08:16 -07:00
851725d72a Fix setting required options for inventory plugins - backport/2.6/42049 (#42120)
* Fix setting required options for inventory plugins (#42049)

* Fix setting required options for inventory plugins

* call set_options for yaml and script plugin

(cherry picked from commit 44e5886385)

* changelog
2018-07-03 15:07:35 -07:00
3cbf319ee7 Update supervisorctl.py (#42031)
<!--- Your description here -->

+label: docsite_pr

(cherry picked from commit 5ea414422b)
2018-07-03 15:06:15 -07:00
1f80949f96 [stable-2.6] avoid loading vars on unspecified basedir (cwd) (#42067)
* avoid loading vars on unspecified basedir (cwd)
(cherry picked from commit de0e11c)

Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
2018-07-03 15:03:52 -07:00
ed26ee73ff Restore BOOLEANS import in basic.py (#42008)
This import was removed by mistake. This is required for backward
compatibility.

Fixes: #41988

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-07-03 14:58:03 -07:00
e436806e91 Change idempotency check to be single pass (#42087)
- Previously all data between both data structures was compared
- Results in situations where updates are done when not needed
- Changes to single pass so only data in payload is compared

(cherry picked from commit 3ee3fc893d)
2018-07-03 14:57:14 -07:00
d2b447e8a1 Fixes idempotency check for partial configurations (#41941)
- Previous PR would overwrite new and existing values improperly

(cherry picked from commit 7ab3f755ce)
2018-07-03 14:55:43 -07:00
4226fb6e1a nsupdate_fix_hmac-sha384 2018-07-03 10:19:34 -07:00
975d93b4e8 nsupdate.py: Fix typo (#42209)
Signed-off-by: David Galloway <dgallowa@redhat.com>
(cherry picked from commit 9539284010)
2018-07-03 10:19:34 -07:00
587a920d50 [2.6] Add CoC and mailing lists links to PYPI
PR #42101
(cherry picked from commit fc25d28)

Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
2018-07-02 13:48:50 -07:00
f2af5e0053 Fix some broken links (#42079)
* Fix some broken links

* We now only serve via https
* redirects don't work with anchors, so update those links (devel/dev_guide)

(cherry picked from commit e9dbebfa57)
2018-06-29 15:30:49 -07:00
8ba4f23290 Format fix on VMware Guide (#41272)
* Updating format of VMware Guide: small formatting error - hyperlink to module
(cherry picked from commit 91803c6ad3)
2018-06-29 11:29:34 -07:00
84f28cbf3b VMware: Add scenario guide (#40075)
This adds a scenario guide for vmware

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

(cherry picked from commit 19ece7b740)
2018-06-29 11:29:09 -07:00
3012c3c0b8 Documentation: add parameter types, and version_added for return values and facts (#41999)
* Add types for parameters.

* Add version_added for return facts and return values.

(cherry picked from commit fb0b804988)
2018-06-29 11:28:24 -07:00
7b816a072f updates docs links to changelogs (#41289)
* updates docs links to changelogs for all versions

* updates latest 2.5 release

(cherry picked from commit e0a9a71b04)
2018-06-29 11:26:05 -07:00
fdf78dc34f Update Ansible release version to 2.6.0.dev0. 2018-06-28 19:09:28 -07:00
8ce3bd6dea New release v2.6.0 2018-06-28 14:38:38 -07:00
f91fb2ea5e Update Ansible release version to 2.6.0rc5.dev0. 2018-06-26 21:40:49 -07:00
478ab3f8b1 New release v2.6.0rc5 2018-06-26 18:33:36 -07:00
bd1ecd016b Backport #41767 for 2.6 - Skip if insertbefore is using BOF until later in the module (#41929)
* Skip if insertbefore BOF until later (#41767)

If a line match is found in the file and no regexp is specified, insertbefore would improperly try to add a line if set to BOF.

Add tests for this scenario.

(cherry picked from commit eaae1318f8)

* Add changelog fragment
2018-06-26 14:02:38 -07:00
08e016780b Backport #41860 for 2.6 - support group_by with implicit localhost (#41927)
* Use inventory.get_host instead of direct access to inventory.hosts (#41860)

* Use inventory.get_host instead of direct access to inventory.hosts. Fixes #32152

* Prevent potential side effect, by using self._inventory.localhost directly instead of get_host

(cherry picked from commit 1a2ef0922f)

* Add changelog for #41860
2018-06-26 13:49:26 -07:00
c15f99f95a Backport #41907 for 2.6 - fix password lookup loading (#41928)
* Don't import password lookup from network filters. Fixes #41874 (#41907)

(cherry picked from commit 93537425a0)

* Add changelog for #41907
2018-06-26 13:48:09 -07:00
cfb4a8236f win_iis_webapppool: do not output some cmdlet outputs (#41884)
(cherry picked from commit abfcc35e6f)
2018-06-26 13:44:38 -07:00
12d15b7dd6 [stable-2.6] Changes to support building docs with old jinja2
This commit: fa5c0282a4 relied upon
features present in Jinja-2.10 and above.  The changes here allow us to
build the *rst* with older versions of jinja2.
(cherry picked from commit ad2e8dd)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-06-26 13:43:06 -07:00
f9c17f6337 Fix rabbitmq_* integration tests (#41836)
(cherry picked from commit a8d4bf8642)
2018-06-26 13:42:19 -07:00
b42a191095 Fix docs for all test. Fixes #41956 (#41965)
(cherry picked from commit 11ce954226)
2018-06-26 13:40:13 -07:00
701d61531c Fix broken Azure dependencies in 2.6 (#41946)
* fixed requirements
* module fix
* updated test accordingly
* mysql & postgresl fixes
* upgraded databases
* removed test from ignore.txt
* updated mysql & postgresql tests
2018-06-26 13:37:23 -07:00
0f477d1318 options should be settable multiple times
(cherry picked from commit 27e3cd6e05)
2018-06-26 13:33:36 -07:00
a96f456ac2 Update Ansible release version to 2.6.0rc4.dev0. 2018-06-25 19:41:52 -07:00
9917d648e5 New release v2.6.0rc4 2018-06-25 16:22:04 -07:00
25ad5fa225 Stop displaying kinit pass input on a failure (#41882)
* Stop displaying kinit pass input on a failure

* Fixed up minor logic info and added tests

(cherry picked from commit 9b7b564d75)
2018-06-25 13:51:09 -07:00
8fafecc979 fix vars hostname fallback
also made it optimistic, rely on exceptions instead of copmlex if chains

(cherry picked from commit 11dbed1350)
2018-06-25 11:23:52 -07:00
1fe98e3066 windows dsc docs: fix missing colon in example (#41886)
(cherry picked from commit 0b2ec9b11c)
2018-06-25 10:31:18 -07:00
7cb2486fad Fix vyos_vlan aggregate issue & added tests (#41638)
* Fix vyos_vlan aggregate issue & Added tests

* Fix #2 for vyos_vlan aggregate issue

(cherry picked from commit 837c216587)
2018-06-21 18:36:51 -07:00
82b0ee21f7 exclude lookup_terms from config errors (#41740)
* exclude lookup_terms from config errors
* moved direct

(cherry picked from commit 0102e42272)
2018-06-21 18:26:39 -07:00
a3e16b1090 Marks select modules as stableinterface (#41741)
this is being required by customers so that they may adopt ansible
and F5's work in ansible.

(cherry picked from commit 58d857f235)
2018-06-21 18:23:52 -07:00
e3a1aef586 Fix wrong python keyword (followup to #36357) (#41067)
Also add tests around that code path
2018-06-21 18:19:41 -07:00
88d0e2a04a fix minor issues with debug and item labels (#41331)
* fix minor issues with debug and item labels

 - no more `item=None`, we always have a label now
 - debug should only show expected information, either msg= or the var in var=
 - also fixed method name, deprecated misleading _get_item

(cherry picked from commit 27c43daab8)
2018-06-21 16:58:57 -07:00
273fb57ea8 To fix eos_vrf failure when transport method is eapi (#41470) (#41771)
* To fix eos_vrf failure when transport method is eapi (#41470)

* resolve bug 40930

* resolve bug 40930

* to fix review comments

* to fix review comments

* reverting the changes based on review

(cherry picked from commit c989b62eef)

* adding changelog for backport
2018-06-21 16:20:46 -07:00
5e10424f31 Raise Exception in virtualbox inventory plugin
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

(cherry picked from commit 37293dec3d)
2018-06-21 16:16:54 -07:00
96896654bd added missing raise
(cherry picked from commit 89f169127b)
2018-06-21 16:16:01 -07:00
8ddb4c3b0d Backport 2.6: apt: fix apt-mark on debian6 (#41725)
* apt: fix apt-mark on debian6 (#41530)

(cherry picked from commit 2e68811c34)

* Add changelog/fragment
2018-06-21 16:15:10 -07:00
9ce55f7e94 win_updates fix when win_updates is run with async (#41756)
(cherry picked from commit 11bd3fd318)
2018-06-21 16:13:47 -07:00
4930710af2 handle groups correctly when they are 'null' (#41698)
* handle groups correctly when they are 'null'

 - even if defined as mapping but having no keys, objects shoudl still be processed correctly
 - also add ansilbe_verbosity to vars not to display in ansible-inventory

fixes #41692

(cherry picked from commit 05a49d6eb6)
2018-06-21 15:24:53 -07:00
d95cf17dd4 Scaleway inventory plugin: small improvements (#41642)
* scaleway inventory: token is mandatory

* scaleway inventory: mention exception in error

* scaleway inventory: remove print statement

* scaleway inventory: options don't need to be attr

* scaleway inventory: remove unused attr

(cherry picked from commit 3e6c76fc2e)
2018-06-21 15:16:55 -07:00
8ad8db42e3 Add proper response documentation
- Added response documentation for organizations
- Additional information is likely to be added later

(cherry picked from commit 57b589d152)
2018-06-21 15:13:37 -07:00
544c9e1f32 Remove notes since it's already specified in the doc fragment
(cherry picked from commit 12a4dd44b5)
2018-06-21 15:12:18 -07:00
933ca5a41b Improved support for parameter testing and checks for org_id (#41517)
(cherry picked from commit cccaf951fa)
2018-06-21 15:11:20 -07:00
d11a190349 [stable-2.6] Fix file state=touch not returning diff information
Fixes #41755
(cherry picked from commit 8bd245a)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-06-21 14:36:33 -07:00
3030625d1f Disable remaining failing rabbitmq_* tests.
(cherry picked from commit 5880404151)
2018-06-21 13:51:29 -07:00
79a415d4a0 Disable failing rabbitmq_plugin test.
(cherry picked from commit 00ab12dca2)
2018-06-21 12:53:53 -07:00
ed5e619083 Temporarily disable gem test on osx.
Disabled due to lack of newer TLS version support on the test system.

(cherry picked from commit dce708e63e)
2018-06-19 17:01:43 -07:00
1eeb1bbf7d Update Ansible release version to 2.6.0rc3.dev0. 2018-06-19 02:13:49 -07:00
f5a9e007ce New release v2.6.0rc3 2018-06-18 22:43:49 -07:00
6da22edb9e Fix openstack inventory script for multi-cloud case
The shift to openstacksdk left us with a bug in that when running bare
with --list, the cloud argument to get_one is None. We just need _one_
of the clouds to pull the cache settings, since they are global (yet,
we'll go back and fix this in sdk)

If it's None, just use get_all and grab the first one.
2018-06-18 15:22:15 -07:00
f58780fb28 facts: suse: Fix major version detection for SUSE (#41416)
When parsing the distribution files such as /etc/os-release, we extract
the full distribution version but not the major version. As such, the
ansible_distribution_major_version ends up being 'NA' whereas the
ansible_distribution_version contains the full version.

Before this patch we get this on openSUSE Leap 15

ansible -o localhost -m setup -a filter=ansible_distribution_major_version
localhost | SUCCESS => {"ansible_facts": {"ansible_distribution_major_version": "NA"}, "changed": false}

After this patch we get this

ansible -o localhost -m setup -a filter=ansible_distribution_major_version
localhost | SUCCESS => {"ansible_facts": {"ansible_distribution_major_version": "15"}, "changed": false}

This also fixes the Tumbleweed distribution test to report a proper
major version and also adds a test for openSUSE Leap 15.0 to avoid
potential future regressions.

Fixes: #41410
(cherry picked from commit 1737b7be3e)
2018-06-18 15:03:29 -07:00
d66dc0dcf3 [stable-2.6] Add changelog for gce_net sort fix
https://github.com/ansible/ansible/pull/41567
(cherry picked from commit ad8142fc6d)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-06-18 15:02:10 -07:00
5dd90fb752 update play_context for reset_connection (#40866)
steps taken from lib/ansible/executor/task_executor.py

fixes: https://github.com/ansible/ansible/issues/27520
(cherry picked from commit 23fbe0ce8e)
2018-06-18 15:00:51 -07:00
ec87203d4b read scaleway option after the options have been set (#41259)
(cherry picked from commit 8047d97ffc)
2018-06-18 11:20:51 -07:00
ccf2d9c8cc conflict res after patching 2018-06-18 11:18:27 -07:00
3278ef4a6b fix nxos_linkagg issue (#41550)
* fix nxos_linkagg issue

* fix shippable

(cherry picked from commit 119e6d680b)
2018-06-18 11:16:48 -07:00
1a5ba963b6 [stable-2.6] Temporarily revert c119d54
There were bugs in this that needed to be resolved.  No time to get the
fix reviewed sufficiently for 2.6.0.

We'll get this into 2.7.0 and try to get this into 2.6.1 as well.

Will need the work done in https://github.com/ansible/ansible/pull/36218
when it does get merged.
(cherry picked from commit 5c614a59a6)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-06-15 14:27:20 -07:00
bf1cc2f1f4 service_facts correct meaning of state for systemd service units (#40914)
* service_facts correct meaning of state for systemd service units

Fixes #40809

Previously this module used the commend `systemctl list-unit-files
--type=service` to query state of services but list-unit-files only
shows enabled vs disabled which is not what we want for "state"

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

* make sure to define service_name before referencing it

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-06-15 12:22:26 -07:00
f9f368f123 skip winrm unit tests if winrm is not installed (#41596)
(cherry picked from commit b01779ad18)
2018-06-15 12:21:16 -07:00
8a0f575981 [2.6] Update user module docs (#41572)
* Clarify append and groups behavior
* Document return values
(cherry picked from commit 6fa2d9a)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2018-06-15 12:20:43 -07:00
aa6954e4ee [stable-2.6] sort the port list properly (.sort() returns None)
(cherry picked from commit 63f2ad8776)

Co-authored-by: schp <schonhofen@gmail.com>
2018-06-15 12:19:58 -07:00
dcfea7d822 fix nxos edit_config for httpapi and have uniform load_config (#41358)
* fix nxos load_config for httpapi and migrate to cliconf

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

* add comment

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

* address review comment

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

* address review comment

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit f170298332)
2018-06-14 13:26:05 -07:00
09aae2e33d don't retrieve config in running_config when config is provided for diff (#41400)
* don't retrieve config in running_config when config is provided for diff

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

* fix for eos, nxos

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

* add integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 8ab0d654f3)
2018-06-14 13:26:05 -07:00
b6ec3242fd Fix typos in blocks documentation examples. (#41508)
(cherry picked from commit a4f49ed648)
2018-06-14 07:51:17 -07:00
0f50c2f1d7 fix handling of ># ending prompts for sros (#41382) 2018-06-13 14:45:41 -07:00
70f4f89178 Bkprt no log fix (#41452)
* no_log even when task_result doesn't provide key

 - now also checks task property
 - added reproducer to tests for unreachable status on item loop

(cherry picked from commit 336b3762b2)

* Add changelog entry for the no_log fix

(cherry picked from commit 5fdd101a3e)

* Tasks that are expected to fail need to begin with a special string

(cherry picked from commit a5fd86cf6d)
2018-06-13 14:45:06 -07:00
6cdc3ac057 iosxr_config crash if config has route-policy with multiple levels of… (#41490)
* iosxr_config crash if config has route-policy with multiple levels of 'ifelseif' and other caveats (#41091)

* diff in as-path-set or prefix-set

* fix caveat diff can not have last line with comma in prefix-set/as-path/community-set

* Simplify fix to include indentation before parse

* remove debugger

* route-policy diffs

* fix iosxr_config crash issue

* new changes in iosxr_config after git add

* end-policy-map and end-class-map are properly indented so match misplaced children only when end-* is at the beigining also fix pep8

* Remaining config blocks of route-policy which needs exclusion from diff. added new tests

* pylint/pep8 warnings

* Review comments , sanity test fix

* shbang warning

* remove unused import

(cherry picked from commit 2db6a8c26a)

* changelog entry

* sanity fix
2018-06-13 14:43:18 -07:00
2ef929029d Disable failing acme_account integration test.
(cherry picked from commit d6ba139713)
2018-06-12 18:12:41 -07:00
cda4b6dad1 Digital Ocean Block Storage Bug (#41431)
Fix added for Digital Ocean Volumes API change causing Ansible to recieve an unexpected value in the response.

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

(cherry picked from commit 4efe53edd5)
2018-06-12 08:27:44 -07:00
d3a9f77361 fix get existing vpc issue (#41429)
(cherry picked from commit 00ce205535)
2018-06-12 08:26:41 -07:00
36c626977c Update CHANGELOG-v2.6.rst 2018-06-12 08:26:03 -07:00
f70978c0b9 2.6 backport #41284 to fix json spelling for vyos command 2018-06-12 08:26:03 -07:00
c4f4d8c1a5 Change falied_conditions to proper spelling (#41284)
(cherry picked from commit e892646bc7)
2018-06-12 08:26:03 -07:00
28e16eaad8 Update docs on import/include tasks (#33032)
(cherry picked from commit 30da71d880)
2018-06-11 11:51:10 -07:00
9ae2050e2f Fix nxos_snapshot compare (#41386)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 1998707eda)
2018-06-11 08:34:12 -07:00
3bc9a04f86 Update Ansible release version to 2.6.0.dev0. 2018-06-08 23:33:22 -07:00
e458807129 New release v2.6.0rc2 2018-06-08 22:03:08 -07:00
4c6642debd Make admin_users only contain root and toor because admin is used for non-privileged accounts
This fixes one specific instance of failure to chown from a privileged
account:
https://github.com/ansible/ansible/issues/16052#issuecomment-384976615

Fixes #41160

(cherry picked from commit 461a2733e6)
2018-06-08 21:18:50 -07:00
b93f579ead GCP Inventory Plugin scopes fix 2018-06-08 13:05:02 -07:00
aad1940e61 changelog 2018-06-08 09:50:17 -07:00
6c505e9ef1 cherry-picked from 46886f8249 and fixed merge conflicts
Test case for missing permissions

Update aws_s3 module to latest standards

Use AnsibleAWSModule

Handle BotoCoreErrors properly

Check for XNotImplemented and NotImplemented exceptions for S3 drop-ins

Don't prematurely fail if user does not have s3:ListBucket permission

Allow S3 drop-ins to ignore put_object_acl and put_bucket_acl
2018-06-08 09:50:17 -07:00
eb672bfba3 GCP: Instance Metadata fix 2018-06-08 09:47:58 -07:00
1a673cb772 Update winrm.py (#41303)
fix the typos for winrm port

(cherry picked from commit 7fb92b6f45)
2018-06-08 09:46:30 -07:00
33f3ba18f0 Fix typeo in param name (#41287)
(cherry picked from commit effa235eb6)
2018-06-08 09:45:56 -07:00
269c60cc7a first_found: fix examples to match the code (#40821)
(cherry picked from commit 23a337918c)
2018-06-08 09:45:13 -07:00
c03373921d fix issue #41081 in azure_rm_securitygroup (#41123)
* fix issue #41081

* resolve comments

* fix lint

(cherry picked from commit 46eceba395)
2018-06-07 16:28:49 -07:00
96929acd5e normalize the resource location (#40802)
(cherry picked from commit e6e08a0174)
2018-06-07 16:28:49 -07:00
adef72393e add adfs_authority_url arg in azure_rm.py (#41071)
(cherry picked from commit bd34194ace)
2018-06-07 16:28:49 -07:00
ca992f5aba Fixes #39648 azure_rm_virtualnetwork not handling DNS settings properly on existing virtual networks (#40646)
* check nullable

* add test

* fix

* fix

(cherry picked from commit 7b9864776a)
2018-06-07 16:28:49 -07:00
3ed8300dff increase timeout for connection reset by peer issue with httpapi (#41224)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 34e4071eca)
2018-06-07 16:19:51 -07:00
b13dd0cac1 Metadata change to 'core' for 2.5 supported NIOS modules (#41244)
* changing metadata to core support

* changing metadata to core support

* changing metadata to core support

* changing metadata to core support

* changing metadata to core support

(cherry picked from commit 2c2af87b2e)
2018-06-07 16:19:12 -07:00
3fffc208f7 Better error message if the template is not utf-8 encoded (#41030)
* Better error message if the template is not utf-8 encoded

Also document this in the porting guide
(cherry picked from commit cef4d862bc)
2018-06-07 16:17:29 -07:00
97c6805d47 aws_s3: don't decrypt file before uploading - fixes #39287 (#39634)
* aws_s3: do not decrypt file before uploading to bucket

* changelog

(cherry picked from commit 387c37e255)
2018-06-07 16:16:30 -07:00
c87e26449a Backport/2.6/40856 (#41278)
* Changed request() to run json.loads() instead of module doing it
- Removed json.loads() from modules
- Removed some unreliable integration tests
- Removed self.function setting in construct_path()
-

(cherry picked from commit 0ba1e52bdd)

* PEP8 changes

(cherry picked from commit 182979ffc4)

* Remove debug line for push

(cherry picked from commit 5350dcf52c)
2018-06-07 16:15:10 -07:00
c77bcdf3a7 fix truncated list functions in ansible-doc (#41281)
* fixed incomplete refactor of instance-level plugin list var

(cherry picked from commit 25ab2a8153)
2018-06-07 15:56:31 -07:00
2e7c09e967 only add group if properly defined
also corrected skip message as this has to do with type, not name

fixes #40850

(cherry picked from commit 8e4c56d773)
2018-06-07 15:55:48 -07:00
34f08b4eb5 cherry-pick e59742eccd and resolve conflicts
[aws] Remove walrus conditional in aws_s3 module when using custom s3_url

fix aws_s3 module to use custum s3_url
2018-06-07 15:55:02 -07:00
c168cd482c cherry-picked from 89cea78e30 and fixed merge conflicts from restructuring the integration tests in devel
Fix async for aws_s3

Add a test that async is able to be used on aws_s3 tasks
2018-06-07 15:54:18 -07:00
f74312e2bd Remove changelog entry for reverted #39365 2018-06-07 15:53:25 -07:00
094c9e7a3d Revert #39365, improve error messaging (#41208)
* Revert " Update TaskInclude _raw_params with the expanded/templated path to file (#39365)"

This reverts commit 4b01b92cfe.

* Improve error messaging, catch error templating parent path

(cherry picked from commit c403f01971)
2018-06-07 15:53:25 -07:00
4a1eb1c191 Add some dots at the end of sentences (#41176)
See e.g. https://docs.ansible.com/ansible/devel/reference_appendices/config.html#default-scp-if-ssh
In the docs the list of strings is just concatenated without additional interpunctuation.

+label: docsite_pr

(cherry picked from commit edb1735ca0)
2018-06-07 15:39:19 -07:00
f52b37e94a Docs fix: ansible_group_priority defaults to 1
The docs committed in #28777 were inconsistent.
This clarifies that the default `ansible_group_priority` is `1`.[1][2]

[1] https://github.com/ansible/ansible/blob/153c9bd/lib/ansible/inventory/group.py#L40
[2] https://github.com/ansible/ansible/blob/153c9bd/lib/ansible/cli/inventory.py#L236

(cherry picked from commit 4fa2fb9c89)
2018-06-07 15:35:59 -07:00
c5484e845a fix ansible-doc regression from missing plugins (#41167)
(cherry picked from commit 087efe4232)
2018-06-07 15:33:38 -07:00
5417a373bc winrm: fix up unit tests (#41112)
(cherry picked from commit ad8e13e9f8)
2018-06-07 15:32:46 -07:00
594b81f73e Expand ios password prompt regex (#41131)
(cherry picked from commit 49fddb6f28)
2018-06-07 15:30:50 -07:00
f54b9e4dd8 Update ios_facts.py (#40928)
Account for upper/lower case match occurrences of "[Nn]umber" and "[Ss]erial"

Model Number                       : WS-C3850-12X48U
System Serial Number          :  <removed>

(cherry picked from commit 12d221152b)
2018-06-07 15:30:50 -07:00
5503285c20 Fix ec2_ami block_device_mapping volume_size to be int in 2.6 (#40938) (#41216)
* Fix ec2_ami block_device_mapping volume_size to be int in 2.5 (#40938)

* fix ec2_ami block_device_mapping size to be int

* fixed cr issues

renamed `type` to `attribute_type`
reused `new_item` instead of creating new variable `value`

(cherry picked from commit ab96a84154)

* changelog
2018-06-07 15:27:18 -07:00
db3a3ddfa9 Update Ansible release version to 2.6.0.dev0. 2018-06-05 20:40:35 -07:00
0a6c643e8e New release v2.6.0rc1 2018-06-05 19:55:46 -07:00
ddb60ce345 Implement new changelog generator.
(cherry picked from commit 70c475da6c)
2018-06-05 19:38:32 -07:00
14acce0b44 pin azure deps to exact versions
* added warnings for newer-than-expected versions
* prevent passing both api_version and profile for newer clients
2018-06-05 18:20:45 -07:00
9823432ec3 fix nxos_snapshot issues (#41034)
* fix nxos_snapshot issues

* review comments

* doc change

(cherry picked from commit 6733bffd5d)
2018-06-05 09:19:29 -07:00
25d52697af adds ansible-doc JSON plugin data dump
* used for changelog generation of new plugins

(cherry picked from commit 096d243526)
2018-06-04 18:05:48 -07:00
121139b755 Changelog fragment cleanup. 2018-06-04 17:10:44 -07:00
73b5c997f4 fix nxos_udld failing with httpapi (#41074)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 72d630b831)
2018-06-04 13:42:03 -07:00
74a56f0ca1 fix nxos_banner issue (#41026)
(cherry picked from commit b6afb77a8a)
2018-06-04 13:42:03 -07:00
e24743ff19 Fixes to ios_logging (#41029)
* Logging size may not show up in config

* This is much simpler

* Avoid repetition in tests

* Both options of buffered are optional

(cherry picked from commit 92a95368fe)
2018-06-04 13:40:34 -07:00
773fdeb6f0 ovirt: Backport of bug fixes for 2.6 (#41092)
* ovirt_vms: Fix change cd (#40939)

* ovirt_vms: Fix attaching of CD

* ovirt_vms: Fix idemptency

* ovirt_templates: Add searching by cluster (#40934)

* ovirt_templates: Add searching by cluster

* ovirt_disks: Add searching by sd and vm_name

* Fix python syntax
2018-06-04 13:39:52 -07:00
e8d8fa4e1a Fix test-module failing to validate args (#41004)
* Fix test-module failing to validate args

The test-module pass a wrong argument _ansible_tmp cause the validation failed.
Change the argument _ansible_tmp to _ansible_tmpdir to fix this.

* Add a integration test for test-module.

Prior to this change, we don't have a test for test-module.

This change ensure the correctness of test-module script.
2018-06-04 13:38:19 -07:00
1ab973c3d3 Fixes not using the parent parameter (#41102)
The parent parameter was not being used in the module. This meant
that all child profiles would use the system-defined parent instead
of the parent specified in the module

(cherry picked from commit 457c813d46)
2018-06-04 13:35:31 -07:00
fb3f0a53d9 More correct fix for status problem (#41045)
Status is not being determined right when monitors are enabled but
the state is up or down. This patch fixes it.

(cherry picked from commit 033adf8cd5)
2018-06-04 08:42:46 -07:00
205b66ee7c Don't try to reuse ansible_port, it doesn't work that way (yet?) (#41022)
(cherry picked from commit 70e3a7c9e1)
2018-06-01 12:42:20 -07:00
eedf5d6c6d Fix cache timeout behavior
(cherry picked from commit c1400ce909)
2018-06-01 12:40:30 -07:00
8d345c7cd6 Do not try to import simplejson in jsonfile.py (#40983)
With the addition on ajson.py in cbb6a7f4e8, two
new classes were created: AnsibleJSONDecoder and AnsibleJSONEncoder. These
classes are used when calling json.looads() and json.dumps().

This works fine with everything except the jsonfile.py cache plugin, which would
first try to import simplejson as json, then fall back to json. When simplejson
is installed, the load() or dump methods from simplejson are called, which then
try to use the AnsibleJSONEncoder/AnsibleJSONDecoder subclass from ajson.py.
But asjon.py imports json, not simplejson, and things blow up.

(cherry picked from commit 479b26fe31)
2018-06-01 12:39:03 -07:00
08aeeefa90 Fix error reporting on bad type for config setting
(cherry picked from commit c86fd6e2df)
2018-06-01 10:38:19 -07:00
7d3ce99a6f Use colspan on td instead of divs for hierarchical tables (#39948)
Address Firefox table-rendering issues in docs. Refactor to use colspan to provide table cells which can vary in width and indentation; the outermost has the greatest colspan, and each nested key has a colspan of one less than the parent, with padding cells for indentation.
Apply styling to table cells to get the table height to work without hacks or browser-specific
styling.  Simplify the markup and CSS by removing extra divs. Use two passes over the options, return values, and return facts in the Jinja2 module-docs template: one to determine the maximum nesting depth to compute the maximum colspan needed, plus one to lay out the rows.
(cherry picked from commit fa5c0282a4)
2018-06-01 10:37:39 -07:00
4536fcc722 Re-allow SSH due to broken delegation (#40978)
Removes the SSH enforcement because it breaks situations where, for example,
an admin maintains Ansible Tower and another team needs to use Ansible
with the BIG-IP modules, but the Tower admin does not want to install
the F5-SDK on the Ansible Tower instance.

In this situation, the user needs to delegate the execution of the BIG-IP
module to another linux host that does have the dependencies installed.

Usually this is done with delegation, often over SSH. Limiting the SSH
connection here prevents this from working.

(cherry picked from commit 8bccd0830b)
2018-06-01 10:34:21 -07:00
cfc67ce177 Add docs detailing how to convert many with_X style loops to use loop and filters (#40964)
* Add docs detailing how to convert many with_X style loops to use loop and filters. Fixes #40727

* Switch lookup used in query vs lookup comparison, to not recommend use of nested lookup

* Improve docs based on feedback

(cherry picked from commit 1cec3c8daf)
2018-06-01 10:31:20 -07:00
6e7bdb04ee enforce required config
(cherry picked from commit cbedbd3c9c)
(cherry picked from commit bcabbe33c8)
2018-05-31 18:27:02 -07:00
8f2c34fc69 Add changelog entries from deleted CHANGELOG.md. 2018-05-31 16:06:49 -07:00
741e09f984 Pass cloud parameter to get_one call
When we switch this to pull from the CloudRegion object, we missed
passing the parameter along.
2018-05-31 13:54:19 -07:00
65d96bf354 K8s dynamic collected changes (#40745)
* Move k8s modules to dynamic backend

* update required openshift version

* update -> patch

* use new dynamic client exceptions

* style

* guard urllib3 import

* guard ansibleerror import

* give more information about error cause

* format in variable

* style

* rename tests

* Search for provided kind in a few more places to match old behavior, properly handle failure

* make common code use fail instead of fail_json, to work for lookup plugins as well

* update docs

* move openshift_raw tests into k8s tests

* fix typo

* Use diff of response and resource to determine change, don't do any checking client-side before making requests

* remove duplicate yaml blocks

* Update porting guide for k8s module

* remove invalid doc refs

* If fuzzy searching finds a resource, update resource_definition to match proper kind and version

* remote unsupported openshift_raw variables

* properly check environment variables when determining auth method:
2018-05-31 13:32:42 -07:00
cad351328d Search for macaddresses more stringently (#40901)
* Search for macaddresses more stringently

Fixes #40829

(cherry picked from commit e7afd3d378)
2018-05-31 13:18:15 -07:00
ca3c0dfaea Do not gather mem facts if command invalid (#40820)
* Do not gather mem facts if command invalid

In some firmwares, 'show memory statistics' fail, thus
do not populate mem if we got a failure after running that command.

* Fix pep8

* Warn if got error when running 'sh memory statistics'

* Fix pep8

(cherry picked from commit 669949e6a3)
2018-05-31 13:17:15 -07:00
42661ba459 Fix for updating the name in case of host record and network view and also display meaningful error in case of connection timeout (#40597)
* To fix following github issues 35774, 36574 and 39494

* To fix following github issues 35774, 36574 and 39494

* To fix following github issues 35774, 36574 and 39494

* To fix following github issues 35774, 36574 and 39494

* To fix following github issues 35774, 36574 and 39494

* To fix following github issues 35774, 36574 and 39494

* removed old_name new entry to make ui cleaner

* removed old_name new entry to make ui cleaner

* removed old_name new entry to make ui cleaner

* removed old_name new entry to make ui cleaner

* removed old_name new entry to make ui cleaner

* removed old_name new entry to make ui cleaner

* to resolve the bug 40709

* reslove shippable error

* reslove shippable error

* reslove shippable error

* reslove shippable error

* reslove shippable error

* reslove shippable error

* reslove shippable error

* reslove shippable error

* reslove shippable error

* to fix shippable nios automation error

* modified the name input parsing method

* modified the name input parsing method

* modified the name input parsing method

* modified the name input parsing method

* modified the name input parsing method

* modified the name input parsing method

* modified the name input parsing method

* modified the name input parsing method

* modified the name input parsing method

* shippable error fix

* shippable error fix

* shippable error fix

* shippable error fix

* shippable error fix

* review comment fix

* shippable error fix

* shippable error fix

(cherry picked from commit 81510970ae)
2018-05-31 13:10:55 -07:00
7f50d11806 Command authorization failed ios regex (#40819)
* Add 'Command authorization failed' to stderr regex list

* Add missing comma

* Remove superfluous comma

(cherry picked from commit 026de6bcb0)
2018-05-31 13:00:58 -07:00
1ea5790f56 Fixes eos_logging idempotence issue #31862 (#40604)
* eos_logging idempotence fix

* fixed eos_logging idempotence issue

* Fixed pylint and pep8 errors

* Added tests for eos_logging & minor fix

* Removed q statements

(cherry picked from commit b9ea646839)
2018-05-31 10:01:03 -07:00
a3178a1153 Fixes ios_logging idempotency issues (#40701)
* Fixes ios_logging idempotency issues

* Added intergration tests & minor fixes

* Minor fixes in tests

* Minor fixes in tests #2

* eos_logging fixes after PR review

(cherry picked from commit a013cdc747)
2018-05-31 10:00:42 -07:00
079a1c3d06 fix nxos output truncated issue (#40961)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-31 12:35:41 -04:00
9bb260b543 Update Ansible release version to 2.6.0.dev0. 2018-05-30 19:18:27 -07:00
707f069fe8 New release v2.6.0a2 2018-05-30 17:47:09 -07:00
87a163064f Backport #40833 for 2.6 - synchronize _remote_is_local (#40918)
* Use _remote_is_local=True for local connection in synchronize (#40833)

* All instances of local connection should use _remote_is_local=True. Fixes #40551

* Switch to instance attribute for synchronize

* Add test that shows that synchronize _remote_is_local addresses tmpdir building

(cherry picked from commit ad7ba91f75)

* Add changelog entry for #40833
2018-05-30 16:53:50 -05:00
a2ca2e2a25 reinstates connection:local as an option for nxapi (#40834) (#40916)
(cherry picked from commit 0e0a5243c8)
2018-05-30 16:06:32 -05:00
0c907779a4 updates network examples to 2.6 (#40831) (#40899)
(cherry picked from commit e2146a7696)
2018-05-30 15:29:06 -05:00
b184e73b89 Fix FreeBSD package install in test setup.sh.
(cherry picked from commit c3d3b6cedc)
2018-05-30 09:00:43 -07:00
848327a6b5 Fix eapi tests to use become (#40838) (#40848)
* Fix eapi tests to use become (#40838)

* Return the expected prompt character based on become status

* Update eos_banner tests for eapi

* Update eos_config tests for eapi

* Update eos_facts tests for eapi

* Update eos_interface tests for eapi

* Update eos_l3_interface tests for eapi

* Update eos_lldp tests for eapi

* Update eos_logging tests for eapi

* Update eos_smoke tests for eapi

* Update eos_system tests for eapi

(cherry picked from commit 20f93816d6)

* Remove local from most eos tests now that provider is out
2018-05-30 09:56:31 -04:00
592c6877b5 fix nxos dci failures (#40871) (#40873)
* fix structured output for nxos_linkagg

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

* fix TypeError for nxos_interface

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 786ec14e54)
2018-05-30 15:35:46 +05:30
58f018e367 nxos and httpapi cherry-pick (#40859)
* httpapi fix nxos (#40806)

* httpapi fix nxos

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

* nxos_hsrp fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit a7421e8611)

* fix nxos_vrf and migrate get_interface_type to module_utils (#40825)

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit b4baa2d484)

* nxos_vlan fix (#40822)

* nxos_vlan fix

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

* uncomment mode test as nxapi now has get_capabilities

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 17b6ecf101)

* Update nxos_install_os module (#40102)

* Add nxos_install_os integration tests

* Update call to check timers

* Update check_ansible_timer method

* Modify network_cli integration tests

* Add timer check for nxos_install_os

* Add comments for clear_persistent_sockets

* Update connection info for tests

* More updates

* Restructure files for provider and non-provider testing

* Update env var name and add check for ISSU switchover

(cherry picked from commit 9f026309a6)
2018-05-30 10:40:25 +05:30
828d878bf9 Bump python support version for openstack modules (#40751)
The openstack modules do not support python 2.6 as the underlying
library dependency (openstacksdk) does not support python 2.6. Update
the docs to make this clear.
2018-05-29 08:52:51 -04:00
b97a47ac2c Fix connection error reporting (#40758) (#40759)
The variables used for reporting errors were incorrect. Additionally,
the fetching of connection related params was using an old format.

(cherry picked from commit dc08bca1fd)
2018-05-26 17:38:26 -07:00
a018a1e6d4 Fixes parameters to fail_json (#40756) (#40757)
The number of parameters was incorrect. This patch fixes it.

(cherry picked from commit 547a1ed67d)
2018-05-26 16:06:00 -07:00
882f249f1d Revert "Move k8s modules to dynamic backend (#39632)" (#40743) (#40744)
This reverts commit 4373b155a5.
2018-05-26 00:32:40 -05:00
3f83e7e473 Initial stable-2.6 branch commit. 2018-05-25 21:15:12 -07:00
e2bd4adf6e os_image_facts: add ability to list all Openstack images 2018-05-25 19:04:05 -07:00
02cb0fd30d fix capitalization on os_project_access examples (#37965) 2018-05-25 19:00:27 -07:00
8690937fb3 Correct the OpenStack plugin example config (#40460)
The current example configuration is not
quite right, so this patch implements a
fix which corrects it

The 'inventory_hostname' argument is removed
as it's the same value as the default.
2018-05-25 18:46:11 -07:00
89ce826a9f retire shade in favor of openstacksdk for openstack modules (#40532)
* Establish connection through openstacksdk
* Switch from shade to openstacksdk
* fix typo in link to openstacksdk
* remove nova_client usage
* further remove of min_version from openstack modules
2018-05-25 18:40:39 -07:00
e16490c9c0 [WIP] New module - meraki_admin (#39837)
New module - meraki_admin
2018-05-26 02:30:21 +02:00
d5b3ffc51e New module - meraki_snmp (#39882)
* Initial commit for meraki_admin module

* Initial commit for meraki_snmp module

* Update code to be operational for SNMP settings
- Add optional_ignore value to is_update_required for one-time fields
- Write documentation
- Perform checks and execute changes

* Minor fixes and test improvements
- Fix some documentation errors
- Implement and test for idempotency

* Removed meraki_admin which shouldn't be there, ansibot changes

* Rename params to be lower case
- Updated integration tests
- Changed CamelCase to lowercase and underscore

* Code cleanup changes based on comments from Dag.
2018-05-26 02:22:38 +02:00
5838e88fa0 Fix timezone tests to restore timezone. 2018-05-25 17:13:05 -07:00
81de7582d9 Fix tower_* modules **params kwargs (#40137)
* Add cleaning function to handle **params

The cleaning function is only added to tower modules which pass a `**params`
argument as an unpacked dictionnary to the tower-cli method calls.

Fix #39745

* Remove previous code added only for tower_role

In 872a7b4, the `update_resources` function was modified so that it would clear unwanted
parameters. However, this behaviour is desired for other modules too, modified in
another commit. (see tower_clean_params).
2018-05-25 18:03:12 -05:00
c4536bc827 Support check mode in aws_ses_identity module (#38422)
* Port aws_ses_identity module to use AnsibleAWSModule

* Support Check Mode in aws_ses_identity

* Add tests for check mode

* Move feedback forwarding parameter check to before any changes are made.
2018-05-25 18:46:25 -04:00
0781a7f68c Fixed check_mode status to be the same as normal execution (#40721)
* Fixed check_mode status to be the same as normal execution

* Now when setting the status to `disabled` in check_mode it correctly
returns the state changed and prints a warning like it does in normal
model. Before it always returned changed even if everything was set
correctly and a reboot was required.

* Add changelog entry


Co-authored by: Strahinja Kustudic <kustodian@gmail.com>
2018-05-25 17:06:11 -04:00
f2d4912f29 module_utils/facts: override pkg_mgr for ALT Linux (#38004)
Overrides `pkg_mgr` fact to `apt_rpm` if:
- found package manager is `apt`;
- `/usr/bin/rpm` is present;
- `/usr/bin/dpkg` is absent.

Fixes #37997
2018-05-25 14:41:59 -05:00
04e3c964fb Added executable parameter to the script module (#36969)
* Added interpreter parameter to the script module

* Let required and default parameters get documented implicitly for binary parameter

* Renamed interpreter parameter to executable
2018-05-25 14:40:48 -05:00
43ca9d1548 adds table of connections by platform (#40688) 2018-05-25 14:03:33 -05:00
9813925253 Update my BOTMETA info (#40726) 2018-05-25 13:39:09 -05:00
90aa68be41 Fixes #38484 (#38522)
* Fixes #38484

* Makes asn optional
2018-05-25 14:17:18 -04:00
9d30434b6c ec2_ami_facts: return images in a consistent order (#40679)
* ec2_ami_facts: return images in a consistent order
2018-05-25 14:10:33 -04:00
496d10f7a8 Remove support for SSLv2 in test suite when not defined. (#39183)
When running the test test/units/module_utils/urls/test_open_url.py
test_open_url_no_validate_certs, the test fails because of the SSLv2
check.

Test is run on a machine using openssl 1.1.0g. By reading the openssl
man page[1], one can see that support for SSLv2 has been removed.

> Support for SSLv2 and the corresponding SSLv2_method(),
> SSLv2_server_method() and SSLv2_client_method() functions where removed
> in OpenSSL 1.1.0.
>
> SSLv23_method(), SSLv23_server_method() and SSLv23_client_method() were
> deprecated and the preferred TLS_method(), TLS_server_method() and
> TLS_client_method() functions were introduced in OpenSSL 1.1.0.

Hence this commit remove the uses of this flag when it is not defined.

[1] https://www.openssl.org/docs/man1.1.0/ssl/SSLv23_method.html
2018-05-25 12:50:19 -05:00
bc2430694c Add a note for multible changes in one file (#37090)
As mentioned in this answer https://stackoverflow.com/a/41549694/6778826 we was able to solve a bad behaviour of `blockinfile` module.
We must change two parts in one file which we have done in two tasks. Every run have rewriten the first block with the second block in the wrong position. **After** we have set the `marker` in the second task to another value was the `blockinfile` module able to insert both parts in the right position in the same file.
2018-05-25 12:49:46 -05:00
8746d9ef87 Add guidelines on developing lookup plugins (#38681) 2018-05-25 12:49:33 -05:00
1579178f2d os_project_access: clean up some things (#40464)
* os_project_access: correct example tasks

The example task does not work. Fix it so that it does.

* os_project_access: Remove unused function

The _get_allowed_projects function is not used anywhere,
so we can remove it and be free of nova_client for this
module.
2018-05-25 10:43:46 -07:00
f53a29f392 os_server: Remove nova_client usage (#40462)
The os_server module uses the deprecated nova_client function, and
therefore ends up requiring python-novaclient installed. In this
patch we switch the ip detachment to make use of a shade function,
removing the need for python-novaclient.
2018-05-25 10:43:12 -07:00
7e603c3cb1 Remove old openstack nova dynamic inventory script (#40465)
This script was deprecated in 2.0.0. There is no point
carrying it around any longer given that there is now
a replacement dynamic inventory script and an inventory
plugin too.
2018-05-25 10:14:49 -07:00
Rob
38c13259b3 [AWS] New module: aws_glue_job (#39493)
* New module - glue_job

* Review fixes
2018-05-25 13:12:39 -04:00
Rob
1b45a755a2 [AWS] Add helpful failure message when using wrong lb module (#40433)
Remove the default empty dict parameter for tags.
2018-05-25 13:10:39 -04:00
f16ec4e64c [AWS] Add check for empty values in elasticache module - fixes #40063 (#40454) 2018-05-25 13:09:11 -04:00
de57fa71c1 Improve timezone module for none systemd Linux distributions (#38032)
* The module now correctly sets the timezone in both the config file and
in /etc/localtime; while hwclock is set in both the config and
/etc/adjtime.
* Module checks if the timezone is actually set by checking
/etc/localtime. Before it only checked if it was set in the config file.
* Fixed module not setting the timezone on RedHat systems if
/etc/localtime was a symbolic link.
* Fixed module failures in case of missing config files or incorrect data
in them.
* Added a lot of integrations tests to cover most of these situations.
2018-05-25 12:01:03 -05:00
4a6161bab8 Create a new pipe for sshpass on final retry. Fixes #32238 (#39294) 2018-05-25 12:00:11 -05:00
b7b19d139e Add start and end timestamp to task and play result in json callback (#39277)
* Add start and end timestamp to task result in json callback

Currently, the timestamp information is only provided directly by a few
Ansible modules (e.g. the command module, which shows the runtime of a
command per host result).
This change adds an 'overall' time information to all executed tasks. The
delta between both timestamps shows how long it took a task to finish
across all hosts/nodes.

This patch is also proposed for zuul and can be found here:
https://review.openstack.org/#/c/563888

* Add missing timezone information to 'start' and 'end' timestamps

As the datetime.isoformat() function is missing the timezone information,
we assume it's local time.

* Nest 'start' and 'end' timestamps in 'duration' field.

To clarify the purpose of those fields.

* Add 'start' and 'end' timestamps also for plays
2018-05-25 11:19:14 -05:00
313a46744d Add a 'machinectl shell' become_method (#39826)
* Add a 'machinectl shell' become_method

* docs: add explanations for the machinectl become_method

* docs: machinectl become_method: specify this part is specific to Linux+systemd setups
2018-05-25 10:52:53 -05:00
174d7f8ea2 Fixes an incorrect method definition (#40719)
The to_return method def in bigiq's https offload module was incorrect.
This fixes it.
2018-05-25 08:51:24 -07:00
6fb128b235 Add elb_application_lb tests for modifying listeners (#40716) 2018-05-25 11:16:29 -04:00
33e1453d5a support url scheme (#39683) 2018-05-25 10:13:48 -04:00
f65df5f62a yum.py module: added option for yum --bugfix updates. (#36203) 2018-05-25 09:58:35 -04:00
1d5fe326e8 Add a cloud provider and a set of smoketests for the NIOS modules (#40573)
* Add a cloud provider and a set of smoketests for the NIOS modules
2018-05-25 13:50:45 +01:00
362e622a4b New module: GCP Compute Disks (#38612) 2018-05-25 07:48:01 -04:00
809c7404ab Add two missing VPC permissions (#37896)
Remove VPC permissions from network-policy.json as they mostly duplicate
compute-policy.json permissions - separating the VPC and compute permissions
would likely lead to further confusion.
2018-05-25 06:31:54 -04:00
5dd3aa26ea cs_instance: implement host migration support (#40309)
* cs_instance: implement host migration support

* fix build

* fail fast on update if user is not admin

* improve tests a bit

* expunge it

* fix typo

* disable temporarly verify for host on starting instance.
2018-05-25 11:20:04 +02:00
6443a56069 cloudstack: vpn: compatiblity fix for 4.5 API (#40700) 2018-05-25 10:24:39 +02:00
8dcb6c288c Document capability of giving regex search flags (#39893) 2018-05-25 04:16:08 -04:00
24e55615a0 Docs for module_defaults feature (#39932) 2018-05-25 04:15:44 -04:00
e6e5e45d7e Fixing choices for transport option in gluster_volume module (#38815) 2018-05-25 03:30:30 -04:00
aa791e51c7 Allowing to prohibit account changes for acme_certificate. (#40698) 2018-05-25 03:18:20 -04:00
e294426b07 Rename letsencrypt module utils / document fragment to acme. (#40697) 2018-05-25 09:08:14 +02:00
4188c5986b cyberarkpassword: Display.vvvv expects a string (#40335)
'terms' is a list and display.vvvv is especting a string.
2018-05-25 08:11:26 +02:00
14f0fd9ab3 Add mode, owner_id and group_id options to one_vm (#40217)
Add `mode` option which sets permission mode of a VM in octet format
Add `owner_id` and `group_id` which set the ownership of a VM
Move the waiting for state at the end of the module, so it could fail faster if there is some error
tagged_instances will only be returned only if count_attributes and/or count_labels are used, as specified in the documentation
Update relevant tests
Add tests for mode, owner_id, group_id
2018-05-25 08:00:26 +02:00
dec392793b Letsencrypt: add account management module (#37275)
* Removed superfluous space.

* Separating account init code from ACMEAccount constructor.

* Extracted module utils and docs fragment.

* Added new letsencrypt_account module.

* Ignore pre-1.0.0 versions of OpenSSL.

* Added account key rollover.

* Renaming letsencrypt_account -> acme_account

* Simplifying check for updating contact information.

* Rewriting docstring for ACMEDirectory.

* Changing license according to permissions given by individual authors in https://github.com/ansible/ansible/pull/37275.

* Updating BOTMETA.

* Preparing for change of ACME protocol currently discussed in ietf-wg-acme/acme.

* Updating documentation.
2018-05-25 01:55:24 -04:00
2fc23fdc18 Prevent Jinja2 string escaping in alternative Route53 example from getting lost in translation. (#40376) 2018-05-25 01:48:08 -04:00
e7709e169a new module cloud_init_data_facts (#37932)
* add new module cloud_init_facts

* rename cloud-init facts

* simplify

* re-add tests

* make test run on ubuntu except 14.04
2018-05-25 07:44:24 +02:00
c49b7d2a5d Fix opennebula test stub (#40436)
* Requesting fixture services from PYONE via environment varaibles

* moved all test functionality out of opennebula module utils
2018-05-25 07:42:14 +02:00
c464419286 Add TrueOS as FreeBSD distribution (#37371) 2018-05-25 00:29:39 -04:00
3f5f5faec6 doc: config intro, add link to searched locations (#39614) 2018-05-25 00:29:29 -04:00
2a29b2ff7f Make alias autodetection for symlinked modules independent of glob() order. (#40293) 2018-05-24 22:48:59 -05:00
749e67fdf8 update docs of template module (#40312)
default value of 'trim_blocks' is 'yes'

+label: docsite_pr
2018-05-24 22:48:12 -05:00
e5ccdaec88 Better Galaxy description for role reuse (#40557)
* Better Galaxy description for role reuse

* update per gundalow review
2018-05-24 22:47:03 -05:00
294c3a0a7c [docs][minor] Variables user guide: fix grammar (#39427) 2018-05-24 23:38:22 -04:00
3b8b928e29 draft schema for inventory scripts (#39454)
* draft schema for inventory scripts

used by the script inventory plugin

* fixes and details for vars

* proper escape

* restrict additional
2018-05-24 23:38:16 -04:00
bc93038943 added information on keyword/vars separation (#39561)
* added information on keyword/vars separation

fixes #39551

* updated as per fb
2018-05-24 23:30:20 -04:00
7847b1492c Use $(MAKE) instead of raw "make" (#39588)
This Makefile uses non-standard constructs. As such it can only be
parsed by GNU make, which is often installed as 'gmake' instead of
'make'. Using $(MAKE) ensures the same version of make gets called that
is used to execute the top level.
2018-05-24 23:30:14 -04:00
67493ebdee Add a 'releasever' parameter for dnf. Fixes #33314. (#37493)
* Add a 'releasever' parameter for dnf. #33314

* Set a default value for releasever

* Fix a variable name typo
2018-05-24 23:22:53 -04:00
1613a739ad fix decrypted vault utf8 values (#37539)
* Fix errors decrypted non-ascii vault vars

AnsibleVaultEncryptedUnicode was just using b"".decode()
instead of to_text() on the bytestrings returned from
vault.decrypt() and could cause errors on python2
if non-ascii since decode() defaults to ascii.
Use to_text() to default to decoding utf-8.

add intg and unit tests for value of vaulted vars
being non-ascii utf8

based on https://github.com/ansible/ansible/issues/37258

Fixes #37258

* yamllint fixups
2018-05-24 23:22:46 -04:00
bbe57cbf90 Default rsync_opts to empty list (#38374)
Otherwise python fails when it tries to iterate over `None`.
2018-05-24 23:22:33 -04:00
c47c16782f Add ssh_connection retries to ansible.cfg example (#38393)
I add the `retries` option under [ssh_connection] as it was missing, and
some brief comments on the backoff logic.
2018-05-24 23:22:26 -04:00
b43a1a9f9f Update lineinfile.py (#38444)
`line` is a parameter. just making it explicit.
2018-05-24 23:22:18 -04:00
56937e8972 Fix problems with virtualbox inventory and composed vars and groups (#37498) 2018-05-24 22:52:14 -04:00
bf50274945 Added ability to read config from env. instead of .init for use in Asible Tower (and AWX) (#36179)
* Added ability to read config from env. instead of .init for use in Ansible
Tower (and AWX)

* Detect when NoneType is passed to cache_path

* Formatting fixes
2018-05-24 22:45:21 -04:00
826c6f8ec0 Remove execute bit from subversion module. 2018-05-24 18:59:36 -07:00
0df6b085c0 win_scheduled_task fix doc example with datestamp (#40691) 2018-05-25 11:39:33 +10:00
d95c572992 New Memset module to request DNS reloads (#40390) 2018-05-25 00:30:25 +02:00
08f670864a New Memset module to manage DNS zone domains (#40391) 2018-05-25 00:29:43 +02:00
be8559bfa9 Subversion: checking out with existing content (#38366)
* Subversion: If the directory exists, we want the ability to checkout into it
and use the content as existing files; equivalent to svn checkout --force

I was expecting the force option to do this, however I understand why it
doesn't do that currently. I was debating with changing the meaning of force
to include this behaviour, however I've opted for a seperate flag for now
for backwards compatibility.

* Subversion: Sanity tests have failed suggesting this is the correct value

https://app.shippable.com/github/ansible/ansible/runs/60302/1/console
2018-05-24 17:29:11 -05:00
2f5f57a78f Update net_banner.py (#40678)
Correct a typo in the DOCUMENTATION section.
2018-05-24 16:00:27 -05:00
0211fb7a78 gluster_volume: Fix volume set' and quota' features (#40438) (#40644)
* Add documentation for setting multiple options.
* Do not set `cluster' to myhostname, if cluster is not set. This will cause
  parse error, since module will try to parse the brick and hosts.
* Also fixes issue #40410
2018-05-24 16:00:11 -05:00
Rob
858f0fc000 New module: AWS Network load balancer (#33808)
* New module - elb_network_lb

* Fix creating a load balancer without tags

* Linter

Fix purging tags

Remove extra imports

* add support for cross zone lb, doc update and fix tagging

* pep8 fixes

* Add integration tests for elb_network_lb module

* more pep8

* Remove non-applicable option for NLBs

* fix target protocol

* pep8
2018-05-24 16:38:34 -04:00
529ef6446e fix: Ensure zip excluded files are not checked (#40120)
* fix: Ensure zip excluded files are not checked

Fixes #26279

* test: Verify unarchive excludes behaves as expected

* fix: Typos and whitespaces
2018-05-24 15:14:15 -05:00
8414230266 py2/py3 compat fix (#40614) 2018-05-24 15:13:22 -05:00
5861d5f74e gluster_peer: Module to create/dismantle trusted storage pool (#37771)
* gluster_peer: Module to create/dismantle trusted storage pool

* gluster_peer: Module to create/dismantle trusted storage pool

Added __init__.py and added function main() in the module.

* gluster_peer: Module to create/dismantle trusted storage pool

Empty __init__.py was needed. Removed comment from the file.

* gluster_peer: Module to create/dismantle trusted storage pool

Addressed review comments.

* gluster_peer: Module to create/dismantle trusted storage pool

Do version check more sanely, improve parameter handling.

* gluster_peer: Module to create/dismantle trusted storage pool

Use isinstance for type comparison.

* gluster_peer: Module to create/dismantle trusted storage pool

Use type=list for nodes parameter, get rid of literal_eval.

* gluster_peer: Module to create/dismantle trusted storage pool

Add parameter check_mode, had missed this somewhere in between.

* gluster_peer: do not set `force' in case of state=present

* gluster_peer: Fix typo in the documentation

* gluster_peer: make peer probe idempotent

* gluster_peer: Fix a logical error while evaluating booleans

* gluster_peer: set locale to C, pass list to run_command
2018-05-24 15:10:55 -05:00
9f732d2f05 last set of modules (#40493)
* last set of modules

* fix import issues

* fix issues

* fixes

* Review fixes

* review  changes
2018-05-24 13:04:15 -07:00
cb0f0cb67f six set of modules (#40492)
* six set of modules

* fix issues

* fix issues

* Review fixes

* review fixes
2018-05-24 13:03:25 -07:00
7d551bba21 fifth set of modules (#40491)
* fifth set of modules

* fix issues

* Fixes

* fix choices

* fix snapshot

* spelling

* review fixes'
2018-05-24 13:02:19 -07:00
3bae9ed00c Commit first set of 5 netapp modules (#40486)
* Commit first set of 5 netapp modules

* Documentation changes

* Fix module

* move future

* fix issues

* fix aggregate

* fix issues matt found

* fix redundant requires

* fix issues

* documentation change
2018-05-24 12:59:18 -07:00
da578b8fff fourth set of modules (#40490)
* fourth set of modules

* fix issues

* fix issues

* changes for review

* make changes to vlan
2018-05-24 12:58:56 -07:00
ca7490b61b third set of netapp modules (#40488)
* thrid set of netapp modules

* fix issues

* fix issues

* fixed cmp issues

* fix 2 spaces

* fixes

* Change to documentation

* fixes
2018-05-24 12:56:51 -07:00
046561bbb0 Split AWS Config modules (#40111)
* Adding module for AWS Config service

* adding integration tests

* Split resource types into their own modules

* Properly use resource_prefix and retry on IAM "eventual consistency"

* Add config aggregator module

* AWS config aggregator integration test fixes

* AWS config recorder module

* Config aggregation auth rule

* Use resource_prefix in IAM role name

* Disable config tests
2018-05-24 15:52:41 -04:00
a90342ac33 ec2_vpc_net: fix hanging waiter when using host bits in a CIDR block (#40622)
* ec2_vpc_net: fix hanging waiter when using hostbits in a CIDR block

* remove extra line
2018-05-24 15:51:23 -04:00
5bfbe85a26 seconds set of netapp modules (#40487)
* seconds set of netapp modules

* fixes

* Fix issues

* Fix future issues

* fix issues

* Fix issues

* changes

* Change force

* made fixes

* add new line to end of file
2018-05-24 12:48:33 -07:00
dc31809d2a GCP Inventory Plugin (#36884)
* Inventory

* Adding multi project support

* Adding multi project support

* Fixing PR comments and cleaning code

* Adding cache support
* Changed filter notation

* Inventory changes

* Better readability for zones, networks, subnetworks
* Added project to inventory output
* Using IP instead of hostname
* Keyed_groups support
* Use all zones when none provided.

* PR changes

* Doc changes
* Accepts *gcp_compute.yaml file names
* Added support for changing host naming precedent

* PR changes round 2

* Cache changes
* Changed verify_file function
* Misc style changes

* Cache fixes

* Fix docs for `hostnames` option.
2018-05-24 15:36:08 -04:00
cba64f5869 Fix inventory plugin cache + add tests (#38229)
* Fix setting the cache when refresh_cache or --flush-cache are used

* Use jsonify function that handles datetime objects in jsonfile cache plugin

* Don't access self._options directly

* Add initial integration tests for aws_ec2 inventory plugin

* Add CI alias

* Fix and add a few more unit tests

* Add integration tests for constructed

* Fix typo

* Use inventory config templates

* Collect all instances that are not terminated by default

* Create separate playbook for setting up the VPC, subnet, security group, and finding an image for the host

Create a separate playbook for removing the resources

* Allow easier grouping by region and add an example

* use a unified json encode/decode that can handle unsafe and vault
2018-05-24 15:34:54 -04:00
0ad4b7b785 Fixes to httpapi for EAPI (#40675)
* Replace errant uses of str

* Hook up become to eapi

* Hook become up to nxapi, too
2018-05-24 14:25:19 -04:00
38c86b7eef Add 'init' option to docker_container module to support docker's --init option (#34547)
* Add support for `--init` option to `docker_container` module

Fixes #30761

* Validate docker API's version when docker_container's init option is True

https://github.com/ansible/ansible/pull/34547#pullrequestreview-122355244
https://docs.docker.com/engine/reference/commandline/run/#options

init option requires docker API 1.25+ .

* Fix failure of sanity test
2018-05-24 12:55:16 -05:00
d9533c3cbf Adding changed option to save_when (#40640)
* Adding changed option to save_when

* Fixing version when changed was added.
2018-05-24 22:18:59 +05:30
7cf776ca5c Detail CLA (#40665) 2018-05-24 17:00:31 +01:00
858a1b09bb EC2_group module refactor (formerly pr/37255) (#38678)
* Refactor ec2_group

Replace nested for loops with list comprehensions

Purge rules before adding new ones in case sg has maximum permitted rules

* Add check mode tests for ec2_group

* add tests

* Remove dead code

* Fix integration test assertions for old boto versions

* Add waiter for security group that is autocreated

* Add support for in-account group rules

* Add common util to get AWS account ID

Fixes #31383

* Fix protocol number and add separate tests for egress rule handling

* Return egress rule treatment to be backwards compatible

* Remove functions that were obsoleted by `Rule` namedtuple

* IP tests

* Move description updates to a function

* Fix string formatting missing index

* Add tests for auto-creation of the same group in quick succession

* Resolve use of brand-new group in a rule without a description

* Clean up duplicated get-security-group function

* Add reverse cleanup in case of dependency issues

* Add crossaccount ELB group support

* Deal with non-STS calls to account API

* Add filtering of owner IDs that match the current account
2018-05-24 11:53:21 -04:00
Rob
49f569d915 New module: AWS Glue connection (#39492)
* New module = AWS Glue connection

* Add a few initial integration tests

* Add alias for CI

* module rename

* finish module rename

* add loop when getting glue connection again so we dont get None

* Limit number of retries to get new glue connection info
2018-05-24 11:35:24 -04:00
ba4680c141 ACI: Make lag_type a required parameter for queries (#40657)
Without this change, the module will simply fail with an error when
doing a query and not specifying the **lag_type** parameter.

The integration tests expect **lag_type** too, so this simply codifies
what was expected since inception.
2018-05-24 17:32:56 +02:00
8b4e36e711 Insert set commands if a delete command is entered (#40666) 2018-05-24 11:20:14 -04:00
c2f7f36fc5 nxos_file_copy network_cli and httpapi fix (#40592)
* Leverage action plugin to pass credentials to nxos_file_copy for network_cli, httpapi

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

* update integration test

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

* make sure local test uses provider

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

* update tests

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

* update doc

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

* clarify action plugin comment

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

* Add connection=local back to nxos_file_copy because that module is weird

Also blacklist it running on nxapi, because that is meaningless

* remove provider

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

* blacklist nxapi

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

* Address review comment

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-24 20:21:18 +05:30
94049680c3 Add OpenBSD password encryption (#40647)
OpenBSD comes with its own encryption utility as well, which must be run on the password text `encrypt <password>`. following the code block above, i just included the base command in the code block. I wasn't quite sure where to add my change, so I put it at the bottom of the section since the rest all flows well together.

+label: docsite_pr
2018-05-24 10:14:14 -04:00
8666c08327 ec2_instance - fix instance creation with IPv6 (#40334)
IPv6 addresses and IPv6 address count may not be specified on the same request https://docs.aws.amazon.com/cli/latest/reference/ec2/assign-ipv6-addresses.html#options
2018-05-24 10:10:55 -04:00
d829ff6993 fixes bug with matching nxos prompts (#40655)
This change addresses an issue where the prompt matching regular
expressions would not match a prompt if the hostname starts with a
numeric value.  Before this change, the connection would fail with a
socket.timeout() error.  This change updates the termnal_stdout_re
values to now check for a number.

See Github issue #38639
2018-05-24 19:32:02 +05:30
d7419b4dbc Do not silently skip YAML groups (#40660) 2018-05-24 09:56:46 -04:00
c04d0ebc23 Connection-side, the expection is AnsibleConnectionFailure (#40658) 2018-05-24 09:43:59 -04:00
9e2a59885e aci_rest: Ensure we always return a status 2018-05-24 15:20:23 +02:00
05374da9b8 ACI: Add from_card and to_card parameters (#40653)
* ACI: Add from_card and to_card parameters

* Add version info to new parameters
2018-05-24 14:58:11 +02:00
18e7d814ef Add OpenNebula one_service module (#37829) 2018-05-24 13:32:45 +02:00
f224afde49 Add auth key for OpenStack Volume Provider (#40294)
* Add auth key for OpenStack Volume Provider

For adding OpenStack Volume Provider we need to also add auth key,
value, for Ceph. This patch allows to add/update/remove auth keys.

Also fixing the issue for attach cinder SD to the datacenter.

* Fixing documentation

* Small fixes in ovirt_external_provider module.

Fixed doc for param and small changes.

* Fix comments from review.

Adds conditions for check mode.

* Move update auth key method in the module

* Remove empty line which pep8 complains about
2018-05-24 06:54:09 -04:00
143bcee962 ovirt_cluster: Add custom scheduling_policy_properties parameter (#40588) 2018-05-24 06:53:27 -04:00
160bf82544 Add NETCONF support for SROS devices (#40330)
* added NETCONF support for SROS devices

* corrected alu mapping

* fix pep8 in sros.py

* BOT META file updated
2018-05-24 15:44:39 +05:30
387a23c3d1 New ansible module netconf_rpc (#40358)
* New ansible module netconf_rpc

* add integration test for module netconf_rpc

* pep8/meta-data corrections

* usage of jxmlease for all XML processing
separation of attributes "rpc" and "content"

* removed unused imports
improved error handling

* fixed pep8

* usage of ast.literal_eval instead of eval
added description to SROS integration test for cases commented out
2018-05-24 15:25:02 +05:30
ea4a78b2a1 iosxr_command does not work with prompt and answer arguments (#40475)
* mismatch type between function arguments

* add testcase for prompt

* yamllint issues

* remove overwriting response in case of connectionError exception

* remove import of ConnectionError as it is not required
2018-05-24 13:18:29 +05:30
3fd9c46828 fix nxos_system test (#40643)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-24 12:00:04 +05:30
3e2a4ee8ba cloudstack: cs_instance with details (#40214)
Signed-off-by: Yoan Blanc <yoan.blanc@exoscale.ch>
2018-05-24 07:57:42 +02:00
c95724fb0a Fixes some NIC problems: create without nsg, support loadbalancer (#38643)
* add loadbalancer

* dict check nullable

* add default vallue when get list

* create backend addr pool

* fix the set

* fix to dict

* fix ideponement

* use param security group name when create

* nic can has no nsg

* add test

* fix

* fix

* fix

* add document

* add configuration

* fix

* fix

* remove all resources

* fix

* fix test

* add version added

* fix lint

* fix lint

* Fixes some NIC bugs (#39213)

* add loadbalancer

* dict check nullable

* add default vallue when get list

* create backend addr pool

* fix the set

* fix to dict

* fix ideponement

* use param security group name when create

* nic can has no nsg

* add test

* fix

* fix

* fix

* fix idemponet

* add document

* fix test

* add configuration

* fix

* fix

* remove all resources

* fix

* fix test

* add version added

* fix lint

* fix lint

* fix lint

* remove new feature and only submit bugfix

* remove useless test

* fix

* fix indent

* Update azure_rm_networkinterface.py

* fix comment

* support 3 types to specific name and resource group

* avoid test racing

* fix test

* add sample

* add resource id test
2018-05-24 14:32:03 +10:00
4fbdc1a497 Fixed WebRequest init (#40641) 2018-05-24 14:21:49 +10:00
d04a989bd2 nxos_interface: Disable switchport for loopback/svi (#40314)
* nxos_interface: Disable switchport for loopback/svi

* Replace interface_type with get_interface_type(name)
2018-05-24 08:51:17 +05:30
d4b2252d8b zfs: fix broken parameter handling (#36685)
* zfs: Fix handling of parameters passed via check_invalid_arguments

cc7a5228 had a typo, so the merged set of arguments was shoved into the
wrong parameter and ignored.

`origin` is an actual module parameter and should be processed like one.

pop()ing makes debug output misleading.

* zfs: fix command generation for `zfs snapshot`

Creating a snapshot and supplying an origin are mutually exclusive,
but were not treated as such. We should throw an error instead of
running an invalid command (`zfs snapshot origin foo@snapname`.)
2018-05-23 21:46:20 -05:00
03e90968c2 Use DOCKER env variables when defined (#36759)
* Use DOCKER_DEFAULT_IP when defined

* default localhost value overwrites DOCKER_TLS_HOSTNAME

* Backward compatibility, allow localhost as default docker_tls_hostname
2018-05-23 21:45:52 -05:00
5852df57f4 allow dataloader to use descriptors (#40627)
also fixed improper uses of str()

fixes #40383
2018-05-24 12:29:37 +10:00
3d6828949e Fixes #24241 Module always updates installed plugins (#40591)
* Update jenkins_plugin.py

When setting state=latest, plugin are always updated because plugin_data['sha1'] contains trailing '\r\n' (so it always detecting a sha1 change)

+label: docsite_pr

* rstrip wasn't the solution but to_bytes is
2018-05-24 12:15:47 +10:00
2d0891e089 facts: remove duplicate device vendor and model assignment (#39419)
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-05-23 21:06:46 -05:00
8d1f2ba9d9 yum: Propagate plugins to all parts of the module (#40085)
In `2.5` (d1b63bd5), the `yum` module received the capability to disable
and enable specific plugins. However, these changes only applied to
certain parts of the logic. This change propagates those changes to the
rest of the module, specifically those using the `yum` API.
2018-05-23 21:04:05 -05:00
0eece38cdf Fix any_errors_fatal in meta tasks (#36870) 2018-05-23 21:03:31 -05:00
eb992920a2 Update NetApp approvers team (#40505) 2018-05-24 12:03:02 +10:00
5edc46431a Updates to fileglob Documentation (#40461) 2018-05-24 11:59:42 +10:00
a4db5c3ae8 Fixes #37330: support subnet can refer nsg in another resource group (#37627)
* support subnet can refer nsg in another resource group

* support 3 types of refer resources

* fix

* fix tyoe

* update example
2018-05-24 11:45:29 +10:00
2c60771096 introducing azure_rm_resource (#39274)
* introducing azure_rm_resource

* adding missing file

* fixed documentation

* fixed subresource

* don't support tags (yet)

* added api_version to the doc

* adding api version to the doc

* ignoring some doc checks

* fixing imports

* final sanity fixes

* adding idempotency

* fixed params

* missing query parameter

* some updates of azure_rm_resource

* try to update test for idempotency

* fixed test

* try to fix problem temporarily

* another approach

* fixed spelling

* fixed mistake

* refactored a bit

* fixes

* removed unnecessary code

* removed assert temporarily

* fixed documentation

* trying to fix import issues

* trying to fix import

* try to fix sanity

* removed unnecessary pass

* removed e324 ignores

* resolve conflicts in ignore.txt

* fixing ignore txt

* revert

* try different approach to idempotency

* updating tests

* fixed task

* fixes

* getting output value properly

* fix test

* missing change

* fixed bug, changed test

* fixed mistake

* fixed mistake
2018-05-23 16:55:57 -07:00
21ea92feca Fixes #36621, support adfs auth through adal (#37909)
* update username/password auth to use adal lib

* remove default client_id after discussion

* fix lint error: trailing whitespace
2018-05-23 16:37:44 -07:00
e93fbedcc7 service: More DragonFly BSD support (#40449)
- Use NetBSD's service_enable which sets the vars correctly in
  /etc/rc.conf
2018-05-23 17:38:10 -05:00
f88412b7cd Fix ios test pt. 2 (#40628)
* Add missing idempotence assert

* Remove dhcp with other addresses on ipv6
2018-05-23 18:33:36 -04:00
21feca6683 Docs - add shared snippet note about password prompts for ssh keys (#40633)
* Docs - add shared snippet note about password prompts for ssh keys

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

* add note to ssh connection plugin, fix markup, fix typo

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-05-23 18:01:55 -04:00
0ceb717cae Fixed 'HashiVault' object has no attribute 'verify'"} (#36513) 2018-05-23 16:59:49 -05:00
571d971039 Fix #38745 - set user/group on temp file (#38748) 2018-05-23 15:45:43 -05:00
5e28e282a5 winrm: add better exception handling for krb5 auth with pexpect (#39930)
* winrm: add better exception handling for krb5 auth with pexpect

* Added changelog fragment

* Added exception handler in case kinit path isn't valid, added test cases

* fixed for Python 2 compatibility
2018-05-23 13:33:07 -07:00
457bccf540 win_updates: add scheduled tasks back in for older hosts (#38708)
* win_updates: add scheduled tasks back in for older hosts

* Fixed up typo in category name error message

* Fixed up some minor issues after merge

* added changelog fragment

* Default to become but add override to use scheduled tasks

* Added basic unit tests for win_updates

* fix minor typos
2018-05-23 13:21:01 -07:00
dff662fa0f Add plugins to ansible-doc test and fix issues. 2018-05-23 13:10:09 -07:00
9130490048 Fix update parameter (#36022) 2018-05-23 14:36:00 -05:00
e2c1589201 Add cidr_merge filter (#36081) 2018-05-23 14:35:23 -05:00
bf53e441b1 Update include_vars.py (#36106)
ignore_files is a list. Example was incorrect.
2018-05-23 14:35:02 -05:00
d145dfbcf1 rabbitmq_user: Add update_password parameter (#36280)
* Add update_password parameter to rabbitmq_user

Inspiration for this feature is taken from the `user` module.

While `always` is the default in that module, it is not here. We default
to `on_create` to avoid changing existing behaviour.

Resolves #29260

* Update instructions for changing passwords

* Bump version_added as requested

* Check password before changing it

This allows accurate reporting of changed status even though
`rabbitmqctl change_password` doesn't.

* Remove instruction to use 'force' to update password
2018-05-23 14:34:46 -05:00
5540a586dc test tower-cli verify_ssl config parameter (#37597) 2018-05-23 14:33:58 -05:00
01b3c14e23 consul_kv: support retrieval of values from KV (#37837)
* Adds support to get value from Consul KV.

* Updates documentation.

* Corrects GRL copyright years.

* Resolves PEP 8 issues.

* Changes consul_kv NOT_SET value to `None`.

* Support getting Consul KV values recursively.

* Adds example of retrieving key value.
2018-05-23 14:33:41 -05:00
73b9892605 add keywords handling to ansible-doc
also add check for sequence of string types before we force a join
2018-05-23 14:09:02 -04:00
606a4b3353 Fix non-HTTPS endpoint (#40601)
Fixes: #36985
2018-05-23 22:42:33 +05:30
5f175f2412 Update icinga2_host.py (#40603)
Fix example

+label: docsite_pr
2018-05-23 22:29:30 +05:30
a40f6b7c1f Update examples in modules/commands to use proper YAML syntax. (#35692)
* Update examples to use proper YAML syntax.

* Fix syntax error.
2018-05-23 11:50:13 -05:00
450891a1e7 New Memset module to manage DNS zone records (#40392) 2018-05-23 18:36:57 +02:00
e5665587c2 Fix PEP 8 issue. 2018-05-23 09:29:37 -07:00
15b6837daf Add yamllint for plugin docs and fix issues. 2018-05-23 09:19:30 -07:00
0b7932db30 add normalize_interface in module_utils and fix nxos_l3_interface module (#40598)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-23 21:42:58 +05:30
012003c871 maven_artifact: raise an explicit exception if the .md5 url returns 404 (#40477) 2018-05-23 12:09:23 -04:00
a5f05c6fc2 [WIP] Start of subelements filter (#39829)
* Start of subelements filter

* Add docs for subelements filter
2018-05-23 11:54:13 -04:00
46fbfd5d53 ovirt: Add support to pass hostname (#40610)
Previously we supported only to pass API URL, now we support also
hostname.
2018-05-23 11:12:46 -04:00
bc7ff83cd9 parted module not idempotent for esp flag and name (#40547)
* parted module not idempotent for esp flag and name

Fixes #40452

Currently the parted module doesn't take into account names with
spaces in them which leads to non-idempotent transactions on the
state of the system because the name comparison will never succeed.

Also, when the esp flag is set, parted infers the boot flag and the
parted module did not previously account for this. This lead to
non-idempotent transactions as well.

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

* fix unit tests, expected command changed in the patch

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-05-23 11:06:26 -04:00
67e0df81c1 This test is expected to fail (#40612) 2018-05-23 10:45:50 -04:00
aa1345dab2 Change Brocade references to Extreme (#40571) 2018-05-23 15:18:37 +01:00
ae49f4fd35 Coerce VPC tags from to string types to prevent spurious changed (#40422)
* Coerce VPC tags from to string types to prevent spurious `changed`

* Remove dict comprehension for 2.6 compatibility
2018-05-23 10:17:34 -04:00
3903ca5c8e Fix ios_vlan to correctly identify unmodified config when having long interface names (#40145)
Change the command to get the interface in a vlan "show vlan" => "show vlan brief"
Change the parsing of the return command of the switch.
The return of the ios command is fixed so i cut with fix number of carracter.
Adding looking for the next line to add the forgeted interfaces.
2018-05-23 10:15:54 -04:00
d028a0257a Change default output of NXAPI to text to match CLI (#40607)
* Default output format for nxapi now 'text'

* Apply json output to both types of input

* Add missing ConnectionError import to cliconf plugins
2018-05-23 10:09:50 -04:00
4cc4d63289 relocated flatpak 2018-05-23 10:06:44 -04:00
92a1cb5843 Add missing documentation on return of snmp_facts (#35101)
The snmp_facts module lacked any information on what kind
of data can be expected on the return of successful execution.

This patch expands the docs to included info on return output
including sample data and full descriptions.

Signed-off-by: Eric Brown <browne@vmware.com>
2018-05-23 08:25:49 -05:00
fabce98104 Pamd++ (#35709)
* Cleaner, more pythonic, shorter, easier to maintain

* Added validation
2018-05-23 08:24:54 -05:00
a3cfe0d72f apt: don't markmanual if apt-mark is not installed (#40600)
* apt: don't markmanual if apt-mark is not installed

* Add warning
2018-05-23 14:43:18 +02:00
8b317e77c2 fix nxos_system test (#40599)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-23 17:19:50 +05:30
ca0fdf0e7f reduce notifications on network/f5 (#40593) 2018-05-23 11:00:59 +01:00
f71cea052d cs_vpc: fix state=present to start vpc (#40587) 2018-05-23 08:53:58 +02:00
8e38668285 fixing disabled azure sanity tests (#40519)
* fixing azure sanity tests

* fixing sanity

* fixing some tags issues

* removed unnecessary things from managed disk

* fixed location problem

* more sanity fixes

* sanity test fixes

* final sanity fixes?

* final fixes again

* undo changes related to container instance

* removed container instance

* readd again

* fixed stupid mistake

* removed _azure from changes

* one more mistake
2018-05-23 00:49:04 -04:00
9bc5dd5d09 fix receive_disable ignore (#40579) 2018-05-22 20:06:17 -07:00
0a701ff746 Detect separate git dir and set git config path value appropriately
PR #38016

Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
2018-05-23 00:33:22 +02:00
7d2012fdd7 Implemented support for Repository selection when installing module (#39909)
* Implemented support for Repository selection when installing module

* Fixed AllowClobber check

* Fixing missing AllowClobber argument

* Fixed missing -Force switch

* Test installing package from custom repo

* Added custom repo variables

* Fixed repo registration

* Modified output check

* Modified output check

* Adding debug output

* Modified update handling

* Fixed output check

* Added missing PowerShellGet 1.6.0 install

* Added error handling

* Modified test output check

* Fixing output check

* Fixing output filter

* Implemented registering custom repo

* Fixing registering custom repo

* Fixing registering custom repo

* Fixing registering custom repo

* Tweaked module to shorten execution time

* Removed installing PowerShellGet 1.6.0

* Re-added Install-NugetProvider
2018-05-23 07:36:57 +10:00
8deced3e04 Fix shebangs and file modes and update tests. (#40563)
* Add execute bit sanity test and apply fixes.
* Add shebang test for `lib` dirs and apply fixes.
* Shebang and execute bit cleanup.
2018-05-22 14:25:36 -07:00
f84f3de7c2 powershell: Respect remote_tmp path set by the user (#40210)
* powershell: Respect remote_tmp path set by the user

* Fixed up linting error and typo

* Added changelog
2018-05-23 07:12:32 +10:00
070a5557d1 always_run: removed deprecated always_run task option (#40470) 2018-05-23 07:10:36 +10:00
7145dd05b6 foreman: Fix get_option regression (#40534)
d303c0706c introduced a regression because
of a partial port from _options to get_option. This fixes it.
2018-05-22 15:40:51 -05:00
0840cb1fde Add flatpak_remote module (#40189)
* Adding flatpack_remote module

Includes contributions by oolongbrothers: adding documentation fixes, fixing import placements, fix module idempotency, improving error propagation.

* Aligns module with conventions and best practices

For improved robustness and readability; based on feedback by
dagwieers.

* Improves the module documentation

* Aligns copyright statement to conventions

* Renames remote > flatpakrepo_url and reworks documentation
2018-05-22 15:08:16 -05:00
52426b9c9d Add flatpak module (#40286)
* Adding flatpak module

Includes contributions by dagwieers

* Incorporates feedback by dagwieers

* Improves and aligns documentation to conventions

* Makes matching for url more robust
2018-05-22 15:08:07 -05:00
29559d8f25 Adds the bigip_gtm_monitor_external module (#40560)
This module can be used to manage GTM external monitors
2018-05-22 12:50:05 -07:00
d8d86079c0 Corrects docs for ltm external monitor (#40559)
Examples were incorrect. This fixes them
2018-05-22 12:28:53 -07:00
1d2d4a9015 Adds bigip_monitor_external module (#40558)
This module can be used to manage external LTM monitors on a bigip
2018-05-22 12:11:30 -07:00
4b2bba62b3 Update 2.6 roadmap schedule. 2018-05-22 10:57:51 -07:00
d45b044992 Make xenserver_facts actually work (#35821)
* Get the str value of xmlrpc.client.DateTime

* get_all_records should be used instead of get_all

* Facts returned with 'ansible_facts'

* Remove some redundant code

* Add cheese as maintainer

* Add changelog entry
2018-05-22 13:31:35 -04:00
d5dbd8c76d EdgeOS module improvements (#39530)
* Update docs and use to_text on strings

* Add warning to use network_cli
2018-05-22 12:22:18 -04:00
e8d02a3a0f Search all assigned ipv6 addresses instead of just the first (#40533)
* Search all assigned ipv6 addresses instead of just the first

* Add test for idempotency with multiple ipv6 addresses assigned
2018-05-22 12:00:16 -04:00
ed7d6d9c19 Add changelog for new GCP modules (#40542) 2018-05-22 11:35:29 -04:00
858b1c277b [docs] Update ec2 module to use wait_for_connection instead of wait_for (#40171) 2018-05-22 11:21:04 -04:00
0339c8037b use correct object in error
fixes #40453
2018-05-22 11:10:57 -04:00
ea176427b4 Group logic detecting user, ensure rsync_opts is a list if omitted. Fixes #40483 2018-05-22 11:00:54 -04:00
28f19fc7b3 Fix persistent timeout definitions (#40540) 2018-05-22 11:00:08 -04:00
90588f4970 New module: GCP Compute Firewalls (#39032) 2018-05-22 10:55:12 -04:00
fd3ed6660e New module: GCP Compute Forwarding Rules (#38613) 2018-05-22 10:53:58 -04:00
c9b445c182 New module: GCP Compute Global Address (#38614) 2018-05-22 10:53:41 -04:00
d3222a97c8 New module: GCP Compute Global Forwarding Rules (#38615) 2018-05-22 10:53:12 -04:00
886f930e59 New module: GCP Compute Images (#38616) 2018-05-22 10:52:50 -04:00
41c9ba08a4 New module: GCP Compute Ssl Certificates (#38620) 2018-05-22 10:44:44 -04:00
43afb5465f New module: GCP Compute Instance Groups (#38617) 2018-05-22 10:39:49 -04:00
05c1257aeb New module: GCP Compute Target Pools (#38623) 2018-05-22 10:38:07 -04:00
e09c661ae5 New module: GCP Compute Url Maps (#38625) 2018-05-22 10:36:51 -04:00
e4bbcbbdae New module: GCP Compute Instance Group Managers (#38934) 2018-05-22 10:36:20 -04:00
79b8ed8622 Adding support for GCP Compute Target Ssl Proxys (#39033) 2018-05-22 10:31:45 -04:00
dd02a4e943 create cisco type 5 filters (#39901) 2018-05-22 13:35:54 +01:00
c29b03e77b VMware: Fix file operation to work with ESXi directly (#40148)
Now, file_operation module can be used with both vCenter and Standalone ESXi server.
2018-05-22 17:40:47 +05:30
da79989e70 VMware: vmware_guest Documentation update (#38377)
This PR refactors vmware_guest module

- VMware: Documentation update
- Elaborate more on effects of state on virtual machine.
- Specify 'force' option usage.
- Formatting
- add review comments

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-22 17:31:20 +05:30
69eef14e3b uses .txt for shared content (#40416) 2018-05-22 12:01:00 +01:00
a71d68105c Fix typo in playbooks_filters doc (#38545)
Remove incomplete, duplicate sentence 

+label: docsite_pr
2018-05-22 11:55:00 +01:00
c0b264d7b7 Adding slxos_vlan module (#39197)
* Adding slxos_vlan module
2018-05-22 11:43:46 +01:00
683ab9bb9f Adding slxos_l3_interface module (#39320)
* Adding slxos_l3_interface module

* Corrected return values

The returned IPv4 address has a prefix length, not a subnet mask
2018-05-22 11:41:25 +01:00
3744b69a40 simplified DistributedVirtualSwitch namespacing (#40191) 2018-05-22 15:38:31 +05:30
26ea64cdea New module: heroku_collaborator (#39001) 2018-05-22 11:50:53 +02:00
97070c9688 fix nxos_system issues (#40347) 2018-05-22 14:19:34 +05:30
7eb98660a4 digital_ocean_domain: fix do not fail if domain already is absent (#40446) 2018-05-22 07:59:06 +02:00
9b22438a9b Adds bigiq utility license module (#40518)
This module can be used to manage utility licenses on a BIG-IQ
2018-05-21 20:18:41 -07:00
4689de9db8 Fixes bigiq doc error (#40517)
Corrects the return values for a bigiq module
2018-05-21 19:55:51 -07:00
f9ae11ea88 Add botmeta entry for lib/ansible/release.py. 2018-05-21 19:34:25 -07:00
cfe7de10ef Update Ansible release version to 2.6.0dev0. 2018-05-21 19:29:14 -07:00
0371e7c866 fixed prerelease support in deb packaging 2018-05-21 18:21:56 -07:00
c98043a4c0 New release v2.6.0a1 2018-05-21 17:26:16 -07:00
1ac180c74d winrm: source user from options than remote_user (#40467)
* winrm: source user from options than remote_user

* fixed up mock for kerberos import

* Added changelog fragment

* get hostname from option as well
2018-05-22 09:36:48 +10:00
e4edb2842a 2.6 changelog gen/version/root dir cleanup (#40421)
* patched in changelog gen stuff from stable-2.5
* Makefile updates
* release.py as single-source-of-truth
* Remove obsolete ansible-core-sitemap.xml file.
* Move ROADMAP.rst into README.rst.
* dynamic rpm changelog, zap old deb/rpm changelogs
* fix changelog in MANIFEST.in
* Remove obsolete hacking/update.sh script.
* Remove ref to deleted authors script.
* Remove ref to removed module-formatter script.
* Update headings to match script names.
* MANIFEST.in cleanup
* removed RELEASES.txt and versions.yml
* removed obsolete release generation playbook/bits (not used since 2.5)
* misc Makefile cleanup
* speculative changes to DEB versioning
* allow override of DEB_VERSION/DEB_RELEASE
2018-05-21 16:14:53 -07:00
eb818df1ec Ios test fixes (#40503)
* Return messages generated from edit_config to module

* This does not seem to work that way

* Change test IP addresses to not conflict with device config
2018-05-21 17:51:21 -04:00
8d39515914 Remove tab check from validate-modules.
It is redundant with the pycodestyle W191 "indentation contains tabs" check.
2018-05-21 14:45:19 -07:00
db195831fd win_environment: Added explicit check for null, empty string with state=present (#40468)
* win_environment: Added explicit check for null, empty string with state=present

* Added changelog fragment
2018-05-22 06:45:33 +10:00
5634dae290 Remove the cherrypick script
We only needed it for migrating cherrypicks between the unified repo and
the ansible-modules-* repos.  Now that we aren't supporting 2.3, we no
longer need this script.
2018-05-21 14:50:24 -05:00
32d6a354d7 postgresql_user: set encrypted as default and fix empty password reporting changed (#36931)
* Set encrypted as default and fix empty password reporting changed

* Starting with Postgres 10 `UNENCRYPTED` passwords are removed and
because of that this module fails with the default `encrypted=no`.
Also encrypted passwords are suported since version 7.2
(https://www.postgresql.org/docs/7.2/static/sql-createuser.html) which
went EOL in 2007 and since 7.3 it is the default. Because of this it
makes a lot more sense to make `encrypted=yes` the default. This won't
break backward compatibility, the module would just update the user's
password in the DB in the hashed format and everything else will work
like before. It's also a security bad practice to store passwords in
plain text. fixes #25823
* There was also a bug with `encrypted=yes` and an empty password always
reported as changed.
* Improved documentation for `encrypted`/`password` parameters, and
removed some obsolete notes about passlib.

* Fix clearing user's password to work with all versions of Postgres

* Add tests for clearing the user password

* Fix documentation atfer rebase

* Add changelog fragment
2018-05-21 14:49:44 -05:00
062f0444a1 remove extra ) 2018-05-21 15:19:13 -04:00
ee95b71f7b reset_connection is not run_once 2018-05-21 15:19:13 -04:00
b845db0169 Explicit availability of 'null' timeout in expect (#40429) 2018-05-21 12:32:06 -05:00
3b14d2b745 Correct doc for cache plugin
Section is a part of ini, so removing it as separate key.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-21 13:29:03 -04:00
7255b6a151 Fixes #29818: chkconfig command is not daemonized, uses run_command()
In the last commit I modified the code to run commands when they are
daemonized. But the execution of "chkconfig" is not daemonized so it
uses "self.module.run_command(cmd)".

This commit set the default localize to allow proper screen scraping of
chkconfig command.
2018-05-21 12:54:18 -04:00
516e18f4b8 cloudstack: fix query tags by resourceid (#40482) 2018-05-21 17:16:44 +02:00
483df13626 Fixing issues with httpapi (#40388)
* I seem to have forgotten the back half of tests

* Set http timeout from persistent_command_timeout

* Tweak URL generation and provide URL on error

* Push var_options to connection process

* Don't wait forever if coming from persistent

* Don't send the entire contents of variables to ansible-connection
2018-05-21 15:58:35 +01:00
231c3586bd Move summary to top for issue template (#40401) 2018-05-21 10:10:20 -04:00
1c20029694 Fix ctrl+c in pause module and add tests (#40134)
* Fix all cases with pause and ctrl+c
 - naked:
	- pause:
 - with prompt
	- pause: prompt=hi
 - time wait
	- pause: seconds=60
 - time wait with prompt
	- pause: seconds=60 prompt=hi


Fixes #35372

* Use curses to control stdout
* Use curses to clear lines on interactive input
* Validate input for echo parameter and fail nicely if invalid
* Add integration tests for pause module using pexpect
* Use try except when trying to determine erase sequence to account for lack of TTY in containers in tests
* Improve output validation for regular paus test
* Accept two digit precision for pause length in test
* Check for seconds when seconds is specificed, minutes when minutes is specified
* Add test for no TTY mode

Co-authored by: Toshio Kuratomi <a.badger@gmail.com>
Co-authored by: Brian Coca <brian.coca+git@gmail.com>
2018-05-21 10:04:43 -04:00
39f9d3e4a6 Add the ability to specify an install_dir to the gem module (#38195)
* Add the ability to specify an install_dir to the gem module

* Add GEM_HOME when installing a non-global gem

* Add tests for custom gem path

* Fix sanity tests

* Add changelog entry

* Rebase and add tests for incorrect options

Co-authored by: Antoine Catton <devel@antoine.catton.fr>
2018-05-21 09:55:43 -04:00
fc8663edc0 Integration tests for Infoblox 2.5 modules (#40344)
* Update nios.py

* Update nios.py

* Update nios.py

* nios lookup errors out when there are no results #37970  Open	

Indentation failure issue resolved

* Returning empty list instead of None

In case of no results, res will be returned as an empty list instead of None (implementing ganeshrn comment)

* infoblox ipv6 support changes

* infoblox ipv6 support changes

* for fixing pep8 errors

* moving ipaddr check to utils

* adding ipv6addr check

* increasing space to resolve pep8 error

* modified the playbook examples to valid ones

* Update nios_network.py

* integration tests for nios 2.5 modules

* modification done in existing integration nios testcases

* dns_view nios module tc

* host_record nios module tc

* network nios module tc

* network_view nios module tc

* zone nios module tc

* changes to fix shippabe errors for PR 40344

* PR40344 shippable fix

* PR40344 shippable fix

* PR40344 shippable fix

* PR40344 shippable fix

* PR40344 shippable fix

* PR40344 shippable fix

* PR40344 shippable fix

* PR40344 shippable fix

* PR40344 shippable error fix

* 40344 shippable fix

* 40344 shippable fix

* 40344 shippable fix

* 40344 shippable fix

* 40344 shippable fix

* 40344 shippable fix

* PR40344 shippable error fix for block comment should start with '# '
2018-05-21 17:04:20 +05:30
89732a1e5f rabbitmq_plugin: add integration tests (#40389)
* rabbitmq_plugin: add integration tests

* Use import_tasks instead of include
2018-05-21 07:49:45 +02:00
d74ccea44f rabbitmq_vhost: add integration tests (#40387)
* rabbitmq_vhost: add integration tests

* Use import_tasks instead of include
2018-05-21 07:48:40 +02:00
44d9dd2c77 Fix example in ipa_dnszone module (#40443)
The ipa_dnszone module had a typo in the examples where "ipa_dnsrecord"
was being used instead of "ipa_dnszone".
2018-05-20 16:28:02 +05:30
ad69ef88e7 Skip N35 and N3L platforms for nxos_evpn_global test (#40333) 2018-05-19 09:32:59 +05:30
1190591e3c Adds the bigip_gtm_global module (#40430)
This module can be used to manage the global GTM settings on a BIGIP
2018-05-18 20:48:09 -07:00
510995bd83 Adds remaining fqdn params to bigip_node (#40427)
This patch adds params for auto_populate, address type, up interval
and down interval params to bigip node
2018-05-18 19:14:07 -07:00
8b5f34e110 Add Na_ontap_broadcast_domain module. (#39753)
* add first module

* fix case

* Create na_ontap

* Fix small pep8 errors

* Fixes for issues found by Amit

* fixes for amit

* fix doc

* get doc to compile
2018-05-18 17:17:01 -07:00
53b7bf33a7 Disable failing cloudstack tests. 2018-05-18 14:46:19 -07:00
5af91ef407 Adds wait parameters to bigiq applications (#40420)
The wait parameter allows the module to wait or not wait when
an application is created. By default the modules will wait.
2018-05-18 13:51:16 -07:00
1492414165 Fixes password missing in bigip_device_trust (#40414)
The documentation did not match the code. This patch fixes the code
to correctly fallback the peer password if necessary
2018-05-18 11:58:42 -07:00
47173cc8b1 Clarify wording on 2.6 roadmap schedule. (#40408)
* Clarify wording on 2.6 roadmap schedule.

* Remove redundant use of "Core".
2018-05-18 13:39:10 -05:00
265a51ab93 format module values in gce_net module documentation (#40047)
* format code in gce_net module

The values passed to the module weren't being highlighted properly in
the documentation page.

As a result, use markup code format for the values provided in order to
be spotted easily on the page.

Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>

* separate phrases

Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>

* apply review fix for module options

According to http://docs.ansible.com/ansible/devel/dev_guide/developing_modules_documenting.html#formatting-functions

Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2018-05-18 16:46:49 +01:00
5cf1a5edfd corrected version added 2018-05-18 11:34:37 -04:00
fe4368ce15 removed_in: 2.6 is valid (#40399) 2018-05-18 15:32:31 +01:00
236c1ddc98 add maintainer information for Memset modules and module_utils (#40385) 2018-05-18 14:08:42 +01:00
fb6ae90f60 Memset: initial module, integration tests, module_utils and supporting documentation. (#40071)
*  * Memset:
   * module_utils and associated documentation.
   * module to manage DNS zones.
   * integration tests to run against Memset's API.

* * memset.py:
  * remove import of requests from memset.py in favour of internal Ansible modules.
  * import necessary Ansible modules for request and response handling.
  * create a response object in order to retain a stable interface to memset_api_call from existing modules.
  * rework memset_api_call to remove requests.
* memset_zone.py:
  * improve short description to be more verbose.
  * ensure all imports directly follow documentation.
  * remove any reference to requests.
  * correct keyerror carried over from elsewhere.

* remove dependency on requests from documentation string

* disable integration tests until we have a cleanup method available
2018-05-18 10:45:38 +01:00
9e3ad96fa9 rename network_get network_put modules to net_get net_put (#40381) 2018-05-18 14:41:47 +05:30
de2c1dc241 Fix netconf get_config lock/unlock (#40378)
Lock/unlock the datastore that is given as input for
instead of default to `running`
2018-05-18 13:10:28 +05:30
a996d4836a rhsm_repository: use C locale for out/err scraping (#40338) 2018-05-18 07:55:37 +02:00
484b86a643 Adds the virtual argument to bigip_policy_rule (#40373)
This patch allows the module ot manage forwarding actions to virtual
servers in addition to the existing pools argument
2018-05-17 21:08:20 -07:00
f87cda8a54 small fixes and additions to bigip_virtual_address (#40362)
* Updated parameter names to match updated features in BIGIP
* Added support for route domains
2018-05-17 20:45:53 -07:00
9eb2a6b41b Add cnos to network target prefixes. 2018-05-17 16:26:55 -07:00
e9d7fa0418 HTTP(S) API connection plugin (#39224)
* HTTPAPI connection

* Punt run_commands to cliconf or httpapi

* Fake enable_mode on eapi

* Pull changes to nxos

* Move load_config to edit_config for future-preparedness

* Don't fail on lldp disabled

* Re-enable check_rc on nxos' run_commands

* Reorganize nxos httpapi plugin for compatibility

* draft docs for connection: httpapi

* restores docs for connection:local for eapi

* Add _remote_is_local to httpapi
2018-05-17 18:47:15 -04:00
cc61c86049 sysvinit service module (#34962)
* sysvinit service module

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-05-17 17:32:27 -05:00
46d35d8919 unarchive now passes the E322 test 2018-05-17 15:24:56 -07:00
3760cc3a7d Fix python-2.4ism that was still present in basic.py's use of tempfile 2018-05-17 15:24:56 -07:00
0442efd33a Move rewriting of path earlier in the argument handling as other things depend on the path 2018-05-17 15:24:56 -07:00
021f33e063 original basename minus src 2018-05-17 15:24:56 -07:00
20b9ca6e7c Rename original_basename parameter in various file-related modules
original_basename is a private internal parameter so name it
_original_basename to reflect that it is internal.
2018-05-17 15:24:56 -07:00
cd4d0069ba Reorganize ensure_directory to make things clearer
* value of file_args['path'] is now more clear
* We already have b_path so reuser that
* Add comments
2018-05-17 15:24:56 -07:00
7d2ec56a99 Correct bug reporting the diff when state=touch as absent 2018-05-17 15:24:56 -07:00
c8ac02d6f2 Emit a warning when src is used with a state where it should be ignored 2018-05-17 15:24:56 -07:00
90770a290f Don't rewrite remote paths when remote is secretly local (#40259)
* Don't rewrite remote paths when remote is secretly local

* Remote overriding is configurable in connection

* Use c.DEFAULT_LOCAL_TMP instead of remote_tmp

* Remove remote_is_local from ConnectionBase

* remote_is_local->_remote_is_local

* Add warning signs to _remote_is_local and explanatory comments to its use
2018-05-17 23:21:30 +01:00
b12cf754f6 1Password lookup plugin (#37207)
* add pytest_cache to gitignore

* onepassword lookup plugin

* fix linter/style test complaints

* second pass at making pycodestyle happy

* use json module instead of jq

* update copyrights, license & version added

* fix python2 compatibility

* doh. fix spacing issue.

* use standard ansible exception

* remove potentially problematic stdin argument

* actually call assertion method

* add support for top-level fields

* make vault uuids pedantically consistent in fixture

* fix new style issues

* ability specify section & correct case handling

* improve error handling

* add onepassword_raw plugin

* Add maintainer info

* Move common code to module_utils/onepassword.py

* Load raw data JSON data for easier use in Ansible

* Put OnePass class back inside lookup plugin

There is no good place for sharing code across lookups currently.

* Remove debugging code in unit tests

* Patche proper module in raw unit tests

* Add changelog entry

Co-authored-by: Scott Buchanan <sbuchanan@ri.pn>
2018-05-17 17:29:47 -04:00
7e2087731e Add new OpenStack module for changing metadata of compute instances (#19113)
* Add new OpenStack module for changing metadata of compute instances

* Add missing RETURN documentation

* Fix API calls to match shade's implementation.

API was changed in the following PR (openstack-infra/shade):
https://review.openstack.org/#/c/319395

* Replace type by isinstance when type checking

* Add ANSIBLE_METADATA

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Bump the ansible version

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Add support for check_mode

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Fix sanity tests

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Force the meta parameter to be a string

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Use short GPL license

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Change meta argument to dict

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>
2018-05-17 17:24:28 -04:00
db786b846f fixes issue 39472: (#40341)
With python 3.6 spwd.getspnam returns PermissionError instead of
KeyError if user does not have privileges
2018-05-17 17:22:40 -04:00
82f6f08712 allow non-integer values in /etc/default/passwd to mirror solaris behavior 2018-05-17 16:57:58 -04:00
de8b6b55f7 cs_vpc: implement state=started (#40319) 2018-05-17 22:42:53 +02:00
6ac2045db8 Adding support for GCP Compute Target Http Proxys (#38622) 2018-05-17 16:42:19 -04:00
22ccbf5cbb Adding support for GCP Compute Target Tcp Proxys (#38624) 2018-05-17 16:42:10 -04:00
afdbdd99ed Adding support for GCP Compute Target Https Proxys (#38908) 2018-05-17 16:34:20 -04:00
98a198a777 Handle incorrect data type in list lookup plugin (#35483)
handle incorrect data type in list lookup plugin
Fixes #35481
test to ensure that loops properly handle incorrect datatypes

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-05-17 15:29:36 -05:00
6a4f3fb729 S3 versioned lifecycle (#40161)
* - add tests for s3_lifecycle
- fix a bug comparing transitions with different storage_types

* make s3_lifecycle work with boto3

* add noncurrent version lifecycle rules
2018-05-17 15:07:40 -04:00
ca3390377a redhat_subscription: C locale for stdout scraping (#40165) 2018-05-17 20:44:06 +02:00
59e541e31a Change behavior to behaviour in docs and tests (#39392)
* Change behavior to behaviour

- use existing fact to get hash setting rather than shell task
- fix code highlighting syntax in playbooks_variables.rst

* Re-wrote intro section; this entire topic needs a clean-up/rewrite.
2018-05-17 14:07:12 -04:00
c9d3bb59a4 Do not join flag parameters in iptables module (#36658)
* Do not join flag parameters

This put a comma between every character of the tcp flag parameters, resulting in a bad iptables command.

Fixes #36490

* Use suboptions to ensure tcp_flags options are lists

* Add unit tests for tcp_flags

* Add example of how to use tcp_flags
2018-05-17 13:53:51 -04:00
13aff08748 Add better error messages and checking to known_hosts (#38307) 2018-05-17 13:53:40 -04:00
02bc4c570f Remove python-keyczar dependency (#38534)
* Remove python-keyczar dependency

* Remove python-keyczare from Dockerfiles

* Revert "Remove python-keyczare from Dockerfiles"

This reverts commit 264be66ad8.
2018-05-17 13:53:33 -04:00
279cf596dc New Module: gitlab_hooks module and related tests (#40096)
* Added gitlab_hooks module and related tests

* Fix sanity check issues

* Refactor to use common util method, add check_mode support

* Fix module shebang
2018-05-17 13:52:48 -04:00
7d87995207 New Module: gitlab_deploy_key and related tests (#40097)
* Added module gitlab_deploy_key and related tests

* Fix sanity check issues

* Refactor to use common util method, add check_mode support

* Fix module shebang
2018-05-17 13:52:40 -04:00
571c183f59 Fix failing aws_ses_identity integration tests (#39560)
* Fix failing aws_ses_identity integration tests

Reduce boilerplate with yaml anchor

* remove unstable test alias

* Update feedback forwarding check to use desired state rather than
repeated API calls.
2018-05-17 13:45:02 -04:00
40146f33f9 Add release date for v2.5.0 to changelog (#40321)
According to https://github.com/ansible/ansible/blob/stable-2.5/changelogs/CHANGELOG-v2.5.rst#v250
Ansible 2.5.0 was released on 2018-03-22.

Signed-off-by: Harald Albers <github@albersweb.de>
2018-05-17 18:23:16 +01:00
0fba72ce3c uri: Add form-urlencoded support to body_format (#37188)
* uri: Add form-urlencoded support to body_format

This PR adds form-urlencoded support so the user does not need to take
care of correctly encode input and have the same convenience as using
JSON.

This fixes #37182

* Various fixes

* Undo documentation improvements

No longer my problem

* Fix the remaining review comments
2018-05-17 13:18:18 -04:00
0f16b26080 docs: Suggest get_url or uri for file checksum validation (#40087)
Fixes #13665
2018-05-17 11:52:33 -04:00
dda7d9e704 [AWS] Add Ansible Version to botocore user agent string (#39993)
Pull `config` out if it was provided to boto3_conn and add the useragent string
2018-05-17 11:41:14 -04:00
677fe1076d User unexpire (#39758)
* Allow negative values to expires to unexpire a user

Fixes #20096

(cherry picked from commit 34f8080a19)
(cherry picked from commit 54619f70f4)
(cherry picked from commit 8c2fae27d6)
(cherry picked from commit db1a32f8ca)

* tweaked and normalized

 - also added tests, made checking resilient
2018-05-17 11:34:13 -04:00
19356c03e8 filesystem tests: update ocfs2 fs size on Trusty
Using Ubuntu 14.04, test fails because 'blkid' < 2.21 doesn't recognize
'ocfs2' filesystem smaller than 108Mo:
6baa150398

filesystem: fix MKFS_FORCE_FLAGS for ocfs2

mkfs.ocfs2 -F won't work because mkfs.ocfs2 asks for a confirmation:

    $ mkfs.ocfs2 -F img
    mkfs.ocfs2 1.6.4
    Cluster stack: classic o2cb
    Overwriting existing ocfs2 partition.
    WARNING: Cluster check disabled.
    Proceed (y/N):

The undocumented 'x' switch must be used too.
2018-05-17 11:18:18 -04:00
Luc
51af25bf60 remove bad lines
add new line and update choice documentation
adding description for ocfs2 support
use correct variable ansible_distribution to test ocfs2 with Debian
distribution
use ansible_os_family for Debian
increase ocfs2 fs size to 20M (minimal size 11 instead of 10M)
2018-05-17 11:18:18 -04:00
4f86bec977 Update filesystem.py
add ocfs2 support for module filesystem
Update setup.yml
delete trailing spaces
add ocsfs2 defaut var
Install ocfs2-tools for all linux
Testing ocfs2 on for Ubuntu - restrict blkid to be be done
2018-05-17 11:18:18 -04:00
63e16431b7 Fix legacy Nexus 3k integration test and module issues. (#40322)
* Add setup ignore_errors for nxos_config test

* Fix parse_fan_info for n3k

* Skip bidir tests for N3k

* Omit vni config for n3k

* Skip unsupported nxos_vrf_af test on N3K

* Add legacy N3K platform tag
2018-05-17 20:29:00 +05:30
e493891d08 Fix flatten filter documentation 2018-05-17 10:42:41 -04:00
1cb4619c9a Modifying cnos-facts, cnos_command and cnos-config in line with the design followed in Ansible. Adding unit test cases for these modules. Added plugins to support them. (#39955)
* Modifying cnos-facts, cnos_command and cnos-config in line with the design followed in Ansible. Adding unit test cases for these modules. Added plugins to support them.

* Removing doc fragment conflicts with other modules

* Replacing show with display
2018-05-17 10:06:24 -04:00
30f992f260 Add netconf_get module (#39869)
* Add netconf_get module

Implements part-1 of proposal #104
https://github.com/ansible/proposals/issues/104

*  Add netconf_get module
*  Refactor `get`, `get_config`, `lock`, `unlock`
   and `discard_changes` netconf plugin api's
*  Add netconf module_utils file which netconf module
   related common functions
*  Refactor junos and iosxr netconf plugins

* Fix source option handling

* Fix review comments

* Update botmeta file

* Update review comments and add support for lock

* Lock update fix

* Fix CI issue

* Add integration test and minor fixes

* Fix review comments

* Fix CI failure

* Fix CI issues

* Fix CI issues

* Fix review comments and update integration test

* Fix review comments

* Fix review comments

* Fix review comments

Fix reveiw comments
2018-05-17 17:38:12 +05:30
4c0ceaea3d changed accportgrp to accbundle (#40104)
* changed accportgrp to accbundle

* fixed shippable complaints

* changed policy_group_type to interface_type
2018-05-17 13:11:31 +02:00
1328cc1fa0 Update ROADMAP_2_6.rst 2018-05-17 16:10:35 +05:30
c86860c911 Update ROADMAP_2_6.rst 2018-05-17 15:54:51 +05:30
1f0c2ca6c9 cs_instance_facts: add host return (#40307) 2018-05-17 12:17:49 +02:00
912e07a036 cloudstack: added fetch_list=True where appropriate (#40233) 2018-05-17 12:16:43 +02:00
44eaa2c007 opennebula: new module one_host (#40041) 2018-05-17 10:10:49 +02:00
4fd770f792 Update ROADMAP_2_6.rst 2018-05-17 11:57:50 +05:30
98579029d7 small grammar improvements to add clarity (#40157) 2018-05-17 14:09:32 +10:00
b116eaa485 Clarify in docs that end_play affects all hosts (#40235) 2018-05-17 13:53:46 +10:00
db8f10e9cb Improved scaleset facts (#39722)
* improved scaleset facts

* scaleset facts fix some errors

* adding version_added for format param

* trying to break lines

* fixed syntax

* small code restructuring

* fix syntax

* fixed now

* add new test to scaleset / scaleset facts

* make scaleset test more clear

* temporarily comment out...

* try to retrieve scaleset facts

* try to add postfix

* fixed mistake

* fixed problem when no loadbalancer attached

* fixed another bug

* fixed sanity and a few other

* fixed pep8

* another try

* changed ansible to curated

* updated tests

* updated example and a few other mods

* small fixes

* removed unnecessary pass

* removed some items from ignore.txt

* remove file added by mistake
2018-05-17 13:28:30 +10:00
ee2adb45a8 Adding module win_domain_computer (#35954)
* Adding module win_domain_computer

This module is a wrapper of powershell *-ADComputer commands.
The main use case is to add non-windows computers to Active Directory
through a bridge windows computer.

* Replace `Set-Attr`

* Fix case insensitive comparisons

* Add omitted parameters in cmdlets

* Enhance module documentation

* Simplify `state` as case insensitive.

* Simplify try catch

* Fix indentation

* Make message errors more descriptive.

* Specify type in boolean parameters

* Keep parameter ingestion together

* Delete superfluous resultobj

* Workaround failing Erroraction

* Add target info in error

* Cosmetic changes

* Fix up Fail-Json to use correct message param
2018-05-17 13:06:01 +10:00
57c801c34f RDS: split into more sensible modules
RDS instance and snapshot facts modules
Move common code into module_utils/rds.py

This work is a precursor to new rds_snapshot
and rds_instance modules

Improve rds_snapshot_facts to latest AWS standards

Improve exception handling, pagination etc.

Version added

Add clustered snapshot facts

Add proper RETURN information for snapshots and cluster_snapshots

pep8

Co-authored-by: Michael De La Rue <jababubic.margoteen@spamgourmet.com>
2018-05-16 22:48:57 -04:00
42368ce310 rds_instance_facts module
Create rds_instance_facts module using boto3.

Create common rds.py module_util library to be used by
rds_instance_facts and future RDS modules.

rds_instance_facts: use latest AWS helper methods

* Use `module.client` with `retry` to create AWS connection
* Return tags, using AWSRetry helper to backoff
* Use paginator to describe DB instances
* Further improve exception handling
* Fix RETURN documentation

update version_added

Co-authored-by: Michael De La Rue <jababubic.margoteen@spamgourmet.com>
2018-05-16 22:21:47 -04:00
2f70360698 Add windows module for changing the hostname (#40295)
Co-authored-by: Ripon Banik <riponbanik@users.noreply.github.com>
2018-05-17 11:41:37 +10:00
5c39c3b2d1 Module basic.py to create parent dirs of tmpdir if needed (#40201)
* Module basic.py to create parent dirs of tmpdir if needed

* Added warning to dir creation

* Assert if make_dirs was called or not in unit tests
2018-05-17 09:52:46 +10:00
5df370243d Fix case (#40272)
* Github logins are case sensitive

* Fix login case across all modules
2018-05-16 19:51:55 -04:00
6e4a2b17de [new module] Managed Azure Container Service (AKS) (azure_rm_aks) (#35888)
* add aks module and integration tests

* linting

* update tests

* sanity check

* make some changes to AKS module

* make integration test work

* add fact

* add resource_group name

* add fact test

* fix test

* fix test

* linting

* changed line endings for facts

* output kubeconfig

* Update azure_rm_aks.py

* update integration test aliases

* update aliases

* add cloud_environment and auth_source to args

* Fix comments from Jborean93 (#3)

* update

* fix

* fix

* fix

* fix

* update doc

* fix
2018-05-16 16:08:27 -07:00
837aada4a8 win_updates: fix typo with download failure and whitelist on multiple updates (#40283) 2018-05-16 18:04:58 -04:00
5c124876fa Fix uri test on Python 2.6. 2018-05-16 14:59:24 -07:00
12055eace6 Add integration tests for sqs_queue module (#40110) 2018-05-16 17:34:31 -04:00
223a4c0685 Fixes #19392: allow commands to be specified as lists. new syntax is documented as well. (#40261)
* Fixes #19392: allow commands to be specified as lists.  new syntax is documented as well
2018-05-16 13:37:39 -07:00
b325e9900c Adds BIGIQ application HTTPS WAF module (#40270)
This module can be used to manage HTTPS WAF applications on a BIGIQ
2018-05-16 12:49:21 -07:00
1f2cfb0a91 Adds the BIGIQ application HTTPS offload module (#40269)
This module allows you to manage HTTPS offload applications on a BIGIQ
2018-05-16 12:26:59 -07:00
5e7878a6a1 Adds various fixes for f5 modules (#40208)
* Adds stty expansion for cli commands
* minor fixes
* Make bigiq rest client work correctly
2018-05-16 12:14:12 -07:00
548282139f Fixes incorrect variable name (#40274)
Incorrect variable name was causing a NameError

  NameError: name 'comlpex_args' is not defined
2018-05-16 12:13:22 -07:00
d5a5e37fcf Add fallback check for IAM role temp creds (#40240)
* Add fallback check for IAM role temp creds
2018-05-16 14:27:49 -04:00
6227c2ac75 More file refactoring (#40114)
* Set src in the state functions rather than the toplevel

A good API should only require passing one version of a piece of data
around so do that for src

* Move the rewriting of path into additional_parameter_handling

When the path is a directory we can rewrite the path to be a file inside
of the directory

* Emit a warning when src is used with a state where it should be ignored
2018-05-16 10:41:11 -07:00
cab0f21564 Add changelog for recursive copy fix 2018-05-16 10:37:05 -07:00
ca959bd429 Add exos and slxos to network prefixes list. 2018-05-16 10:35:38 -07:00
5ae77337a1 Rename persistent_connection_timeout to connect_timeout in INI section (#40260) 2018-05-16 19:01:24 +02:00
ad1a7d90ff Update structure to include file extensions (#36967)
* Update structure to include file extensions

It is not clear to novice users that the host/group_vars files should be yaml files. This highlights that IMHO a bit more clearer.

* pluralize
2018-05-16 12:19:21 -04:00
ca4147f2cc Fixes #34893 (#40166)
Fixes several bugs exposed in #34893
* Fixes relative path handling in copy so that it splits directories and
  reconstructs the correct file path
* Return failed in the proper circumstances
2018-05-16 11:09:32 -05:00
4373b155a5 Move k8s modules to dynamic backend (#39632)
* Move k8s modules to dynamic backend
2018-05-16 10:57:36 -05:00
7929aed7af Adding NetApp approvers (#40193) 2018-05-16 10:57:09 -05:00
4f19e6f436 Adds the BIGIQ FastL4 UDP application module (#40257)
This module allows you to manage FastL4 applications on a BIGIQ
2018-05-16 07:53:54 -07:00
398c57e70d Adds the BIGIQ application fastl4 tcp module (#40216)
This module allows you to manage FastL4 TCP Applications on a BIGIQ
2018-05-16 07:39:41 -07:00
db4ae20e8b ios_command: Correct answer example and consolidate docs on command param. (#40158)
* Correct answer example as 'c' cancels, not confirms. Moved command note to be in line with command docs.

* Correct example to escape square brackets. Remove '\r' mention as it does not get passed correctly.

* Add carriage return example since it works with double quotes.

* Remove colon which was breaking docs rendering.
2018-05-16 15:39:07 +01:00
f60731e27e Lenovo cli expansion - Modify command acronyms to full commands (#40218)
* Changing Lenovo Inc to Lenovo and update License file to be consistent.

* Editing cli commands to expanded form. Changing username and password fields as per Ansible standards.
2018-05-16 15:25:58 +01:00
39bed45baf ios_facts: Add check to skip lldp neighbors if lldp doesn't exist or isn't enabled. (#40109)
* Add check to skip lldp neighbors if lldp doesn't exist or isn't enabled.

* Re-enable check_rc on ios' run_commands
2018-05-16 09:33:57 -04:00
465114958e remove network_config,network_command from roadmap_2.6 (#40246)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-16 18:51:51 +05:30
62e1c14edc Pull persistent connection parameters via get_option (#39367)
* WIP Pull persistent connection parameters via get_option

* Fix pep8

* Add use_persistent_connection setting to paramiko_ssh plugin

* Add vars section to persistent_command_timeout setting and prevail provider values over config manager

* Use persistent_command_timeout on network_cli instead of timeout

* Fix unit tests

If we don't call loader to get network_cli, then _load_name is never
set and we get KeyError.

* Pull persistent_command_timeout via config  manager for ios connection local

* Pull persistent_command_timeout via config manager on connection local
2018-05-16 14:59:01 +02:00
865f2c5990 Fix junos_config confirm timeout issue (#40238)
* Fix junos_config confirm timeout issue

* Fix unit test
2018-05-16 18:14:23 +05:30
979f1e5ed1 save_snapshot_locally nxos_snapshot (#40227)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-16 14:59:23 +05:30
86c945a628 network_put and network_get modules (#39592)
* Initial commit

* Socket Timeout and dest file handler

* sftp handling

* module name change as per review

* multiple thread tmp file overwite problem

* Integration test suite for network_put

* add additional testcase for dest argument

* fix pylint/pep8/modules warnings

* add socket timeout for get_file

* network_get module

* pep8 issue on network_get

* Review comments
2018-05-16 14:38:43 +05:30
05c4f5997e azure_rm_securitygroup cannot create rules that allow IP address prefixes (#40070)
* support mutilple ip prefixes

* fix lint

* order is no matter

* remove alias

* fix
2018-05-16 16:28:14 +08:00
00d10e1d78 Disable failing etcd3 integration test. 2018-05-15 23:23:55 -07:00
5ae499466b Adds BIGIQ Fast HTTP module (#40213)
This module can be used to manage Fast HTTP applications on a BIGIQ
2018-05-15 22:43:40 -07:00
576ad58b0f Adds the BIGIQ application HTTP module (#40211)
This module can be used to manage http applications on a BIGIQ
2018-05-15 22:20:07 -07:00
95557b5df3 Changelog entry for https://github.com/ansible/ansible/pull/40188 2018-05-15 15:29:36 -07:00
0b3ed626b3 empty lines in csvfile means row has no items in list; check row len first. (#40089) 2018-05-15 17:26:53 -05:00
25a48fb89e Allow Unicode chars to be dumped by yaml stdout callback (#40188)
* Allow Unicode chars to be dumped by yaml stdout callback

Allow Unicode in yaml.dumper to support printing strings unescaped with
\uxxx chars.

Cf. https://stackoverflow.com/a/29600111

* Switch from decode('utf-8') to the more compatible to_text()
2018-05-15 15:23:13 -07:00
3dd33e7417 Corrects environment variable in example. (#40162) 2018-05-15 17:22:07 -05:00
cd89bc5941 New module - meraki_network (#39782)
* New module for CRUD functionality of networks in a Meraki environment
- Relatively full integration test suite
- More functions to come

* Fix indent for PEP8.

- Look into why this didn't show on a local PEP8 test

* Dag requested changes.
- Removed a section in get_net as its backend isn't implemented
- Documentation modifications
2018-05-15 22:42:09 +02:00
aa8aee538e Meraki: Improved integration testing and results (#39761)
* Improved integration testing and results
- Added get_org() function to return data for single org
- Added a lot of new integration tests
- Changed result now shows, still probably could be better

* Fix formatting errors for PEP8
2018-05-15 22:41:09 +02:00
b8a93c12e2 [aws_s3] Fix uploading src option on the target machine to a bucket (#39023)
* Fix backward compatibility for uploading src option on the target machine to a bucket

* Allow the module to handle errors for nonexistent files
2018-05-15 15:36:48 -04:00
ede47910f8 Add better handling for errors causing integration test instability (#40184)
* Add better handling for errors causing integration test instability
2018-05-15 15:31:19 -04:00
0dc73e7822 add SVI example for Cisco IOS/IOS-XE platform (#40021)
on networktocode slack there was a user that wanted an example of how to add a switch vlan interface.  This will work and was tested on a 3850 cisco ios switch
2018-05-15 14:07:23 -05:00
64f87867dd documents usage of enable mode on NXOS (#39859) 2018-05-15 20:04:24 +01:00
a363406d27 New zabbix_group_facts module (#39654) 2018-05-15 20:05:27 +02:00
07d6daf787 [Fix] Commented out Section due to no Quotes (#24258)
Variables are not being passed into ansible unless they are quoted since yaml will automatically interpret them as comments
2018-05-15 12:20:09 -04:00
b85970b2b0 New Module: ec2_vpc_vpn_facts (#35983)
* New module: ec2_vpc_vpn_facts

* Add integration tests for ec2_vpc_vpn_facts and the IAM permissions

* Add retry to VPC removal

* Use unique name for VGW

* Always clean up after tests and add retries
2018-05-15 12:13:46 -04:00
f04c876ecd Nxos fixes (#40117)
* Alter nxos_nxapi tests to test the right thing

* Defend #40027
2018-05-15 11:55:47 -04:00
caddf863df pkg returns 4 for "nothing to do" (#23007)
* pkg returns 4 for "nothing to do"

We need to handle this because our own checking for whether there's anything to do returns false negatives in certain circumstances.

We need to rename the response `rc`, because that name is reserved by
Ansible to indicate a failure if it is non-zero.

Fixes ansible/ansible#22781 and ansible/ansible-modules-extras#932.

* Don't rename `rc` to to `pkg_rc`, and instead override the failure state.

* Drop mention of renamed variable in `pkg5` module.
2018-05-15 11:52:54 -04:00
def434b5c3 apt_repository: fix rendering default mode in docs (#40152) 2018-05-15 17:36:23 +02:00
67acffb5f2 Fixes to improve ios_system idempotency (#38303)
Added detection of additional formatting for domain_name, domain_search,
lookup_source, and lookup_enabled on some software versions. In each
case they failed to detect existing commands with a '-' in it.

Fix: #38301
2018-05-15 10:27:40 -04:00
f16933492d Fix problems in documentation generation (#40050)
* Treat C(...) as inline literal (as opposed to interpreted text).

* Making test for true and false more precise, to avoid matching 1, 1.0, etc.

* The 'is sameas' test already takes care of definedness.
2018-05-15 16:19:04 +02:00
6e639b591f networking roadmap cli modules (#40147)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-15 18:31:42 +05:30
248bc0a4e8 modules, cloudengine: Fixed typo: ansilbe -> ansible 2018-05-15 13:42:04 +02:00
ee35c64650 CHANGELOG.md: Fixed typo: ansilbe -> ansible 2018-05-15 13:42:04 +02:00
553cf4cdfc rabbitmq_binding: Update documentation (#40062)
This fix updates rabbitmq_binding documentation

* change 'exchange' to 'binding'
* Some minor doc fixes

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-15 03:52:55 -04:00
453358af3b jenkins_job_facts: Add validate_certs argument (#40065)
This fix adds validate_certs argument in jenkins_job_facts module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-15 03:39:47 -04:00
dda351ca6c Fix eos_eapi integration test failure (#40132) 2018-05-15 10:55:14 +05:30
9c0825a4cf Infoblox ipv6 support feature (#39668)
* Update nios.py

* Update nios.py

* Update nios.py

* nios lookup errors out when there are no results #37970  Open	

Indentation failure issue resolved

* Returning empty list instead of None

In case of no results, res will be returned as an empty list instead of None (implementing ganeshrn comment)

* infoblox ipv6 support changes

* infoblox ipv6 support changes

* for fixing pep8 errors

* moving ipaddr check to utils

* adding ipv6addr check

* increasing space to resolve pep8 error

* modified the playbook examples to valid ones

* Update nios_network.py
2018-05-15 08:24:48 +05:30
291c89382c fix typo in nmcli doc (#40116)
fix typo in nmcli doc, balence -> balance
2018-05-15 07:52:59 +05:30
3cdd5da247 xml: Fix validate-modules issue (#40121) 2018-05-15 02:29:48 +02:00
d6eb642e88 win_template: fix issue where dest was specified as a directory (#39887) 2018-05-15 09:59:51 +10:00
e0813d7d47 become win: better error messages and docs update (#39936)
* become win: better error messages and docs update

* Fix syntax error and added changelog fragment
2018-05-15 09:33:36 +10:00
44ab948e5d create module tmpdir based on remote_tmp (#39833)
* create module tmpdir based on remote_tmp

* Source remote_tmp from controller if possible

* Fixed sanity test and not use lambda

* Added expansion of env vars to the remote tmp

* Fixed sanity issues

* Added note around shell remote_tmp option

* Changed fallback tmp dir to ~/.ansible/tmp to make shell defaults
2018-05-15 09:31:21 +10:00
1d640182c6 Update all pypi.python.org URLs to pypi.org (#38988)
For details on the new PyPI, see the blog post:

https://pythoninsider.blogspot.ca/2018/04/new-pypi-launched-legacy-pypi-shutting.html
2018-05-14 17:41:47 -05:00
b20a88c39d fix problem with documentation and param definition difference (#40067)
* fix problem with documentation and param definition difference

* removed some E324 from ignore.txt

* fixed mistake

* remove one more E324

* removed function app

* fixing append tags

* leaving append tags for later
2018-05-15 07:01:08 +10:00
38ab36a625 Revert "Configurable list of facts modules (#31783)" (#40022)
This reverts commit 95655fae5c.
2018-05-14 13:46:14 -07:00
abb353290c Add changelog for 40099 2018-05-14 13:23:04 -07:00
9514a618b7 Add copy module support for filesystems without chmod (#40099)
* only relevant to remote_src=True
* separate file content copying from file stats copying
* raise exception on mode='preserve', ignore otherwise

Fixes: #19731
Signed-off-by: Nikita Chepanov <nchepanov@bloomberg.net>
2018-05-14 13:17:38 -07:00
7d221c4663 updating win_chocolatey.py docs examples (#40101)
<!--- Your description here -->
Edit to the notepadplusplus example. 

Removed `.install` as per chocolatey documentation, the package is just notepadplusplus. 

docs found here: https://chocolatey.org/packages/notepadplusplus
+label: docsite_pr
2018-05-15 05:55:23 +10:00
3955e528b1 ec2_ami_copy: add tag_equality option for idempotence using tags (#40088)
* Allow idempotent use of ec2_ami_copy

When `tag_equality` is set true, use tags to determine
if AMIs in different accounts are the same, and don't
copy the AMI twice if they are the same.

Use AnsibleAWSModule and make imports more consistent
with other modules

* Update version added

* More code review changes

* Review changes - Recommended way to start EC2 connection
2018-05-14 15:11:48 -04:00
dbb4493f17 removed eth on port-channel (#40090) 2018-05-14 21:09:44 +02:00
6d984c7988 low_level_execute_command: add stderr_lines 2018-05-14 12:05:03 -04:00
afc196acf1 Add a User-Agent string to the API request (#38587) 2018-05-14 09:55:47 -05:00
19977e80f0 Get rid of obsolete SEQUENCETYPE-check (#40078)
And small cosmetic change to examples.
2018-05-14 10:22:15 -04:00
a8bdcd19f0 firewalld: amend docs for python3 only hosts (#40048)
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2018-05-14 08:38:10 -05:00
1f74609f3c Pip: Reformat tests (#38790)
Use yaml instead of old key=value format
2018-05-14 14:55:01 +02:00
d6e711b1de Allow empty list of names in pip module (#38789)
pip 10 gives exit code 1 for empty argument lists (pip < 10 gave exit 0)
see also https://github.com/pypa/pip/pull/4210

To still allow playbooks to pass when giving empty lists, don't call
pip in that case, but show a warning.
2018-05-14 14:51:10 +02:00
42953c40ce Pip: Make main method smaller (#38788) 2018-05-14 14:49:41 +02:00
5eb6e3c611 nxos module doc fragment for authorize,auth_pass (#40074)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-14 17:23:26 +05:30
f484c1e8af Remove redundant import from netapp module_utils (#39495)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-14 16:18:07 +05:30
e53d9b0017 icinga2_feature: fix module in check_mode (#39853)
* icinga2_feature: fix module in check_mode

* modify check_mode logic

Fixes: #39830

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-14 16:14:42 +05:30
79c7d462c1 VMware: Check device type explicitly (#38729)
Check datatype of device instead of comparing them directly in
vmware_guest. Also, added testcases to check this behavior.

DPVG is not supported in current version vcsim

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-14 16:12:31 +05:30
5cf61d7401 ios cliconf plugin fix regex for version (#40066)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-14 12:40:04 +05:30
0407c51447 Fix vxlan_vtep_vni tests (#39968) 2018-05-14 12:35:37 +05:30
6fac574f17 fix nxos_ping issues (#40028) 2018-05-14 11:29:18 +05:30
5d2c23e2a3 fix for security group description crash (#38108) 2018-05-14 13:55:25 +08:00
d25420bbb9 Fix for Azure loadbalancer tags. (#39963)
* Fix for Azure loadbalancer tags.

It was possible to add tags to an Azure loadbalancer, but the tags were never set in Azure.
This patch fixes that.

* Pass shippable tests

* azure_rm_loadbalancer_facts requires rg

Getting facts of all loadbalancers via azure_rm_loadbalancer_facts requires a resource group.
This fix adds the rg as parameter to the list() call.

* Revert changes in azure_rm_loadbalancer_facts

The changes belong to another pull request.
2018-05-14 13:18:15 +08:00
c84e3e70ab location name (#40055) 2018-05-14 11:46:45 +08:00
57f6abdb84 VMware: new module: vmware_host_powerstate (#36577)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-12 21:09:53 +05:30
4a1632444b tests, patch: init integration tests (#40045)
* patch: init integration tests

* skip install for macos
2018-05-12 11:25:03 +02:00
27942d937f Network requirements to be installed by ansible-test (#40042)
Previously the test framework (DCI, Zuul) were installing the various
dependencies, this meant the list of what was required was duplicated.

Having everything defined in ansible-test makes it easier for people to
run tests locally.

Also this allows the test to work correctly on Python 2 & Python 3
2018-05-12 10:13:26 +01:00
a199c9b04f add state parameter to patch module (#33692)
* add state parameter to patch module

* add "version_added" to state parameter docu

* fix state parameter call

* change version_added to 2.6
2018-05-12 04:58:12 -04:00
16994bbdca cloudstack: use paging for listVirtualMachines (#40018)
Paging wasn't implemented, so once a cs domain has over 500 (default page size) VMs, Ansible can no longer find newly created VM.
2018-05-12 09:46:49 +02:00
06f76d6407 Removes ignores for f5 (#40038)
Removes ignores for f5 from unit tests and fixes any issues that
are being suppressed by the ignores
2018-05-11 17:12:17 -07:00
383a4f026e Various f5 modules fixes (#40037)
* Add members to bigip_gtm_pool
* Add monitors to bigip_gtm_pool
* Add availability_requirements to bigip_gtm_pool
* Refactor bigip_gtm_pool
* Normalize the product value returned by gtm facts
* Corrected various documentation
* Updated various F5 coding conventions
* Add partition to bigip_static_route
* Added more unit tests
2018-05-11 14:07:28 -07:00
61e7c77dec Various bigip gtm server and vs enhancements (#40033)
* Refactor bigip_gtm_virtual_server
* Add translation_address to bigip_gtm_virtual_server
* Add translation_port to bigip_gtm_virtual_server
* Add availability_requirements to bigip_gtm_virtual_server
* Add monitors to bigip_gtm_virtual_server
* Add virtual_server_dependencies to bigip_gtm_virtual_server
* Add link to bigip_gtm_virtual_server
* Add limits to bigip_gtm_virtual_server
* Add partition to bigip_gtm_virtual_server
* Fix bigip_gtm_server to correctly create other server types
2018-05-11 13:38:04 -07:00
1aa248f4e2 Adds various features to bigip virtual server (#40031)
* Add type to virtual_server
* Add address_translation to virtual_server
* Add port_translation to virtual_server
* Add ip_protocol to virtual_server
* Add firewall_enforced_policy to virtual_server
* Add firewall_staged_policy to virtual_server
* Add security_log_profiles to virtual_server
2018-05-11 13:09:59 -07:00
d312c2aed7 Various bigiq fixes (#40024)
Udpdating coding conventions
2018-05-11 12:59:29 -07:00
ea77c0d4f5 Adds the bigiq regkey license assignment module (#40025)
This module can be used to assign licenses to a bigip from a bigiq
regkey pool
2018-05-11 12:12:59 -07:00
32c2aae258 document lookup errors optoin (#39645)
* document lookup errors optoin

* changed to doc

* updated as per feedback
2018-05-11 15:09:53 -04:00
00a6b19e58 Fixes and additions for f5 modules (#39986)
Small fixes in the f5 module utils. I believe the action plugins now
work consistently across types of connections
2018-05-11 11:45:42 -07:00
8654508cbd added check mode spport to package_facts (#39801)
* added check mode spport to package_facts

fixes #39789

* also service_facts
2018-05-11 14:04:08 -04:00
95655fae5c Configurable list of facts modules (#31783)
* configurable list of facts modules

 - allow for args dict for specific modules
 - add way to pass parameters
 - avoid facts poluting test
 - move to 'facts gathered' flag
 - add 'gathering' setting tests
2018-05-11 13:59:54 -04:00
7c510a2549 New Module: GCP Compute Instance Templates (#38907) 2018-05-11 10:50:32 -07:00
dccb0d035b vault: check dir existence before creating a file (#40010) 2018-05-11 19:29:44 +02:00
22456a57de Adding multiple project support for GCE (#39473)
* Adding multiple project support for GCP inventory.

* Adding some documentation on the .ini file
2018-05-11 11:38:13 -04:00
21004d86f9 "route" has to be the first option in ufw command (#31756)
For supporting deletion of ufw routes, route option has to be placed before delete option
2018-05-11 16:21:27 +01:00
48e5791860 Minor fixes and additions to f5 modules (#39987)
* Fixes to docs
* Fix escaping quotes in bigip_command
* F5 coding conventions cleanup
* “warn” and “chdir” parameters added to bigip_command
2018-05-11 07:55:48 -07:00
fff7915faa [aws][doc] Update documentation for wait_timeout option (#39875)
Based on the documentation, 'wait_timeout' is 'Used in conjunction with instance_ids option'.  This lead me to believe that I could not use this parameter to try and solve the 'Waited too long for ELB instances to be healthy' error I was experiencing.
2018-05-11 07:44:46 -07:00
03194880c1 Set prev_state in the state functions
This seems a little like duplicating code since all of the called
functions need it but prev_state isn't part of argument parsing so it
doesn't belong in the toplevel main() function.
2018-05-11 06:35:03 -07:00
9be31fc79b Don't pass b_path into state functions; those transform to byte strings on their own
It feels like this repeats itself because it pulls the creation of
a byte string for path into every state function.  However, it actually
cleans the API by only passing a single parameter for a thing (the path)
instead of sending it in twice.
2018-05-11 06:35:03 -07:00
e17ee368e3 Improve comments about file_commmon_arguments 2018-05-11 06:35:03 -07:00
160f2ace51 Switch from calling exit_json() to returning results
Well organized programs should only have a few successful exit points.

This commit moves all of the successful exit points for the file module
into the main() function.  Other functions return their results to the
main function which can then choose whether there is more procesing to
do before exit or not.
2018-05-11 06:35:03 -07:00
cac11f9b80 Port away from fail_json()
Use an exception to return failures rather than fail_json().  This way
we can easily catch the failures if the calling code decides it can deal
with it.  This has the side effect of making it easier to unittest this
code as we can catch the expected exceptions instead of having to catch
the interpreter exiting and then parse stdout for the expected data.
2018-05-11 06:35:03 -07:00
fc57f7bd5f fix comma 2018-05-11 09:18:31 -04:00
5ac41ee8d8 Fix interfaces_file to accept allow-* (#37847) 2018-05-11 13:47:06 +01:00
c3c30440f8 Added botmeta for _letsencrypt symlink. (#40002) 2018-05-11 11:02:07 +02:00
d14d4d8cab Improving documentation: make more general (less Let's Encrypt specific), and improve formatting. (#39979) 2018-05-11 03:45:11 -04:00
2557c0662a IT cases for nxos_logging (#39929)
* IT cases for nxos_logging

* review comment
2018-05-11 13:13:49 +05:30
127cfd4851 add user-agent to Azure API calls, and support MSI/CLI cred for inventory (#39785)
* add user agent

* add msi

* support cli

* check subscription

* lint

* fix lint

* fix lint

* fix lint
2018-05-11 15:13:39 +08:00
2db375e4aa apt_key: clarify the keyring option in docs (#39950) 2018-05-11 07:45:20 +02:00
b2929f0eba Fix callback._dump_results to dump vaulted data v2 (#39975) 2018-05-11 07:44:29 +02:00
fea71d2767 Update Jesse Keating's github id (#39904)
Jesse is no longer j2sol, he's now omgjlk.
2018-05-11 07:38:15 +02:00
c5fa718174 Adds bigip_device_license module (#39985)
This module can be used to license and unlicense BIGIP devices. This
does not include licensing them via BIGIQ. To do that, use BIGIQ modules
2018-05-10 21:44:59 -07:00
a8b4ce5c5d fixed data disk issue crash (#39716) 2018-05-11 11:44:34 +08:00
4e2876be9f Initial refactor of the file module
* Separate the logic for each state into separate functions
* Start the process of separating out initialization (pre-processing of
  parameters that cannot be done via arg spec) from the logic to
  implement each state.
* Start the process of raising exceptions for errors and returning
  result values from each state implementing function   Goal is for all
  fail_json's to be consolidated into exception handlers at the toplevel
  and for there to be only one exit_json() at the toplevel.
2018-05-10 14:48:28 -07:00
6b6c4914d2 Initial cleanup of file module
* Remove use of six.b as Python-2.6+ have byte literals.
* Make AnsibleModule a global object so we'll have access to it in all
  the functions we're going to break this up into.
* Rework the parameters so things that are in file_common_args are used
  from file_common_args or the reason for deviation is documented.
* Remove validate as a parameter: this should be taken care of by
  removing it from params before the copy and template action plugin
  invoke file.
* Rename diff_peek to _diff_peek as it is an internal parameter.
* add module_name execute_module call to assemble so that it is more greppable
2018-05-10 14:48:28 -07:00
d994595660 Make the copy module pass correct parameters to file module 2018-05-10 14:48:28 -07:00
b9a00372c2 Categorize FILE_COMMON_ARGS
Some file_common_args are not common to all file modules.  Divide the
args into categories for a future refator of this into a separate
file_argspec.
2018-05-10 14:48:28 -07:00
5fd9954ccc Remove duplicate include in user_guide
Looks like two commits merged close to each other and an '-include'
got left along with its replacement '-include_tasks'
2018-05-10 16:42:35 -04:00
2de6734ce4 Mark the azure_rm_storageblob test unstable. 2018-05-10 11:03:40 -07:00
4d691e9d7b Various fixes and features for bigip modules (#39972)
* Removed forwarders parameter that did not work
* Updated coding conventions
* Added ssl_cipher_suite and ssl_protocols to bigip_device_httpd
* Added more unit tests
2018-05-10 10:59:49 -07:00
67f387bc3b Update default for dscp to not allow APIC to handle it (#39970) 2018-05-10 19:57:20 +02:00
0b1840772d Download files from S3 for yarn integration test. 2018-05-10 10:07:36 -07:00
742fd3a91a Adds misc fixes for gtm facts module (#39966)
Codifies some parameters and fixes f5 coding conventions
2018-05-10 09:57:27 -07:00
84136c0248 Adds the bigip gtm monitor bigip module (#39965)
This module can be used to manage bigip monitors on a bigip's GTM
2018-05-10 09:57:17 -07:00
08516df29d Adds bigip gtm monitor firepass module (#39964)
This module can be used to manage firepass monitors on a bigip's GTM
2018-05-10 09:30:06 -07:00
115ba79f10 Adds the bigip gtm monitor https module (#39943)
This module is used to manage the HTTPS monitors on a GTM
2018-05-10 08:47:12 -07:00
4f703cf299 Adds module for F5 gtm tcp half open monitors (#39939)
This module can assist in managing TCP half open monitors in GTM
2018-05-10 08:46:53 -07:00
632a39232c Adds the bigip gtm monitor tcp module (#39942)
This module can be used to manage tcp monitors on GTM
2018-05-10 08:46:23 -07:00
5f7c7becde aci_l3out: Add initial ACI l3Out implementation (#37570)
* Initial implementation of ansible ACI L3Out module

* Small documentation and parameter name fixes

* fix copy-paste error

* fix sanity for version_added = 2.6

* Removed deprecated options. Added PIM protocol support

* aci_l3out: add more examples and query option

* Handle DSCP option properly
2018-05-10 16:29:49 +02:00
7cfbf43f4b New Module: GCP Compute Instances (#38906) 2018-05-10 07:29:13 -07:00
868c2630dd Adds bigip gtm monitor http module (#39944)
This module can be used to manage http monitors on a GTM
2018-05-10 06:26:13 -07:00
02adb6520f Removing stretch items for 2.6 roadmap (#39757)
* netconf modules
  * gRPC connection plugin
2018-05-10 14:03:49 +01:00
a1620ee2e0 git: clarify the archive option in docs (#39956) 2018-05-10 14:39:42 +02:00
e80ea39903 Adding slxos_l2_interface module (#39309) 2018-05-10 13:17:35 +01:00
5ed81820c0 VMware: Custom Field in vmware_inventory (#39796)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-10 17:38:03 +05:30
fb457b4200 Adding slxos_linkagg module (#39190) 2018-05-10 13:06:57 +01:00
9254f67f3e Update firewalld.py (#39951)
Typo fixed

+label: docsite_pr
2018-05-10 12:13:53 +02:00
f1103a7a02 remove purge from nxos_logging doc, argspec (#39947)
* remove purge from nxos_logging doc, argspec

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

* shippable

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-10 15:28:37 +05:30
a8156c52d4 Adding slxos_interface module (#39123)
* Adding slxos_interface module

* Fixing sanity checks

* Fixing slxos_config tests for fixture change in slxos_interface
2018-05-10 10:09:42 +01:00
56c5567912 Exit admin mode properly on iosxr_config (#39594)
Fixes #38811

When using 'admin' in iosxr-config, we need to pass an end
to config terminal session but also pass exit so we exit admin
mode.
2018-05-10 10:36:37 +02:00
d7f3d3b867 Fix module validation checks and remove old params (#39926)
This PR includes:
- Fixes to the majority of module validation issues
  (deliberate inconsistencies between docs and arg_spec)
- Removal of deprecated parameters 'method' and 'protocols'
- A few typos in the documentation

There are still some left-over validation errors, some are deliberate
(like doc strings as default to indicate ranges, etc.)
2018-05-10 08:47:08 +02:00
64ee8da3f1 Adds the bigip_gtm_pool_member module (#39937)
This module can be used to manage individual pool members on a bigip's
GTM installation
2018-05-09 19:13:52 -07:00
e4efc191c5 Fix code snippet in playbook filters doc (#39798) 2018-05-10 12:05:24 +10:00
3d315244af urls: fix typo in examples section (#39777) (#39778) 2018-05-10 12:02:17 +10:00
a7d7df1450 Make docs-build sanity test disabled by default. 2018-05-09 17:55:00 -07:00
ad5fdf5eb7 Fixes for bigip_gtm_wide_ip (#39931)
Added the irules parameter. Misc corrections of invalid parameter
names and internal behaviors.
2018-05-09 17:28:07 -07:00
1cf07028d4 Don't display host pattern warning for empty groups (fixes #35255) (#39927) 2018-05-09 14:13:48 -05:00
cbb6a7f4e8 Enabled unsafe and vault in JSON (#38759)
* allow to load json marked as unsafe or vault

 * centralized json code/decode, add vault support
 * use generics to allow for more varied inputs
 * allow inventory to dump vault w/o decrypting
 * override simplejson also
 * add entry for unsafe also
 * load vaulted and unsafe json, support unvaulting if secrets provided
2018-05-09 14:01:51 -04:00
ff16e993be Fix task banner with 'actionable' callback when using templates in name (#38165)
This fixes #31074.
2018-05-09 13:57:28 -04:00
dec4f10c21 Move lookups tests to group1. 2018-05-09 09:54:03 -07:00
c1f9efabf4 Overhaul httptester support in ansible-test. (#39892)
- Works with the --remote option.
- Can be disabled with the --disable-httptester option.
- Change image with the --httptester option.
- Only load and run httptester for targets that require it.
2018-05-09 09:24:40 -07:00
3c32b483bc Fix for NameError (#39665)
Issue : NameError: global name ‘cnos_devicerules’ is not defined. while running cnos modules. 
Device Rule file validates the range and type of data going into each CLI based on device type it is executed against.
This has to be backported to 2.5
2018-05-09 17:09:25 +01:00
2b2bfc8032 Update panos_security_rule.py (#39036)
<!--- Your description here -->

+label: docsite_pr
2018-05-09 09:49:41 -05:00
5f0e6b2dc3 Update panos_op.py (#39013)
<!--- Your description here -->
The examples were apparently pasted from panos_object and the module name wasn't updated.
+label: docsite_pr
2018-05-09 09:47:42 -05:00
0e344b225a Remove CI group from unsupported tests. 2018-05-09 07:29:31 -07:00
6a1cb25c99 Remove unnecessary destructive aliases. 2018-05-09 07:29:31 -07:00
8e6fd48087 Mark unsupported vmware tests. 2018-05-09 07:29:31 -07:00
c36aa6ae50 Panos/doc fragment (#37696)
* Create PanOS module documentation fragment

- Module documentation fragment currently holds 3 parameters
- It most likely won't be used in every single module since there is
some variance

* Modified PanOS module for use doc_frags

- Where documentation is consistent, module documentation now uses a
documentation fragment instead of all documentation being contained in
the module.

* Formatting and syntax error fixes

Updated some formatting errors to make ansibot happy.

* Revisions for grammar
2018-05-09 09:13:22 -05:00
75304bd121 Update ios_system.py (#39623)
<!--- Your description here -->
Typo in the example of `domain_search`, was `domain-search`should be `domain_search`
+label: docsite_pr
2018-05-09 14:44:27 +01:00
c32aef74d5 expect: Fix typo in examples (#39900) 2018-05-09 13:55:17 +02:00
82b9c7c518 Add meraki_team to modules/network/meraki 2018-05-09 11:34:37 +02:00
e476089bb9 spacing issue (#39884) 2018-05-09 10:08:59 +02:00
c164069079 VMware: new module : vmware_tag_facts (#39889)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-09 13:38:26 +05:30
bf702e6d88 dnf: handle error when latest pkg not found (#39720)
* dnf: handle error when latest pkg not found

* Add integration test
2018-05-09 10:05:00 +02:00
3c389aee73 VMware: Add more robust logic to deal with VM moref (#39462)
This fix adds more robust logic to deal with virtual machine
managed object and its comparsion.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-09 00:53:01 -04:00
ea489b3f33 Update missed private doc for import_role (#39873) 2018-05-08 15:46:45 -05:00
3e64036684 Fix encoding issue when parsing plugin examples
This caused a non-fatal traceback when building, for example, the module
documentation for the debug module.
2018-05-08 12:21:52 -07:00
2397ca1a7e Fix unset ansible_virtualization_role (#39514)
Error was:
AttributeError("'str' object has no attribute 'startwith'",)

Closes #39138
2018-05-08 23:39:38 +05:30
a5b8085113 Move pyvmomi install into cloud test plugin. 2018-05-08 10:09:35 -07:00
0296c8466a Don't update cpu/memory allocation in configspec if there is no change. (#39790)
Fixes #38941
2018-05-08 21:54:50 +05:30
c6270e15a6 Remove provider (and transport, where applicable) from consideration when not using connection=local (#39555)
* Remove provider (and transport, where applicable) from consideration

* Add tests that misplaced transport does not fail task
2018-05-08 12:06:37 -04:00
384a0d8b01 Deprecate private for include_role (#39821) 2018-05-08 10:31:56 -05:00
f08332acb4 nxos enable mode (#39355)
* nxos enable mode

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

* fix prompt

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

* Add authorize,auth_pass

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

* remove byte string from exec_cli_command

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

* Add on_become test

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

* removed_in_version

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-08 15:31:02 +05:30
83df7249fd Renaming letsencrypt -> acme_certificate (#39816)
* Renaming letsencrypt -> acme_certificate.

* Also renaming in BOTMETA.yml.
2018-05-08 09:17:40 +02:00
854be6ef16 docs: fix 'ipmi' typo (#39823) 2018-05-08 09:15:56 +02:00
e3bfbe5875 fix nxos_snmp_user issues (#39760)
* fix nxos_snmp_user issues

* shipppable fix
2018-05-08 11:57:12 +05:30
58f9676d4b hashi_vault: fix for : in secret name (#39820) 2018-05-08 07:54:25 +02:00
3c35dd4f7f nxos_linkagg normalize interface (#39591)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-08 11:15:05 +05:30
ef577b71cc Handling of configurations blocks with end-* at the end of the block (#39673)
* handle end-policy issue

* revert changes in iosxr cliconf

* fix trailing parents not included in difference

* Moving fix to platform specific fix

* pep 8 issues
2018-05-08 10:02:50 +05:30
09e3b5c92b Fetch ios default config is defaults is enabled (#39741)
If default option is eanbled fetch the current
running configuration by adding `all` or `full`
flag
2018-05-08 09:38:08 +05:30
eb430b2e57 azure: fix creation of TXT dns record sets (#38368)
As per `azure.mgmt.dns.models.txt_record.TxtRecord`, expected value for a
record is of type `[str]`. Fix TXT argspec to specify type as `list`
instead of `str`.

Fixes #37581

Reference: https://docs.microsoft.com/en-us/python/api/azure.mgmt.dns.models.txtrecord?view=azure-python
2018-05-07 22:32:39 -04:00
8c27ffdf90 Add ARA Records Ansible to community tools (#39836)
ARA is an Ansible callback that records playbook run data in a local
or remote database. This data is exposed through a CLI client as well
as a reporting web application.
2018-05-07 22:18:52 -04:00
be3670f528 fix 'doas' become_method support, previously committed patch not submitted to devel branch (#37511)
* fix become_method 'doas' support by properly specifying becomecmd

a repatch of https://github.com/ansible/ansible/pull/13451/ which was never committed to 'devel' branch.

* fix play_context test for become_method doas to match new becomecmd
2018-05-07 21:30:47 -04:00
1e4c389268 allow become methods for Jail connection plugin (#31746)
* allow become methods

- i personally tested 'su', 'sudo' and 'doas'

* forgot to import constants m(
2018-05-07 21:30:24 -04:00
01e8139d74 Update vars for loop_control on each loop iteration (fixes #38899) (#39818) 2018-05-07 15:51:46 -05:00
72ebd1bf46 Add IncludeRole.get_name to provide better name for include_role. Fixes #36343 (#39807) 2018-05-07 15:27:09 -05:00
ea7883ef7e Broken link to MSDN (#39814)
Fix broken link to MSDN site for FileSystemRights enumeration

+label: docsite_pr
2018-05-07 20:16:23 +01:00
1c7417cba7 Restore nuage_vspk integration tests. 2018-05-07 11:15:36 -07:00
75283983f6 Use a more exact regex (#39811)
The pattern we're matching can have zero or one p.  Be more careful to
match exactly that.

Slight revision of #39730
2018-05-07 11:12:42 -07:00
5ec34f65d9 Pass obj=data to AnsibleParserError for context in IncludeRole. Fixes #31374 (#39805) 2018-05-07 11:25:28 -05:00
1663b64e18 Allow subspec defaults to be processed when the parent argument is not supplied (#38967)
* Allow subspec defaults to be processed when the parent argument is not supplied

* Allow this to be configurable via apply_defaults on the parent

* Document attributes of arguments in argument_spec

* Switch manageiq_connection to use apply_defaults

* add choices to api_version in argument_spec
2018-05-07 11:23:13 -05:00
108eac9339 VMware: Allow user to add host without cluster (#39490)
This fix allows user to add ESXi host system under folder
without requiring to specify cluster name.

partially fixes: #38300

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 11:20:48 -04:00
2214c747a2 facts: Detecting NVME partitions under Linux (#39730)
In the current state of the code, the nvme partitions are returned as empty as in :
        "ansible_devices": {
            "nvme0n1": {
                "model": "SAMSUNG MZVLW256HEHP-000L7",
                "partitions": {},

The parsing of the /sys/block/<diskname> try to find a disk named like :
    <diskname><x> as in sda1 for sda

But in the nvme context, the partition of nvme0n1 is named nvme0n1p1.
This add a possible 'p' between the diskname and the partname.

This patch simply add the option of having a 'p' between the diskname
and the partname.

The patch works on my host :
                "model": "INTEL SSDPEDMD400G4",
                "partitions": {
                    "nvme0n1p1": {
                         ...
                        "size": "93.13 GB",
                    }

Fixes #38742
Signed-off-by: Erwan Velu <erwan@redhat.com>
2018-05-07 16:08:46 +01:00
efff75389d Use updated task, instead of original, non-merged included_file._task (#39762)
* Used updated task, instead of original, non-merged included_file._task. Fixes #39637

* Add changelog entry
2018-05-07 10:01:35 -05:00
7f5820274f Update call method for parse_cli_textfsm (#38437)
+label: docsite_pr
2018-05-07 09:43:45 -05:00
e4671d7c67 Add emojii to issue template titles
According to https://gitmoji.carloscuesta.me/
2018-05-07 15:33:09 +02:00
d75ba68509 Integrate bug/docs report and FR issue templates 2018-05-07 15:33:09 +02:00
1663539327 Adding support for GCP Compute Health Checks (#37438) 2018-05-07 07:57:25 -04:00
d70b3b4661 VMware: New module: vmware_tag (#37261)
This module is based on vSphere REST API. This module allows
user to manage various tags and their association with
categories. This fix also adds vCenter REST client library which can
be re-used for other REST based modules.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 16:30:16 +05:30
a0b4462aea vmware_guest: cast vlan to int or str when relevant (#39726)
`network['vlan']` should be a VLAN ID
Integers passed around using jinja variable references are
converted to strings (see # 9362)
The # 32738 PR should allow using 'NativeType' in ansible
Explicitly converting to integer will make the module works
as expected with or without the NativeType support

`network['vlan']` can also be a VLAN NAME (fallback)
Explicitly converting to string will make the module works
as expected with or without the NativeType support
2018-05-07 15:50:34 +05:30
bc59dc471b VMware: New module: vmware_portgroup_facts (#36740)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 05:06:33 -04:00
d839746123 VMware: report failure if no snapshot exists on VM (#38651)
This fix add correct reporting of failure if VM does not contain
any snapshots for following operations - rename, remove and revert.

Fixes: #37906

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 03:11:49 -04:00
1c8a7d06e5 VMware: new module : vmware_resource_pool_facts (#38674)
This module adds capability to provide facts about all resource
pools in given environment.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 02:34:42 -04:00
0d29826e52 VMware: Refactor vmware_host_facts (#39273)
* Updated documentation
* Error handling in find_obj
* Updated return facts example

Fixes: #39265

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 02:34:14 -04:00
693065da1e VMware: new module : vmware_local_user_facts (#37167)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 02:25:37 -04:00
02f1d263c7 VMware: new module: vmware_vswitch_facts (#37176)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 02:25:31 -04:00
3324765fdd lvg: Allow unit to be specified for pesize (#39666) 2018-05-07 07:50:58 +02:00
0ac222d68b Fix nxos terminal plugin regex (#39659)
Fix nxos terminal plugin regex to match
command prompt without newline character as prefix
2018-05-07 09:06:00 +05:30
d1cd6ee56d VMware: Allow user to set customization specification (#38530)
This fix adds new argument parameter which allows user to
set customization specification which is already created with required
values like Windows Product Key and Networking details etc.

Fixes: #38404

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-06 19:51:16 -04:00
6e6325503a VMware: check SwitchUUID value before assigning (#38369)
This fix adds a check for switchuuid value of distributed virtual switch.
When there is no association between hostsystem and distributed virtual portgroup,
both specified by user, then module does not find DVSwitch.
This patch tries to mitigate that problem.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-06 19:31:40 -04:00
a121b5073c Temporarily disable the nuage_vspk test.
This test interferes with the uri test on centos6.
2018-05-05 13:59:58 -07:00
82645bdf40 Added alexanderzobnin-zabbix-datasource datasource type (#36948) 2018-05-05 15:03:44 -04:00
63ce4cf03d Homebrew: Update _uninstall_current_package to use the --force option (#33360) 2018-05-05 13:03:05 -04:00
f210bbec50 rabbitmq_bindings rewrite (#35651)
* Attempt to get rid of globals

* Relocate imports and make formatting non-automatic

* spacing!
2018-05-05 10:26:47 -04:00
75e69fe709 timezone module: fixed timezone identification logic in *BSD (#36715) 2018-05-05 10:26:38 -04:00
aa874c3c36 influxdb_query: fix use of common return results (#39626) 2018-05-05 14:11:42 +02:00
3b496db4d8 Make sure that the implicit async_status gets the env from a task with async. Fixes #39699 (#39764) 2018-05-04 18:43:33 -05:00
fc210a4584 base64 filter: Added ability to specify encoding (#39714)
* base64 filter: Added ability to specify encoding

* Added unicode chars for further testing

* Removed errors to keep previous behaviour in place

* Removed surrogate pairs due to issues loading YAML in CI
2018-05-05 09:16:58 +10:00
Rob
b5cffe8ced [aws] Create classes for Application Load Balancer (#33769)
* Create classes for Application Load Balancer
* Add unsupported CI alias
* Add AWSRetry
* Add integration tests using the ALB
2018-05-04 16:22:00 -04:00
8ac69b0a5f Fix gathering facts in run_once play (#39453)
* Fix gathering facts in run_once play

Fixes https://github.com/ansible/ansible/issues/39312

* Check that run_once doesn't prevent fact gathering
2018-05-04 15:33:32 -04:00
05d5d21d1c New module: GCP Container Node Pools (#37325) 2018-05-04 15:19:51 -04:00
5b0ce0222b Bug fixes for GCP Compute Address (#38630) 2018-05-04 14:41:55 -04:00
e177cf5831 New module: GCP Pubsub Topics (#38627) 2018-05-04 14:32:28 -04:00
e116c6cee8 New module: GCP Pubsub Subscriptions (#38626) 2018-05-04 14:31:34 -04:00
478759a686 New module: GCP Compute Subnetworks (#38621) 2018-05-04 14:29:38 -04:00
01f0e4ac6f New module: GCP Compute Networks (#38618) 2018-05-04 14:28:11 -04:00
768a81dd4b New module: GCP Compute Routes (#38619) 2018-05-04 14:27:29 -04:00
c57d476871 import_role docs: loop is not supported (#39725) 2018-05-04 19:36:33 +02:00
1c4448666e Add changelog entries for 2.6 include fixes (#39750) 2018-05-04 12:10:21 -05:00
39d9ff9d2c ovirt: Don't return ID as list in fetch_nested (#39736)
* ovirt: Don't return ID as list in fetch_nested

* ovirt_permissions_facts: Fix pylint
2018-05-04 11:40:17 -05:00
3d5a7d6dc2 Allow using action/local_action on includes and imports (#37260)
* Prevent using action/local_action on includes and imports. Fixes #28822

* Use ModuleArgsParser to determine action instead of disallowing action/local_action with import/include

* Add to_native

* switch back to block in task_ds, use ModuleArgsParse otherwise

* var should be task_ds

* Add test validating action+include_tasks
2018-05-04 11:10:50 -05:00
dddcbb7198 use show run instead of section pipeline ios_l2_interface (#39658)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-04 21:22:09 +05:30
d44fd70d02 Fix E126, E123 pep8 errors, and ansible-format-automatic-specification pylint error (#39740) 2018-05-04 09:40:08 -05:00
4c5ac16447 Fix ios integration test failures in CI (#39729)
Fix ios integration test failures in CI. Since the packet transfer and receive rate
on the interface is not determined to remove the tx_rate and rx_rate test conditions
to prevent intermittent failure.
2018-05-04 16:18:04 +05:30
ab4cbfd5d3 FIX: Removing superfluous bloc wrongly introduced in 2b7799f817. (#39723) 2018-05-04 10:45:33 +02:00
dda31aa3f7 ovirt: Return ID for permissions facts (#39721) 2018-05-04 04:03:34 -04:00
9eff1f1d74 Handle nxos_feature issue where json isn't supported (#39150)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-04 12:21:58 +05:30
9348809184 Fixes #37731 Create Internal Loadbalancers with azure_rm_loadbalancer, support SKU (#38077)
* create internal loadbalancer

* fix test

* remove duplicate test

* clean up

* fix doc

* lint

* add sku support

* update version

* change to the version the same as CLI

* add pip support sku

* fix lint

* fix test

* Update main.yml

* add changelog entry
2018-05-04 13:17:05 +08:00
17a4553c68 Reorganize and expand the file tests
* Pull the tests for state=link into their own file
* Pull tests for what happens when dest is a directory out
* Expand both of the above sets of tests
2018-05-03 20:20:04 -07:00
a5d320f8e7 vdirect modules: fix 'import' sanity test (#39706)
* vdirect modules: fix 'import' sanity test

* Remove passing file from import skip list.

* vdirect modules: fix validate-modules warnings

- Arguments with a default should not be marked as required
- add choices in doc

* vdirect_runnable: use formatting function
2018-05-03 18:13:06 -07:00
6b159fdb03 Fix for file module with recursive permission setting and broken symlinks
There was a traceback when setting permissions on a directory tree when
there were broken symlinks inside of the tree and follow=true.  chmod -R
ignores broken symlinks inside of the tree so we've fixed the file
module to do the same.

Fixes #39456
2018-05-03 17:54:34 -07:00
4f664f8ff6 Fix for file module with symlinks to nonexistent target (#39635)
* Fix for file module with symlinks to nonexistent target

When creating a symlink to a nonexistent target, creating the symlink
would work but subsequent runs of the task would fail because it was
trying to operate on the target instead of the symlink.

Fixes #39558
2018-05-03 17:50:43 -07:00
f75b7a9437 win_get_url: Fixed a few issues with using FTP and added tests (#39646)
* win_get_url: Fixed a few issues with using FTP and added tests

* Fixed typo in docs
2018-05-04 08:39:37 +10:00
df1001577f rebase base playbook base (#39533)
* rebase base playbook base

fixes issues with loop control allowing generic attributes it shouldn't
2018-05-03 18:29:47 -04:00
c8d287fece Meraki organization module (#38773)
* Initial commit

Query an organization within Meraki. No support is in place for managing
or creating yet

* Change output_level method and make the state parameter required.

* Implemented listing all organizations

- Updated documentation
- Parse results and return all organizations
- Parse results and return specified organization

* Framework for creating an organization

- Documentation example for organization creation
- Framework exists for creating organizations, pending PR 36809
- Created functions for HTTP calls
- Renamed from dashboard.meraki.com to api.meraki.com
- Added required_if for state

* Remove absent state

- Meraki API does not support deleting an organization so absent is removed
- Updated documentation to call it state instead of status

* Small change to documentation

* Support all parameters associated to organization

- Added all parameters needed for all organization actions.
- None of the added ones work at this time.
- Added documentation for clone.

* Integration test for meraki_organization module

* Rename module to meraki for porting to module utility

* Meraki documentation fragment

- Created initial documentation fragment for Meraki modules

* Add meraki module utility to branch. Formerly was on a separate branch.

* CRU support for Meraki organization module

* CRU is supported for Meraki organizations
* There is no DELETE function for organizations in the API
* This code is very messy and needs cleanup
* Create and Update actions don't show status as updated, must fix

* Added Meraki module utility to module utility documentation list

* Added support for organization cloning
* Renamed use_ssl to use_https
* Removed define_method()
* Removed is_org()
* Added is_org_valid() which does all org sanity checks

* Fixes for ansibot
- Changed default of use_proxy from true to false
- Removed some commented out code
- Updated documentation

* Changes for ansibot
- Removed requirement for state parameter. I may readd this.
- Updated formatting

diff --git a/lib/ansible/module_utils/network/meraki/meraki.py b/lib/ansible/module_utils/network/meraki/meraki.py
index 3acd3d1038..395ac7c4b4 100644
--- a/lib/ansible/module_utils/network/meraki/meraki.py
+++ b/lib/ansible/module_utils/network/meraki/meraki.py
@@ -42,7 +42,7 @@ def meraki_argument_spec():
     return dict(auth_key=dict(type='str', no_log=True, fallback=(env_fallback, ['MERAKI_KEY'])),
                 host=dict(type='str', default='api.meraki.com'),
                 name=dict(type='str'),
-                state=dict(type='str', choices=['present', 'absent', 'query'], required=True),
+                state=dict(type='str', choices=['present', 'absent', 'query']),
                 use_proxy=dict(type='bool', default=False),
                 use_https=dict(type='bool', default=True),
                 validate_certs=dict(type='bool', default=True),
diff --git a/lib/ansible/modules/network/meraki/meraki_organization.py b/lib/ansible/modules/network/meraki/meraki_organization.py
index 923d969366..3789be91d6 100644
--- a/lib/ansible/modules/network/meraki/meraki_organization.py
+++ b/lib/ansible/modules/network/meraki/meraki_organization.py
@@ -20,11 +20,9 @@ short_description: Manage organizations in the Meraki cloud
 version_added: "2.6"
 description:
 - Allows for creation, management, and visibility into organizations within Meraki
-
 notes:
 - More information about the Meraki API can be found at U(https://dashboard.meraki.com/api_docs).
 - Some of the options are likely only used for developers within Meraki
-
 options:
     name:
         description:
@@ -32,21 +30,18 @@ options:
         - If C(clone) is specified, C(name) is the name of the new organization.
     state:
         description:
-        - Create or query organizations
-        choices: ['query', 'present']
+        - Create or modify an organization
+        choices: ['present', 'query']
     clone:
         description:
         - Organization to clone to a new organization.
-        type: string
     org_name:
         description:
         - Name of organization.
         - Used when C(name) should refer to another object.
-        type: string
     org_id:
         description:
         - ID of organization
-
 author:
     - Kevin Breit (@kbreit)
 extends_documentation_fragment: meraki
@@ -86,7 +81,6 @@ RETURN = '''
 response:
     description: Data returned from Meraki dashboard.
     type: dict
-    state: query
     returned: info
 '''

@@ -103,6 +97,7 @@ def main():
     argument_spec = meraki_argument_spec()
     argument_spec.update(clone=dict(type='str'),
+                         state=dict(type='str', choices=['present', 'query']),
                          )

@@ -125,11 +120,9 @@ def main():

     meraki.function = 'organizations'
     meraki.params['follow_redirects'] = 'all'
-    meraki.required_if=[
-                           ['state', 'present', ['name']],
-                           ['clone', ['name']],
-                           # ['vpn_PublicIP', ['name']],
-                       ]
+    meraki.required_if = [['state', 'present', ['name']],
+                          ['clone', ['name']],
+                          ]

     create_urls = {'organizations': '/organizations',
                    }
@@ -162,23 +155,16 @@ def main():

-
-    # method = None
-    # org_id = None
-
-
-    # meraki.fail_json(msg=meraki.is_org_valid(meraki.get_orgs(), org_name='AnsibleTestOrg'))
-
     if meraki.params['state'] == 'query':
-      if meraki.params['name'] is None:  # Query all organizations, no matter what
-        orgs = meraki.get_orgs()
-        meraki.result['organization'] = orgs
-      elif meraki.params['name'] is not None:  # Query by organization name
-        module.warn('All matching organizations will be returned, even if there are duplicate named organizations')
-        orgs = meraki.get_orgs()
-        for o in orgs:
-          if o['name'] == meraki.params['name']:
-            meraki.result['organization'] = o
+        if meraki.params['name'] is None:  # Query all organizations, no matter what
+            orgs = meraki.get_orgs()
+            meraki.result['organization'] = orgs
+        elif meraki.params['name'] is not None:  # Query by organization name
+            module.warn('All matching organizations will be returned, even if there are duplicate named organizations')
+            orgs = meraki.get_orgs()
+            for o in orgs:
+                if o['name'] == meraki.params['name']:
+                    meraki.result['organization'] = o
     elif meraki.params['state'] == 'present':
         if meraki.params['clone'] is not None:  # Cloning
             payload = {'name': meraki.params['name']}
@@ -193,7 +179,10 @@ def main():
             payload = {'name': meraki.params['name'],
                        'id': meraki.params['org_id'],
                        }
-            meraki.result['response'] = json.loads(meraki.request(meraki.construct_path('update', org_id=meraki.params['org_id']), payload=json.dumps(payload), method='PUT'))
+            meraki.result['response'] = json.loads(meraki.request(meraki.construct_path('update',
+                                                                                        org_id=meraki.params['org_id']),
+                                                                  payload=json.dumps(payload),
+                                                                  method='PUT'))

diff --git a/lib/ansible/utils/module_docs_fragments/meraki.py b/lib/ansible/utils/module_docs_fragments/meraki.py
index e268d02e68..3569d83b99 100644
--- a/lib/ansible/utils/module_docs_fragments/meraki.py
+++ b/lib/ansible/utils/module_docs_fragments/meraki.py
@@ -35,6 +35,7 @@ options:
         description:
         - Set amount of debug output during module execution
         choices: ['normal', 'debug']
+        default: 'normal'
     timeout:
         description:
         - Time to timeout for HTTP requests.
diff --git a/test/integration/targets/meraki_organization/aliases b/test/integration/targets/meraki_organization/aliases
new file mode 100644
index 0000000000..ad7ccf7ada
--- /dev/null
+++ b/test/integration/targets/meraki_organization/aliases
@@ -0,0 +1 @@
+unsupported

* Formatting fix

* Minor updates due to testing
- Made state required again
- Improved formatting for happier PEP8
- request() now sets instance method

* Fix reporting of the result

* Enhance idempotency checks
- Remove merging functionality as the proposed should be used
- Do check and reverse check to look for differences

* Rewrote and added additional integration tests. This isn't done.

* Updated is_update_required method:
- Original and proposed data is passed to method
- Added ignored_keys list so it can be skipped if needed

* Changes per comments from dag
- Optionally assign function on class instantiation
- URLs now have {} for substitution method
- Move auth_key check to module utility
- Remove is_new and get_existing
- Minor changes to documentation

* Enhancements for future modules and organization
- Rewrote construct_path method for simplicity
- Increased support for network functionality to be committed

* Changes based on Dag feedback and to debug problems

* Minor fixes for validitation testing

* Small changes for dag and Ansibot
- Changed how auth_key is processed
- Removed some commented lines
- Updated documentation fragment, but that may get reverted

* Remove blank line and comment

* Improvements for testing and code simplification
- Added network integration tests
- Modified error handling in request()
	- More testing to come on this
- Rewrote construct_path again. Very simple now.

* Remove trailing whitespace

* Small changes based on dag's response

* Removed certain sections from exit_json and fail_json as they're old
2018-05-04 00:01:05 +02:00
c2d7347819 Enable nuage_vspk tests for Python 2.7. 2018-05-03 14:52:47 -07:00
a6d5656dd8 ec2_instance: add a retry to run_instance to help with ec2 consistency 2018-05-03 15:46:15 -04:00
1905a6e8fb ec2_vpc_route_table: Update matching_count parsing on find_subnets fu… (#38707)
* ec2_vpc_route_table: Update matching_count parsing on find_subnets function and tests

* ec2_vpc_route_table: Update matching_count parsing on find_subnets function
2018-05-03 15:05:24 -04:00
aeecdbfc35 Restore previous test play, break new tests into a new play (#39688) 2018-05-03 13:50:21 -05:00
62b03d93bc Use ansible-test, not nxos.yaml (#39692) 2018-05-03 19:19:52 +01:00
923f676836 [ec2_vpc_vgw] [ec2_vpc_vpn] stabilize modules for PR 35983 (#38666)
* Stabilize ec2_vpc_vgw and ec2_vpc_vpn so tests for ec2_vpc_vpn_facts in PR 35983 can be run in CI

* Add updated placebo recordings

* ensure find_vgw uses the virtual gateway id if available

Add AWSRetry.jittered_backoff to attach_vpn_gateway to deal with errors when attaching a new VPC directly after detaching

Add integrations tests for ec2_vpc_vgw

* Sort VPN Gateways by ID
2018-05-03 14:19:19 -04:00
923a81e9e5 vyos_interface require multiple network nodes to run (#39670)
* vyos_interface require multiple network nodes to run

We don't have the ability to run these currently, so disable them.
The original logic was also incorrect, the tests don't pass on lab, DCI
nor single instance nodepool, so disable

https://github.com/ansible/ansible/issues/39667 tracks getting these
enabled again

* eth0 -> Gi0/0

* Correctly detect if we should run lldp

* Correctly detect if we should run lldp
2018-05-03 18:50:18 +01:00
f99bae1776 Fix for nxos_snmp_host issues (#39642)
* fix snmp_host issues

* source files

* fix shippable

* remove defaults to match arg spec
2018-05-03 21:36:33 +05:30
99748cbfa4 fix nxos_snmp_traps issues (#39444)
* fix snmp_traps code

* add IT cases

* fix shippable

* fix shippable without ignore
2018-05-03 21:34:25 +05:30
d49a09d05e fix sanity checks to make shippable happy (#39685)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-05-03 10:36:08 -05:00
cc477ba8cc Don't split line when no version available for plugin (#37907)
* Don't split line when no version available for plugin

* Fixed author github account
2018-05-03 11:10:18 -04:00
0c0dc8d9fc Adds documentation structure and stubs for new VMWare guide (#39246)
* Adding initial skeleton of VMWare docs

* Updated product name capitaliztion; ready for initial PR.

* Add few files and updated some links

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

* Fixed duplicate anchor tag
2018-05-03 08:05:28 -07:00
947aa52327 Add new OpenStack module for managing cinder volume snapshots (#19122)
* Add os_volume_snapshot Ansible Module

* Add missing RETURN documentation

* Fix YAML syntax

* Add ANSIBLE_METADATA

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Bump the ansible version

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Add support for check_mode

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>

* Fix sanity tests

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>
2018-05-03 09:15:39 -05:00
a7660f0603 Default ssh port (#39678) 2018-05-03 09:59:36 -04:00
1885883a88 Document follow changes
Add the file, blockinfile, and replace changes to the follow parameter
to the porting guide
2018-05-03 06:13:21 -07:00
151f9d2ebf [cloud] aws_direct_connect_connection: improve return docs (#37677)
Fixes #29381

Fix uses of AWSRetry

Fix exception handling

Update module to use AnsibleAWSModule
2018-05-03 08:45:38 -04:00
29770a297a Fail with nice error message if elb target_type=ip not supported (#38313)
* Add helpful failure message if target_type=ip is not supported

Create test case for target_type=ip not supported

* Update elb_target_group module to latest standards

Use AnsibleAWSModule
Improve exception handling
Improve connection handling
2018-05-03 08:36:52 -04:00
918b29f0fc [doc] fix a typo in ec2_eni docs (#36571) 2018-05-03 08:36:30 -04:00
b5488b4e45 Change aws_acm_facts name parameter to be domain_name (#36986)
Match AWS's naming for domain name, but provide backward
compatible alias.
2018-05-03 08:35:55 -04:00
cb4db82354 Route53 check mode (#37273)
* Adding check mode for route53.

* flake8
2018-05-03 08:29:57 -04:00
ada2ea4387 Fix ec2_metadata_facts documentation (#37546)
- ec2_metadata_facts does not extend `url`
- Remove url_argument_spec for ec2_metadata_facts
2018-05-03 08:29:14 -04:00
261ad0aa87 [aws] Improve integration test suite for cloudfront (#37813)
Improve naming of one of the cloudfront tasks

Change test_identifier back to resource_prefix now it's always
lower case.

More tests around using distribution_id and default_root_object
2018-05-03 08:28:23 -04:00
e2908ae8df [aws] Add aws_iam_role check mode support (#39002)
* Check mode when adding

* Check mode when deleting

* Add check mode
2018-05-03 08:00:36 -04:00
910bc892c6 ec2_ami: Properly delete snapshots (#39606) 2018-05-03 07:48:29 -04:00
afdc2364f2 Fix eos_vlan associated interface check (#39661)
* Fix eos_vlan associated interface check

Fix eos_vlan associated interface check by comparing
the interface in want and have without converting the
interface name to lower

* Update eos_vlan docs
2018-05-03 17:07:30 +05:30
b20b964c4a Fix eos_config integration test failure (#39662)
Enable become for eos_config check_mode test cases
2018-05-03 17:06:34 +05:30
88df583af7 New module: AWS storage gateway facts (#39491)
* Add a module to get storage gateway facts

* Review fixes

* Last review fixes

* Add filtering gathering & some fixes

* doc fix

* API error handling

* Remove ec2_argument_spec import

Use imported BotoCoreError and ClientError rather than botocore.exceptions
2018-05-03 07:10:05 -04:00
f872b70449 Remove skipping of never tag since it is done automatically (#39643) 2018-05-03 14:56:42 +10:00
ca36e07be0 update win_psmodule.py (#39631)
<!--- Fix minor typo in Powershell version requirement -->

+label: docsite_pr
2018-05-03 14:51:00 +10:00
e0893aacc5 [ec2 contrib script] Add ability to filter EC2 instances via shell environment (#39034) 2018-05-02 23:44:36 -04:00
8d84039aa8 [ec2_vpc_route_table] Use 'network_interface_id' rather than 'interface_id' (#38499)
Updated documentation to refer to 'network_interface_id' rather than 'interface_id' as the latter results in an error: 'Parameter validation failed: Unknown parameter in input: \"InterfaceId\"'
2018-05-02 22:28:08 -04:00
521cc3d4e6 [contrib] azure_rm.py add mechanism to force use of private ip as ansible_host (#36109)
Signed-off-by: Sylvain Rabot <s.rabot@lectra.com>
2018-05-02 17:38:06 -07:00
31bfb7b563 Remove dharmabumstead from docs review pings 2018-05-02 14:59:23 -07:00
b6aa132033 New module: GCP Compute Backend Services (#38611) 2018-05-02 16:59:27 -04:00
394abba1b9 New module: GCP Compute Backend Buckets (#38610) 2018-05-02 14:57:00 -04:00
472c586563 Enable xml integration test. (#39629) 2018-05-02 20:41:48 +02:00
9a607283aa Terraform module: pass plan_file argument correctly
Per #39611 the `terraform` module wasn't properly building plan-only
files.
2018-05-02 13:45:24 -04:00
0a119c391a Only expand '~' based on become_user/remote_user
Change brought forward from #00c023e in stable-2.5.

Closes #39281 (bug report)
Closes #39540 (PR with substantially the same change)
2018-05-02 22:50:41 +05:30
f526a461ee Remove unstable marker from rabbitmq_user test. 2018-05-02 10:03:36 -07:00
70d89b5487 use actual ssh executable as it might not be ssh 2018-05-02 12:10:25 -04:00
f2db9d59c7 Update set_stats.py
<!--- Your description here -->

+label: docsite_pr
2018-05-02 11:10:52 -04:00
90354d282d Install git in pip tests (#39460)
* Install git in pip tests

* Ignore MacOSX
2018-05-02 10:28:10 -04:00
287f4ff374 Connect via ssh using ansible_port (#39603)
Depending on how we spin up the VM we use different ssh port. Honor that
in the vyos_user test
2018-05-02 15:03:41 +01:00
2dc746bcc3 fixes #39585 typo fix under git practices (#39604) 2018-05-02 15:00:21 +01:00
eb5e15e7e0 Fix fetching ios default running config (#39475)
If default option is enable in that case only
add 'all' or 'full' flag
2018-05-02 19:27:56 +05:30
9577cef3ba [cloud] route53_zone: create public zones associated to a reusable delegation set (#39502)
* Add option to specify reusable delegation set while creating public zones

* Add mutual exclusion argument spec for delegation set and VPC/private zone

* Get zone delegation set ID when updating a public zone
2018-05-02 09:25:15 -04:00
17928ff666 ovirt_vms: Fix the module to work with check mode (#37916)
Fixes: https://github.com/ansible/ansible/issues/36712
2018-05-02 08:47:30 -04:00
0a17adb3df fix nxos_vrf_af teardown for nxapi (#39599)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-05-02 18:06:34 +05:30
8bfc92fb27 Add Numa support. (#35838) 2018-05-02 03:52:16 -04:00
dc420fc5fa Allow non-inclusion of setup task in junit report
The JUnit callback pushes every tasks in the report. Even the setup
tasks that - sometime - might clutter the report rather than being
useful, based on one needs.

This PR allows one to specify whether or not the setup tasks should be
part of the final report, defaulting to True to be backward compatible
to what is already in place today.
2018-05-02 00:00:36 -07:00
c812396793 Update playbooks_variables.rst (#39570)
<!--- Your description here -->

+label: docsite_pr
2018-05-01 23:02:32 -07:00
85ad2eae8a Fix typo in porting guides index page (#39582)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-01 23:00:59 -07:00
b92ef8e54a Use HTTPS instead of HTTP for httpbin tests. (#39457)
The httpbin.org site is now redirecting HTTP to HTTPS.
2018-05-01 16:28:42 -07:00
054efb8d80 Update 2.6 roadmap dates. (#39573) 2018-05-01 15:07:37 -07:00
69affddc7f Add firewalld Rich Rule port forwarding example (#39534)
Example provided by Mike Cardwell (@mikehardenize) in an issue
comment 28349#issuecomment-385354551

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-05-01 16:33:34 -05:00
04ae0c3312 winrm: removed old exec_command that is no longer used (#39572) 2018-05-02 07:04:53 +10:00
77f5a8f422 Add AWS Inspector Target Module (#37464)
* Add AWS Inspector Target Module

* "ansible-test sanity" Fixes

* * Rename module
* Add integration test
* Incorporate feedback from s-hertel
2018-05-01 16:04:03 -04:00
4134f1204b Add Andrew Gaffney to list of people in Committers Guidelines doc 2018-05-01 12:51:34 -07:00
88b3b14a9c ovirt: fix quota_id check (#39568) 2018-05-01 14:26:34 -05:00
fac7b2f1ca ovirt: Clarify secrets configuration (#39501)
Fixes: https://github.com/ansible/ansible/issues/39478
2018-05-01 14:10:58 -05:00
6b554deb28 keycloak_client: add aliases for module options (matching API) (#39507)
* add aliases for module options which match API endpoint

* directAccessGrantsEnabled fixed in docs
2018-05-01 14:10:41 -05:00
c11248c456 Update redhat_subscription.py (#39512)
fixed small typo of depracated to deprecated in redhat_subscription doc

+label: docsite_pr
2018-05-01 14:09:13 -05:00
65049b6c42 Set default=no in import_role and include_role for private. Fixes #21077 (#39566) 2018-05-01 12:19:04 -05:00
6acdc36317 Ensure we don't overwrite handlers from include_role when loading a play. Fixes #18140 (#39563) 2018-05-01 12:18:36 -05:00
5a6bdef76b Only change expiration date if it is different (#38885)
* Only change expiration date if it is different

Modify user_info() method to also return the password expiration.
Compare current and desired expiration times and only change if they are different.

* Improve formatting on user tests

* Add integration test for expiration

* Add changelog fragment

* Improve integration test

Skip macOS and use getent module for validating expiration date.

* Fix expiration change for FreeBSD

* Don't use datetime since the total_seconds method isn't available on CentOS 6

* Use better name for expiration index field

Use separate tasks for verifying expiration date on BSD

* Use calendar.timegm() rather than time.mktime()

calendar.timegm() is the inverse of time.gmtime() and returns a timestamp in UTC not localtime
Add tests that change the system timezone away from UTC

* Mark tests as destructive and use test for change status

* Fix account expiration for FreeBSD

Use DATE_FORMAT when setting expiration date on FreeBSD. Previously the argument passed to -e was an integer of days since epoch when the account will expire which was inserted directly into master.passwd. This value is interpreted as seconds since epoch by the system, meaning the account expiration was actually set to a few hours past epoch.

Greatly simply comparing desired  and current expiration time by using the first three values of the struct_time tuple rather than doing a whole bunch of manipulations of the seconds since epoch.
2018-05-01 11:19:01 -04:00
b9f7f582d1 remove properties from vars in include_role (#38968)
* remove properties from vars in include_role
* also from_ args
2018-05-01 10:16:59 -04:00
bd8206b556 BOTMETA: Adding John 'Warthog9' Hawley from VMware to team_vmware (#39532)
Adding John 'Warthog9' Hawley to team_vmware to help triage bugs in
Ansible
2018-05-01 09:29:58 +05:30
e9270fb100 mail callback: Exception info less important
So it seems on failure the last raised (but handled) exception is being
added to the task failure result, which makes it often unrelated to the
actual failure.

Since we assumed the exception was always related, using the exception
information for the subject is plain wrong (and let me to debug
completely unrelated ghost issues).

Also the exception details are now moved back in the output. Maybe we
should not show it unless there's no other information ? But at least it
should not be the mail's subject.
2018-04-30 21:45:10 -04:00
81b2529159 Fix when template paths contain non-ascii chars and using the path in ansible_managed
Fixes #27262
2018-04-30 16:47:27 -07:00
cca96b8c9d Pass vars from import_playbook in early (#39521)
* Pass vars from import_playbook in early, as they may be needed to parse the imported plays. Fixes #33693

* Add test for import_playbook vars
2018-04-30 16:13:43 -05:00
269d682f70 Move camel2snake and snake2camel to common/dict_transformations.py (#39498)
Since it will be used outside just AWS modules, this commit moves
`camel_dict_to_snake_dict` and `snake_dict_to_camel_dict` functions into
a new module_utils file under common/ to match their wider usage.
2018-05-01 06:50:32 +10:00
2d21c7da17 Allow the galaxy client to fetch from a url in role version data (#39396)
Currently if the ansible-galaxy client fetches a role from a galaxy
server, it then fetches the role from Github. This change allows a
galaxy server to provide an alternate source url that points to an
archive that contains the role version.
2018-04-30 15:47:43 -05:00
c0043444c9 Remove unneeded imports in load_list_of_blocks (#39523) 2018-04-30 15:39:10 -05:00
5eaf043711 refactor firewalld module, add firewalld module_util (#37603)
* refactor firewalld module, add firewalld module_util

This change is meant to enable the addition of advanced feature
specific firewalld modules that will have different module option
patterns than what fits in the current firewalld module, while
keeping as much common code as possible in the module_util

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-04-30 15:33:28 -05:00
240b060c02 Use the computed role name instead of 'role'. Fixes #38838 (#39516) 2018-04-30 14:41:13 -05:00
5f9b7046ed Adds bigip management route module (#39520)
This module can be used for managing the management routes on a bigip
2018-04-30 12:30:13 -07:00
ec9c59f52b [ec2_vpc_net] Add retries to describe_vpc_attribute call (#39256)
* [ec2_vpc_net] Add retries to describe_vpc_attribute call

* Use new AnsibleAWSModule client-based waiters
2018-04-30 15:27:22 -04:00
cc06f4cba1 Improve deprecation message for ec2_vpc_dhcp_options modules (#38459)
Make it clear to user why ec2_vpc_dhcp_options and
ec2_vpc_dhcp_options_facts have been deprecated
2018-04-30 15:17:15 -04:00
18b463e17b New module: GCP Container Clusters (#37324) 2018-04-30 15:04:56 -04:00
609b1827e1 Adds log publisher module for f5 (#39518)
This module can be used to manage log publishers on a bigip
2018-04-30 11:55:05 -07:00
19fee0ef41 fix keyword doc generation
* use aliases when they exist
  * fix hardcoded loop attributes handling
2018-04-30 14:47:09 -04:00
c0cea32f61 Adds log destination module for f5 (#39513)
This module can be used to manage log destinations on a bigip
2018-04-30 11:25:09 -07:00
59b9c5f119 Fixes 30786 - add server response to the failure (#39371)
* Fixes 30786 - add server response to the failure

* replace str(e) with to_native(e) according to code review
2018-04-30 14:18:06 -04:00
d39b1ff664 New module: GCP Storage Bucket Access Controls (#37289) 2018-04-30 14:03:02 -04:00
ebe7666d71 add 'localhost_warning' configuration option
Add the 'localhost_warning' configuration option. When set to 'false',
this will prevent Ansible from issuing a warning when the inventory is
empty and it is using an implicit inventory with only 'localhost'.

Closes #17086
2018-04-30 13:27:32 -04:00
0cb11c61ac Various f5 module fixes (#39510)
Mainly fixing coding conventions. Also, added ipv6 suppor to pool members
2018-04-30 09:48:41 -07:00
7c9122a89d Add changelog for file removal race 2018-04-30 09:12:40 -07:00
6a08b16c37 Ensure remove files work when file was already removed
If a file disappears when you are removing it, this will ensure it
doesn't fail and continues as expected.
2018-04-30 09:10:09 -07:00
f3399a5e34 Add returning values to the rds_subnet_group module (#39077)
* Add return values to rds_subnet_group module
2018-04-30 12:01:47 -04:00
9773157da6 Update intermediate_concepts.rst (#39500)
Updated  GitHub Repos section to better explain what ansible-network@redhat.com is for (not an email list, but adding to the network-automation github repo.
2018-04-30 09:29:37 -05:00
49e3f60c42 ovirt: Update documentation to showcase that the Python SDK 4.2.4 is required. (#39169)
This is related to the GitHub PR#35841. Some documentation was missed and did not get updated with those patches.
2018-04-30 10:01:51 -04:00
b667126d35 Update example in lookup dict.py (#39488)
Typo fixed
2018-04-30 16:06:58 +05:30
65c19c3629 ovirt_vms: Clarified graphical_console arguments. (#39455)
For protocol, it should be a list and all
of the values are expected to be lowercase.
An example is also added to show how to add
both Spice and VNC consoles to a VM.
2018-04-30 05:06:17 -04:00
0d1daf4de8 Ansible.ModuleUtils.SID - allow SID as an input to allow people to specify well know SIDs instead of the name (#39400) 2018-04-30 16:18:25 +10:00
d90c36e320 Add a changelog for filename encoding in template action fix 2018-04-28 09:17:16 -07:00
2976b653ce Need to convert filenames to byte strings before using them in APIs
Under a non-utf-8 locale (for instance, LC_ALL=C), passing a non-ascii
filename to many APIs will traceback.  Fix that by explicitly converting
to byte strings before passing to external APIs.

May fix #27262
2018-04-28 08:56:36 -07:00
3f9e4b16fe VMware: correct comparison for guest_id (#39291)
This fix corrects the comparison of system generated guest_id with
user provided guest_id. Module used to report change even if the
guest_ids were same. For example, user provided guest id rhel7_64guest
and VMware returned guest id rhel7_64Guest are logically same but
 lexicographically different and due to this module use to report
change even if there is no change applied.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-28 20:27:53 +05:30
019decd29a doc: Add missing parenthesis in first_found example (#39420) 2018-04-28 14:59:07 +02:00
fdcece5c38 Update NetApp module_utils to use correct license (#28070)
The NetApp module_utils file should be using a BSD license. This
patch updates the license.
2018-04-28 08:35:19 -04:00
ed141f1eab VMware: Refactor vmware_vswitch (#36091)
* Update documentation
* Update logic
* Added idempotency
* Added Error handling

Fixes: #36030

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-28 16:31:45 +05:30
57a009d4c7 VMware: vmware.py refactor (#36976)
* Remove unused `find_entity_child_by_path` API
* Remove unused `fetch_file_from_guest` API as this has separate module
  vmware_guest_file_operation
* Remove unused `push_file_to_guest` API as this has separate module
  vmware_guest_file_operation
* Refactor exception variables
* Change GPL License boilerplate to one-liner

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-28 16:11:21 +05:30
958ba1469b Fix awkward plural in git module (#39399) 2018-04-28 10:25:43 +05:30
7ea68a23c1 Disable failing tests. 2018-04-27 16:12:21 -07:00
d2a1c1ffe5 Adding slxos-facts module and tests. (#39121) 2018-04-27 20:58:13 +01:00
4801bf96a5 fixes broken link in aci module docs (#39247)
* fixes broken link in aci module docs

* makes correct fix for aci broken link
2018-04-27 21:24:18 +02:00
c8a9b411bc Last docs link fixes (#39391)
* should not need <>, but fails without

* adds anchor to keywords page, uses it on plugins pages

* fixes envvar link errors

* harmonize file name and ref name as python_3

* removes undefined-lable from ignore list
2018-04-27 13:21:39 -05:00
7db5ce2c86 Ensure handlers have proper parent (#39426)
* Ensure role handlers are parented correctly. Fixes #36518

* Add delegate_to test for include_role handlers
2018-04-27 12:03:57 -05:00
85b42a6f68 Allow ec2_group integration tests to run on PRs to the ec2_group module by marking it unstable instead of disabled (#39415) 2018-04-27 12:57:13 -04:00
9864f874d4 [aws] Increase possible wait time for nonmonotonic subnet attributes (#38960) 2018-04-27 12:10:22 -04:00
44dd9ce80d [aws] Skip ec2_vpc_subnet waiters for old botocore versions (#39171)
Fix ec2_vpc_subnet for botocore versions that do not accept the WaiterConfig parameter
2018-04-27 12:06:26 -04:00
68c9c18bcd Allow ec2_ami integration tests to run on PRs to the ec2_ami module by marking it unstable instead of disabled (#39416) 2018-04-27 11:29:08 -04:00
200a0bce67 cloudstack: new module cs_role_permission (#37065) 2018-04-27 16:47:07 +02:00
ac754c736f Allow ec2_vpc_route_table integration tests to run on Prs to the ec2_vpc_route_table module by marking it unstable instead of disabled (#39417) 2018-04-27 10:07:47 -04:00
c0ffe7224f Mark ec2_vpc_subnet tests as unstable so they only run on directly related PRs (#39418) 2018-04-27 10:07:22 -04:00
25dea1f72c Change except Error when trying to get a missing option 2018-04-27 09:47:18 -04:00
efe7c20100 LDAP: Refactor and add ldap_passwd module (#33040)
* modules/net_tools/ldap: Refactor shared options
* modules/net_tools/ldap: Refactor shared code
* modules/net_tools/ldap: Add ldap_passwd module
* modules/net_tools/ldap/ldap_passwd: More robust change check
* In some deployments, using compare_s results in spurious “changed” results,
while bind is more reliable.  The downside is that it results in an extra
connection, and the code it more involved.
* ldap_passwd: Rename methods passwd_[cs]
* ldap_passwd: Remove unecessary type=str
* ldap: Factor-out failure cases
* ldap_passwd: Provide more precise error messages
* ldap_passwd: Irrelevant syntax changes
* ldap_passwd: Rename u_con to tmp_con
* ldap_passwd: Keep HAS_LDAP local
* LDAP doc update
* Resolved all copyright related issues
* Resolved self.fail calls
* Update documentation

Signed-off-by: The Fox in the Shell <KellerFuchs@hashbang.sh>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-27 15:54:05 +05:30
19e1f41837 Initial commit for fortios_webfilter (#37196)
* Initial commit for fortios_webfilter
2018-04-27 10:47:58 +01:00
a3f2e99864 Fix for changing method only on specified interface (#39015)
Test added for interface method change
2018-04-27 05:18:19 -04:00
9f1254a32f Typo fix in testing link (#39407)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-27 01:16:12 -07:00
4c1a9898fd nxos_snmp_location integration test clean up (#39375) 2018-04-27 13:07:21 +05:30
c9245439dc Remove willthames from default AWS notifications (#39405)
Too much to do, too little time. Happy to remain on the WG,
be consulted for advice by the WG, and retain the notifications
for my existing authorships and the remaining notifications
(and have added some more explicit ECS notifications)
2018-04-27 14:25:53 +10:00
86db62c0e9 [AWS] report boto3/botocore versions during fail_json_aws (#39298)
* [AWS] report boto3/botocore versions during `fail_json_aws`

When modules call `fail_json_aws` and boto3 is installed, gather the
boto3 and botocore versions so that any new AWS module issues will
include the user's boto3 installation info. This will make debugging
issues where features aren't available yet easier.

* PEP8

* Switch to `dict` rather than tuple returns
2018-04-27 10:05:41 +10:00
61bcf4740f Added changelog fragment for win_file special char fix 2018-04-27 08:07:01 +10:00
4b57fa91d0 win_file: Handle [] in paths, fix touch in check mode (#37901)
* win_file: Handle [] in paths, fix touch in check mode

* Fixed typo for p/invoke command
2018-04-27 07:57:16 +10:00
bbfe7a8b2f more debug logs for free, network_cli, paramiko and add hostname context to debugging messages (#39205)
* Add hostname context to debugging messages
* Set paramiko's channel
2018-04-26 17:10:28 -04:00
f91d961cb4 Add tests for template with non-ascii filenames
This is a test in response to #27262 but I could not provoke the error
so it only shows that the current code is working with non-ascii
filenames in this case.  It doesn't show whether there's some other bug
somewhere.
2018-04-26 13:27:18 -07:00
5dd8977cfa Fix nested noop block padding in dynamic includes (#38814)
* Fix nested noop block padding in dynamic includes

* Address issues from the review

* Fix typo
2018-04-26 15:14:31 -05:00
4b01b92cfe Update TaskInclude _raw_params with the expanded/templated path to file (#39365)
* Update TaskInclude _raw_params with the expanded/templated path to file

* Add tests to validate host vars include paths
2018-04-26 14:25:02 -05:00
2f5161628a Don't skip conditional exception on includes (#39377)
* task_executor.py: Raise 'conditional exception' in case of 'include_*'

Fixes #33632

Signed-off-by: Patrick Ringl <patrick_@freenet.de>

* Re-organize tests, add static include test with undefined var

* Remove unnecessary conditional
2018-04-26 13:39:44 -05:00
05830658bc task_executor send the task as a kwarg to connections (#39341)
* make taskexecutor send the task as a kwarg to connections

* Fix line length error

* Send just the task uuid
2018-04-26 14:17:16 -04:00
bdb75cd82c Integration Tests only: nxos_snmp_contact (#39318)
* add integration test cases for snmp_contact

* removing unnecessary files
2018-04-26 22:32:14 +05:30
7bcbab70f0 Clarify the comments for action_write_locks
Also explain why there's no special optimization for service managers at
the moment
2018-04-26 09:42:18 -07:00
d76298b5d3 call diff callback also when task diff is true (#39366)
fixes #31129
2018-04-26 12:18:17 -04:00
3ce81bdd8d Remove duplicated keys, bad Gundalow (#39370) 2018-04-26 16:43:45 +01:00
462449cc8c run Tower CI using the latest ansible-tower-cli package 2018-04-26 08:01:03 -07:00
efdd92e1c0 Update test-module (#39331)
Update test-module To use C.DEFAULT_LOCAL_TMP
2018-04-26 07:16:33 -07:00
83c1cba511 Fixes for mode=preserve (#39343)
* Fixes for mode=preserve

* Document mode=preserve for template and copy
* Make mode=preserve work with remote_src for copy
* Make mode=preserve work for template
* Integration tests for copy & template mode=preserve

Fixes #39279

* Changed mode option in win_copy to hidden option as it doesn't reflect copy mode
2018-04-26 07:14:37 -07:00
33f358383a [aws][docs] Add AnsibleAWSModule features to AWS developer guidelines (#38978) 2018-04-26 08:26:03 -04:00
cd39b8263d [aws] fix misspelling in ec2_instance docs 2018-04-26 08:16:37 -04:00
d68ee638bf Typo 2018-04-26 12:55:51 +01:00
3a60cde14e ovirt: FCP storage domains don't have to have target (#38882) 2018-04-26 06:43:19 -04:00
dca6e2d94d nxos_interface: AttributeError: 'NoneType' object has no attribute 'group' (#38544)
This fixes an issue we recently encounteredi with nxos_interface:

```
Traceback (most recent call last):
  File "/tmp/ansible_JmLoba/ansible_module_nxos_interface.py", line 777, in main
    have = map_config_to_obj(want, module)
  File "/tmp/ansible_JmLoba/ansible_module_nxos_interface.py", line 606, in map_config_to_obj
    obj['speed'] = re.search(r'speed (\d+)', body).group(1)
AttributeError: 'NoneType' object has no attribute 'group'
```
2018-04-26 12:27:35 +05:30
2f99a17856 fix nxos_ntp issues (#39178)
* fix nxos_ntp issues

* review comments

* fix idempotent fail case
2018-04-26 12:09:46 +05:30
08f071eb7a Fix #26755 by ensuring that the first nic in the nic list is primary (#38994)
* Fix #26755 by ensuring that the first nic in the nic list has primary set to True, and all other nics have primary set to False.

* Fix sanity issues and add test for two nics

* Fix typo in test

* fix nic list

* Ensure the niclist variable is used rather than a niclist string

* Add tests just for dual nic, reverting changes to single nic VM creation tests

* Correct idempotency test
2018-04-25 23:16:25 -07:00
32d786af65 Convert more http links to https. 2018-04-25 23:12:46 -07:00
354454ad58 Fix aruba initial prompt issue (#39195)
Fixes #33414

Issue a newline when the initial connection
results in a prompt and expects user input.
2018-04-26 11:06:27 +05:30
5439f141ee Label infoblox issues and brampling as maintainer (#39310) 2018-04-26 11:10:03 +10:00
40fcef3e41 Adding support for opensearch of documentation (#38593) 2018-04-25 18:01:26 -07:00
aac3020770 Add changelogs dir to change classification. 2018-04-25 16:27:29 -07:00
a5e33969b1 Add changelog entry for winrm encoding fix 2018-04-25 15:00:11 -07:00
0b643009db Winrm encoding in exception fix (#39333)
Exceptions need to use native strings.  We need to make sure we're
combining native strings with native strings.
2018-04-26 07:51:53 +10:00
fda67bae50 Ensure timezone tests reset system timezone to original value (#39326) 2018-04-25 16:30:06 -04:00
dd735b2122 Bug fixes for GCP Dns Managed Zones (#38631) 2018-04-25 16:20:55 -04:00
f8853d83e3 windows: removed deprecated features in 2.6 (#38930)
* windows: removed deprecated features in 2.6

* Comma surgery.
2018-04-26 06:13:37 +10:00
8d77c6cc16 Adding support for GCP Compute Https Health Checks (#37437) 2018-04-25 16:11:32 -04:00
7ce9968ce1 Properly unlock the socket file lock in ansible-connection (#39223)
Also use a lock file per host, rather than one global file lock.

Commit 9c0275a879 introduced a bug where the lock file was only being
unlocked by the child PID of the resulting fork done in ansible-connection.
This causes delays when a large inventory causes a lot of contention on
that global lock. This patch fixes the problem by ensuring the lock is
released regardless of the fork condition, and also to use a lock file
based on the remote address of the target host, removing the global lock
bottleneck.

Fixes #38892
2018-04-25 15:00:15 -05:00
12f2b9506d [aws]Add VPC configuration to ECS modules (#34381)
Enable awsvpc network mode for ECS services and tasks and
their underlying task definitions

Improve test suite to thoroughly test the changes

Use runme.sh technique to run old and new versions of botocore to
ensure that the modules work with older botocore and older network modes
and fail gracefully if awsvpc network mode is used with older botocore
2018-04-25 15:41:04 -04:00
58bf4ae611 New module: GCP Storage Buckets (#37288) 2018-04-25 15:26:13 -04:00
39bf7d3655 New module: GCP Compute HTTP Health Checks (#36329) 2018-04-25 15:25:23 -04:00
4dfef45449 [s3_bucket] Increase timeout on versioning check, as it seems to take longer to propagate than other properties (#39325) 2018-04-25 15:24:15 -04:00
ee02d0c120 Remove obsolete test containers.
- opensuse42.1 - EOL
- opensuse42.2 - EOL
- ubuntu1204 - EOL
- cloudstack-simulator - Migrated to https://github.com/ansible/cloudstack-test-container
2018-04-25 11:26:42 -07:00
4b52a54e18 Reduce warnings (#39254)
* removes FAQ links; no entries exist for linked config settings

* fixes various anchors and links

* addresses abadger comments, thanks

* marks orphan pages, avoids TOC errors

* adds links for remote_tmp setting to FAQ
2018-04-25 11:18:52 -07:00
476d1f818e Documentation for query/q. Fixes #38275 (#38558) 2018-04-25 12:55:34 -05:00
ac1fbbeabc Update the cloudstack test container reference. 2018-04-25 10:41:24 -07:00
e45a5e1c86 Add a Scaleway dynamic inventory plugin (#38739) 2018-04-25 13:35:54 -04:00
0f3480d359 docker_image: Fix idempotency of pull (#31956)
when pulling an image with force=yes the task was marked as changed
everytime even when the image hasn't changed.

This was due to a bad comparison of the image tag before the pull
and after the pull.

Fixes #22596

Signed-off-by: Alberto Murillo <albertomurillosilva@gmail.com>
2018-04-25 12:58:29 -04:00
d13eccb7bc [aws] fix excepted/expected misspelling 2018-04-25 12:48:05 -04:00
db88cb8d8f Add note about sefcontext doing no restorecon (#39076)
* Add note about sefcontext doing no restorecon

To someone like me who is relatively new to SELinux, setting the
"reload" option to yes might suggest that a restorecon is automatically
executed after the semanage call, making the new file context effective
immediately. I have found out that this is not the case and would like
to clarify this to others.

+label: docsite_pr

* Replace note by one suggested by reviewer

Reviewer dagwieers suggested a better notice text during review of my
original one, giving recommendations about what to do to actually get
the newly chosen SELinux context applied to the file.
2018-04-25 18:05:03 +02:00
fdcf8c7f74 removes broken link to old module name (#39249) 2018-04-25 09:23:47 -05:00
0d38c80395 fixes broken links in Amazon module docs (#39248) 2018-04-25 09:22:49 -05:00
fb264281de Adds various features and fixes (#39271)
* a refactor of pool member and node modules to be inline with current f5 conventions
* Added priority_group_activation to pools
* various other small convention fixes and bug fixes
2018-04-25 07:16:11 -07:00
1c49cc4377 Actually check for import_role when loop detected (#39218) 2018-04-25 14:50:20 +02:00
c30f46f7c6 Add note about bot to the issue template 2018-04-25 14:00:19 +02:00
2e6a917f9d template: minor docs fixes (#39283) 2018-04-25 11:51:57 +02:00
1afec5a48e fix nxos_snmp_community issues (#39258) 2018-04-25 13:16:41 +05:30
86817cdd52 Add aggregate example in nxos_l2_interface module doc (#39275)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-04-25 12:56:54 +05:30
6db3f522c8 sub-interface support for nxos module (#37392)
* nxos sub-interface support

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

* update l3_interface test

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

* Add integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-04-25 12:45:56 +05:30
9940b5db9c Adds DNS profile module for BIGIP (#39270)
This module can be used for managing DNS profiles on a BIGIP
2018-04-24 21:05:30 -07:00
20d5b04ac4 Adds udp profile module for bigip (#39269)
This module can be used to manage UDP profiles on a bigip
2018-04-24 20:35:42 -07:00
434ad97c39 Adds tcp profile module for BIGIP (#39268)
This patch adds a module to support manipulation of TCP profiles
on a BIGIP
2018-04-24 20:05:31 -07:00
256b5535ec Various fixes to F5 modules (#39255)
* Adds gnat provisioning to bigip_provision
* Adds special handling for AFM in bigip_provision
* Add device rebooting for provisioning as necessary
* Refactored route domain module to be inline with current f5 conventions
* Minor refactors across modules
2018-04-24 19:49:52 -07:00
39ca41eb1b Fixes some NIC bugs (#39213)
* add loadbalancer

* dict check nullable

* add default vallue when get list

* create backend addr pool

* fix the set

* fix to dict

* fix ideponement

* use param security group name when create

* nic can has no nsg

* add test

* fix

* fix

* fix

* fix idemponet

* add document

* fix test

* add configuration

* fix

* fix

* remove all resources

* fix

* fix test

* add version added

* fix lint

* fix lint

* fix lint

* remove new feature and only submit bugfix

* remove useless test

* fix
2018-04-25 09:54:19 +08:00
72456711c3 Add note about the dangers of ANSIBLE_DEBUG (#39261)
* Add note about the dangers of ANSIBLE_DEBUG

* Wording tweaks
2018-04-24 17:30:41 -07:00
2f32e0ba2d Remove me from botmeta (#39263)
* Remove myself from team_vmware
* Remove myself from maintainership of all modules
2018-04-24 19:55:04 -04:00
7975c8fab0 Improve integration-aliases docs. (#39087) 2018-04-24 14:25:53 -07:00
ce0eee905e Allow block map cache size modification. (#35667)
The VDO Ansible module currently cannot modify the block map cache
size (but can configure the block map cache size for new volumes).
Add the "Block map cache size" parameter to the list of modifiable
parameters.
2018-04-24 16:14:04 -04:00
fc753dd261 Adds the bigip_smtp module (#39243)
This module can be used to manage smtp settings on a bigip.
2018-04-24 12:20:49 -07:00
996f9c2467 Fix mysql-server install/upgrade on Ubuntu 16.04. (#39241)
* Fix mysql-server install/upgrade on Ubuntu 16.04.
* Prevent service restart in docker_secret test.
2018-04-24 12:02:26 -07:00
0ca38ff595 gets rid of rst error on exos module docs (#39244) 2018-04-24 19:45:07 +01:00
e82a8d177f Adds module for bigip service policies (#39240)
This patch includes a module for managing bigip service policies.
2018-04-24 11:06:34 -07:00
7c4b91844d More validate module fixes (#39097)
* Fix type bool DOCUMENTATION issues
2018-04-24 18:05:50 +01:00
b533ebe20d remove slice docs (#37946) 2018-04-24 11:11:46 -04:00
7881866db4 Update ROADMAP_2_6.rst with additional network roadmap items (#39225)
* Update ROADMAP_2_6.rst

Added network_get and network_put to Network modules roadmap

* Update ROADMAP_2_6.rst

add netconf_config to the network module roadmap
2018-04-24 15:55:12 +01:00
8f83061e70 corrects links to 'list_of' pages (#39161) 2018-04-24 15:51:12 +01:00
a6d2f6fd95 win_domain - Add ability to specify netbios name (#39084)
* Added netbios option to win_domain.ps1 and updated documentation

* formatting change

* formatting change

* adding version added line for domain_netbios_name

* Identation fix

* Clarity fixes for descriptions

Changes to description for netbios_domain_name and uniformity changes to other documentation sections (bringing them in line with other sections of the document).

* Fix minor indentation
2018-04-24 15:35:38 +10:00
ed05e46f5c Adds bigip_snmp_community module (#39212)
This module can be used to manage snmp communities on a bigip
2018-04-23 22:32:17 -07:00
3227143dc8 Fixes coding conventions, adds a small feature (#39211)
Fixes some coding conventions and adds allowed_addresses to bigip_snmp_trap.
2018-04-23 22:06:33 -07:00
39e4754fc9 Fixes for convention incompatibilities (#39209)
Minor fixes for the f5 modules to use current conventions
2018-04-23 21:42:06 -07:00
37e114756d Adds bigip_trunk (#39208)
This patch adds a new module for managing trunks on a bigip
2018-04-23 20:37:23 -07:00
3b11def7d0 Add timer policy module (#39206) 2018-04-23 20:30:28 -07:00
629efb6eaa psexec: new module to run commands on a remote Windows host without WinRM (#36723)
* psexec: new module to run commands on a remote Windows host without WinRM

* fix up sanity issue, create test firewall rule for SMB traffic

* Fixed up yaml linting issues, trying to fix on the fly firewall rule

* Added SMB exception to catch when cleaning up PAExec exe

* Don't load profile for Azure hosts when becoming another user

* Fixed up example to use correct option

* Reworded notes section of module docs

* Simplified module options around process integrity levels and the system account
2018-04-24 12:15:15 +10:00
e254121729 Adds minor fixes and features to f5 modules (#39202)
* Add Mac_address parameter to bigip_traffic_group
* Fix docs
* Fix f5 conventions
2018-04-23 18:57:43 -07:00
0c96863ec6 Fix for win_get_url module (#39152) 2018-04-24 11:30:03 +10:00
afef20827b openshift_raw & openshift_scale: fix broken import 2018-04-23 17:57:17 -07:00
5d72f29b1a Remove passing file from import skip list. 2018-04-23 17:55:45 -07:00
b6afe6946d Ansible.ModuleUtils.FileUtil - Add ability to test non file system provider paths (#39200) 2018-04-24 10:06:47 +10:00
19d229a8e0 Fixes F5 conventions and adds features (#39189)
This patch fixes a number of convention changes in F5 modules.
Additionally, it adds some features to bigip vlan and other modules
2018-04-23 15:46:09 -07:00
4aac0f5f18 allow configuring sftp/scp executables (#36648)
* allow configuring sftp/scp executables

fixes #36616


also removed dupe test
2018-04-23 18:36:35 -04:00
e7db3c0eba chkconfig localizes messages, ansible fails to recognise
In the particular case of executin "chkconfig --list NAME", ansible
checks the stderr looking for a particular english message.
This message is different in other languages, Spanish for example
(although it have been corrected in the latests versions)

Fixes #29818
2018-04-23 17:44:36 -04:00
9c9a70b168 Add retry to ec2_metadata_facts query (#38957)
* Add retry to ec2_metadata_facts query

* Fix conditional to allow for 404 errors
2018-04-23 15:58:35 -04:00
e79823191a Add cgroup_memory_recap callback plugin used to profile memory (#38675)
* Add cgroup_memory_recap callback plugin used to profile memory

* Add uuid of task to output
2018-04-23 14:54:36 -05:00
01e7f44e0d fixy typo 2018-04-23 15:46:15 -04:00
fe5e6d74af better handle appending \n on stderr
fixes #39007
2018-04-23 15:46:15 -04:00
becc2a0347 adds index page for roadmaps to support internal links (#39109)
* adds index page for roadmaps to support internal links

* includes only roadmaps index page in TOC
2018-04-23 12:22:44 -07:00
e4dbabbef2 make individual bad paths a warning
still error if none of the paths provided was usable

fixes #39044
2018-04-23 15:17:22 -04:00
0fef3f1b48 avoids not-in-toc errors with :orphan: 2018-04-23 12:14:43 -07:00
d38ae9b6c9 Adds the bigip_data_group module (#39180)
This module can be used to manipulate bigip data groups.
2018-04-23 11:52:57 -07:00
c262dbfd30 Use https for links to ansible.com domains. 2018-04-23 11:33:56 -07:00
0d1e9bfe90 Adding exos_command cli_conf module (#37775)
* Adding exos_command cli_conf module

* fixing documentation, indentation and metadata_version

* removing doc fragmentation and adding required import

* removing unnecessary code and including company name on short_description

* updating BOTMETA.yml with exos module information
2018-04-23 23:23:09 +05:30
2f535a339c azure_rm_storageaccount: fix broken import 2018-04-23 09:04:03 -07:00
b740d68eaa Fixed bug to set hostTypeIndex correctly at the time of netapp_e_host create. (#39148)
Issue link: https://github.com/ansible/ansible/issues/39143

Correct post_body made by replacing host_type with hostType while creating
host.
2018-04-23 11:31:52 -04:00
8faf9837d0 [cloud][aws] PEP8 renaming in EC2 dynamic inventory (#39164) 2018-04-23 11:12:25 -04:00
6eecbf10e6 fix nxos_igmp_interface issues (#38752)
* fix nxos_igmp_interface issues

* shippable fix

* fix oif_prefix and oif_source

* shippable fix

* shippable fix

* shippable fix

* add an example for oif_ps

* review comments

* review comments

* more review comments

* fix typo
2018-04-23 20:38:49 +05:30
412373ce8e Improve ec2_ami tests (#38987)
* Improve ec2_ami tests

Ensure that ec2_ami_image_id fact gets set immediately after AMI
creation so that they get torn down even if tests fail

Use YAML anchor to simplify AWS credential passing

Use aws_connection_info to reduce AWS credential boilerplate

Improve exception handling when updating image attributes

Error messages weren't correctly formatted to show image ids.
2018-04-23 07:54:49 -04:00
176ebfd471 k8s inventory: add pod nodeport (#39107)
Node port field is not populated on K8S pods, and it's certainely the most useful port to use in pod when we need to interact with ansible outside of the cluster
2018-04-23 07:51:33 -04:00
cb547df261 VMware: Add bot metadata about vmware_inventory.py (#39113)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-23 17:17:10 +05:30
f072e6c15a add newer syntax to detached HEAD check (#38879) 2018-04-23 13:40:54 +02:00
80d7e22f5e Fix misuse of 'self' in lib/ansible/module_utils/network/eos/eos.py. … (#39074)
* Fix misuse of 'self' in lib/ansible/module_utils/network/eos/eos.py. Method load_config

* Fix all instances of self.config(self,...
2018-04-23 15:40:34 +05:30
4f36d7965e We need to return virtual_facts after VMWare platform detection (#38237) 2018-04-23 05:43:53 -04:00
ca164749b4 git: clarify key_file param in docs (#39147) 2018-04-23 11:05:37 +02:00
aa9d7cb1f3 Update playbooks_debugger.rst (#39117)
Minor typo correction

+label: docsite_pr
2018-04-23 10:37:40 +02:00
f61172e6c7 vmware: Add portgroup_portkey and portgroup_key (#38958)
* VMware: apply correct value for datacenter in TC

Signed-off-by: Tim Steinbach <tim@nequissimus.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-23 14:04:35 +05:30
7437d6fdc4 cs_ip_address: add a "tags" parameter to ensure idempotency (#39016)
* cs_ip_address: add a "tags" parameter to manage idempotency

* cs_ip_address: add integration tests
2018-04-22 20:13:01 +02:00
9488b0c8b1 Remove unused test files. 2018-04-22 07:11:34 -07:00
b47c04a70e Fixes #38985 (#39070)
Changing interface dictionary while iterating over interface.keys() produced "RuntimeError: dictionary changed size during iteration"
2018-04-22 04:03:31 -04:00
56967497d5 minor accuracy fix
Don't round the parameter 12.04 in the explanatory paragraph unless `version()` rounds the parameter

(cherry picked from commit 5cf544e03e)
2018-04-20 19:14:39 -04:00
7544c59a23 Remove ResponseMetadata key from aws_caller_facts (#39102) 2018-04-20 18:31:35 -04:00
d36537513e [ec2_ami] Add missing parameters while handling botocore Exceptions. Fixes TypeError exception (#39105) 2018-04-20 18:30:10 -04:00
ce796bc34d Clarify the behaviour of file's src parameter with relative paths
Fixes #21401

Also sdd some more tests to validate file state=link creates a symlink
which points to the file we intended.
2018-04-20 14:12:27 -07:00
8eaef34340 Ansible_managed is only available to the template and win_template modules
Update the config docs to note that.

Fixes #37219
2018-04-20 16:07:10 -04:00
bbfd6c6ab1 Internal refs (#39094)
* fixes community refs

* fixes appendix refs

* fixes scenario refs, keeps ACI guide link to devel

* fixes windows refs

* fixes user guide refs

* fixes dev guide refs
2018-04-20 12:17:02 -07:00
c4e298b808 Correct to development_process (#39069) 2018-04-20 12:36:29 -05:00
f332151f59 Fix copy to only follow symlinks for files in the non-recursive case
Revert "**Temporary**"

This reverts commit 28b86b1148.

We don't need this now that copy has been fixed
2018-04-20 10:04:24 -07:00
9e028ab704 Modules to link relatively to docs (#39081)
* Modules to link relatively to docs

* consistency
2018-04-20 17:35:50 +01:00
f428108845 [terraform] Disable input prompts during terraform init/plan/apply (#38842)
Per Hashicorp's [guidelines][1] for automated use of terraform CLI, this PR
adds the `-input=false` option to all the commands executed in the
module. If input is required, this causes a hard failure that will
become a module failure.

[1]: https://www.terraform.io/guides/running-terraform-in-automation.html
2018-04-20 12:28:49 -04:00
eebfa66c2b Fix ios and iosxr terminal prompt regex (#39063)
Fixes #38732

Make matching leading newline for cli prompt
optional as there are cases when returned repsonse
for ios/iosx remote host doesn't have newline before
cli prompt.
2018-04-20 10:20:13 -06:00
afcc9ddf8c Cache task_vars to speed up IncludedFile.process_include_results (#39026) 2018-04-20 11:18:04 -05:00
fd50248463 nios lookup errors out when there are no results #37970 (#39027)
* Update nios.py

* Update nios.py

* Update nios.py

* nios lookup errors out when there are no results #37970  Open	

Indentation failure issue resolved

* Returning empty list instead of None

In case of no results, res will be returned as an empty list instead of None (implementing ganeshrn comment)
2018-04-20 09:14:47 -06:00
fafceb9895 Mark unstable azure_rm_functionapp test. 2018-04-20 07:06:07 -07:00
2e2cfa6232 Update dnsmadeeasy.py (#38731)
<!--- Your description here -->
If you omit the record type on state absent you will get "record_type not yet supported". Although in my experience so far, if you put the record type it still fails to remove the record but it doesn't crash. (#38730)
+label: docsite_pr
2018-04-20 15:42:42 +02:00
ce1040ba4a BOTMETA: fix Sam's github handle (#39071) 2018-04-20 08:57:07 -04:00
e6299298f9 Extend interfaces_file to handle sources-directory (#37809) 2018-04-20 07:01:46 -04:00
74420ecadf Fix bool notation in systemd (#39064) 2018-04-20 06:44:48 -04:00
ebdf6d0fab Add missing > to fix 'edit this document' link (#39067) 2018-04-20 11:31:17 +01:00
3e00d9f573 Merge branch 'devel' of https://github.com/ansible/ansible into devel 2018-04-20 13:53:59 +05:30
aaf2ff629d Fix formatting error in rst plugin template (#38956)
The hyperlink syntax used is wrong and the resulting
rendered documents have broken links.
2018-04-20 13:48:28 +05:30
d030032b47 Extreme Networks SLXOS Config Module (#38607)
* Adding slxos_config module and supporing util functions.

* Adding slxos module_utils load_config test

* Adding slxos_config module tests

* Removing unneeded required false statements from slxos_config module

* Removing version_aded from slxos_config module

* Removing force and save from slxos config module

* Removing save test
2018-04-20 08:52:20 +01:00
fee55b41fe Fix formatting error in rst plugin template (#38956)
The hyperlink syntax used is wrong and the resulting
rendered documents have broken links.
2018-04-20 09:33:51 +02:00
9e8889bb70 Fix more docs errors. (#39051)
* Fix remaining unknown-document docs errors.
* Fix last toc-tree-missing-document docs error.
2018-04-20 00:24:47 -07:00
dbd0272f2e Update proxmox_kvm.py (#39045) 2018-04-20 09:06:53 +02:00
f30698f65d Fix typo in urls.py (#39048) 2018-04-20 09:04:18 +02:00
7e96421132 Handle warnings in docs-build sanity test. (#39043) 2018-04-19 23:09:48 -07:00
62d2df74b0 apt: fix build-dep idempotency (#38999) 2018-04-20 07:57:14 +02:00
4fc5e89e83 Fix docs build warnings. 2018-04-19 17:54:56 -07:00
64dcc7def0 Fixes more rST errors (#39042)
* removes include, avoids duplicate label rST warnings

* reduces literal_block errors on playbooks_filters

* addresses TOC errors

* ref error on modules page

* trying ref for list_of_database_modules
2018-04-19 17:02:48 -07:00
408e29cbd2 Link fixes (#39038)
* fixes links on plugins pages

* fixes links in community pages

* fixes links in user guide

* adds anchors on playbooks pages
2018-04-19 17:02:30 -07:00
7963279fc2 Generate SHA256 signed certificates for WinRM (#36668)
* Generate SHA256 signed certificates

Vulnerability scanners are increasingly reporting SHA-1 signed certificates as a vulnerability on servers. Before this change, -ForceNewSSLCert generates a signature algorithm that openssl shows as sha1WthRSAEncryption for WinRM port 5986. After, this forces certificates to be signed with SHA256, which openssl shows sha256WithRSAEncryption.

Some example SHA-1 deprecations include:
- https://docs.microsoft.com/en-us/security-updates/SecurityAdvisories/2017/4010323
- https://blog.mozilla.org/security/2014/09/23/phasing-out-certificates-with-sha-1-based-signature-algorithms/

Also note that RDP 3389 on Windows 2016 also defaults to a SHA256 certificate.

The specifics were merged from a script mod I found at https://gallery.technet.microsoft.com/scriptcenter/PowerShell-script-to-7a0321b7 intended for Exchange. It also includes a mod to add an alternate DNS listing so the cert contains CN=HOSTNAME plus now also an alternative of the FQDN.

I tested this change on Windows 2008R2, 2012R2, and 2016 Datacenter.

* Keep WinRM cert key length at 4096.

* Remove WinRM cert exportpolicy setting.
2018-04-20 09:01:48 +10:00
5ea1ee47dd Refactor Foreman provider to use simplified img 2018-04-20 00:36:23 +02:00
1664554b4a Unrandomize docker registry selection
stick with quay for now
2018-04-20 00:36:23 +02:00
d5b340cc43 Improve foreman image src selection 2018-04-20 00:36:23 +02:00
87eca24969 Add playbook with foreman tests 2018-04-20 00:36:23 +02:00
fb0487945c Add runme script to foreman inventory tests 2018-04-20 00:36:23 +02:00
d0018848a5 Enable foreman inventory plugin in tests 2018-04-20 00:36:23 +02:00
2608ef535f Add foreman cloud provider 2018-04-20 00:36:23 +02:00
e169da0748 Initialize foreman test suite 2018-04-20 00:36:23 +02:00
11c40bcbda forman as inv plugin
updated with newer methods
fixed ssl name to match ansible convention
more options for host info
added vars_prefix
added comments explaining current flow
reformated commentd out code so pep8 can be happy
enabled caching
2018-04-19 17:07:47 -04:00
7320d29851 Update tree.py
Fix wording (commadn instead of command)
2018-04-19 15:51:06 -04:00
785c660432 Clarify recursive
If recursive is set to yes, the module changes the attributes of the directory recursively even though state: directory is not set.
2018-04-19 12:08:36 -07:00
a81c6668eb File module: correct description of "state" (#36327)
* File module: correct description of "state"

It was probably intended to say "intermediate subdirectories will be created" and not "immediate subdirectories will be created".
2018-04-19 12:04:48 -07:00
af9d6aadf0 [file] Update description of state (#38451)
* [file] Update description of state
2018-04-19 11:52:43 -07:00
6ddc64bc7c Fixes for multiline doc descriotions breaking rst formatting
* strip whitespace to preserve indent level
* Make sure to indent subsequent lines of indentation
2018-04-19 11:37:37 -07:00
ede1d6158a Fix typo(-ish)
The «if err» test always passed after #cf938e99926 changed the earlier
assignment to always set err to "\n" if stderr was empty, and so every
script plugin (e.g., ec2.py) started to always report an empty ERROR.
2018-04-19 22:27:48 +05:30
a1759b02cd add user password lock option to user module (#37962)
* add user password lock option to user module

* fixup! add user password lock option to user module

* add unlock, set no default

* fixup! add unlock, set no default

* fixup! fixup! add unlock, set no default

* add lock password for FreeBSD, netBSD

* fixup! add lock password for FreeBSD, netBSD
2018-04-19 10:07:49 -04:00
268c682a05 VMware: new module : vmware_cluster_facts (#37105)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-19 05:41:04 -04:00
87a07e81a9 Fix interface method change (#38996) 2018-04-19 05:05:39 -04:00
e2aa1155ba [ec2_ami] Ensure name or image_id is provided for state=present (#38972)
Add integration tests for backward compatibility and ensuring name or image_id is provided
2018-04-19 09:28:25 +10:00
cdb79b0e3a Consider parent also when comparing IncludedFile (#37083)
* Consider parent also when comparing IncludedFile

* Add new tests for IncludedFile and convert to pytest
2018-04-18 17:02:14 -05:00
a08459a814 Update info on python support (#38855)
* Update the documentation to list Python 3 as official
* Add some reference targets for inventory variables so we can link to docs
* Add a platform FAQ section
  Populate it with

  * virtualenv info (previously on the python3 support page)
  * BSD (Link to the working with BSD page)
  * Solaris (Document how to work around the non-POSIX shell on some
    Solaris hosts)

  Fixes #21594

* Fix some refs in the release_and_maintenance document

* Fix unindent error in module template

Fix for the module/plugin template unintentionally unindented inside of
a raw block, leading to errors like:

ERROR: docs/docsite/rst/modules/redshift_facts_module.rst:289:0: Explicit markup ends without a blank line; unexpected unindent.

* Make wording for Solaris troubleshooting better.
2018-04-18 13:04:47 -07:00
c1ae1c8251 Fix broken yaml (#38966) 2018-04-18 20:54:14 +01:00
0ebc0b9e5a adds FAQ TOC entry, links & examples to modules (#38706)
* adds FAQ TOC entry, links & examples to modules
* moves link to Notes, corrects examples
2018-04-18 11:41:54 -07:00
aeaf0e358f ovirt: Use id instead of name of Blank template (#38948)
Since Blank template could be renamed we must use it's ID to be sure we
are using the Blank template.
2018-04-18 14:17:11 -04:00
dc09ddfbd5 elb_target_group: use port parameter as default for target port (#38578)
The docs suggest that `port` parameter is the default port upon
which targets listen. As such, a target need only provide a `Port`
key to override the default.
2018-04-18 13:19:54 -04:00
8cdd75a09f Some more fixes for the docs :ref: disambiguation
The big one is that we needed to set plugin_type when we processed the by_support template.

Also added to list_of_CATEGORY_plugins page (which might not be used)
and corrected a place where I did module_name instead of name_module
2018-04-18 10:06:01 -07:00
6b970348b1 [AWS cloudfront_distribution] Update minimum protocol versions (#38644)
As per docs, the current set of values is

```
'SSLv3'|'TLSv1'|'TLSv1_2016'|'TLSv1.1_2016'|'TLSv1.2_2018'
```

Fixes #38642
2018-04-18 13:01:30 -04:00
ce8c336d52 added ref to ansilbe molecule 2018-04-18 12:19:09 -04:00
9faf7b949e Fix places in docs that refer to modules without namespace
We've namespaced all plugin docs.  Change the docs to reflect that
2018-04-18 08:43:34 -07:00
f9d83944ec regex for finding :ref: labels was flawed
The regex to find labels inside of angle brackets was not detecting
anything before so I missed all of those.
* Fixed the regex in find-plugin-refs to take care of that.
* Fixed plugin_formatter to emit namespaced labels for the M() macro.
2018-04-18 08:43:34 -07:00
a833281e22 Add Yarn module (#19026)
* Add yarn module based off of NPM module, adjust syntax for install cmd

* Update author list

* Add Return docbloc

* Remove extra var assignment

* Always return output without emojis, small changes for yarn 0.16.1

* Move import line, add ANSIBLE_METADATA, bump version_added

* Updating module format to meet newest lint requirements. Update options and example docs.

* Bring back RETURN block and main() execution.

* All trailing whitespace removed.

* Remove json try/except.

* Add initial pass at setting up Yarn integration tests.

* Add better handling for latest and removal states. Add tests for upgrading a single package.

* Fix issue where state=latest for installing all packages caused failure.

* Set yarn bin to latest version for tests. Fix sanity tests.

* Switch template task to copy task in yarn integration tests.
2018-04-18 08:19:38 -05:00
af8a20d8a1 ovirt: Support removing unmanaged networks (#38940) 2018-04-18 07:28:02 -04:00
bdd105f740 Handle Duplex parsing on some version of iosxr (#38738)
* Handle Duplex parsing on some version of iosxr

* use re noncapture group for multiple match as suggested by Eric
2018-04-18 13:22:08 +05:30
8173602a34 Add expandvars jinja2 filter (#38805)
* Add expandvars jinja2 filter

* Add docs

* Minor edit
2018-04-18 09:29:19 +02:00
1cc2aeb40a Update apt.py (#37972)
* Update apt.py

Proposing description of "cache_valid_time" for Ansible 2.4 or greater.
If 'cache_valid_time' is set, 'update_cache' is set implicitly.
This means the logic should be reversed.

 label: docsite_pr

* Proposing the description of "cache_valid_time"..

This commit follows the discussion in #37972.

 label: docsite_pr
2018-04-18 08:41:10 +02:00
d684c51815 Update win_certificate_store.py (#38860)
* Update win_certificate_store.py

Improvements to describe the different destination stores.

+label: docsite_pr

* Update win_certificate_store.py

Whole line needs to be quoted -- lingfish YAML fail.
2018-04-18 14:16:31 +10:00
c97e508806 [WIP] disambiguating autogenerated module docs attempted fix of #38439. (#38890)
Disambiguates autogenerated module docs - fixes #38439.
2018-04-17 18:45:07 -07:00
50d151aef2 Updated 'quay.io/ansible/vcenter-test-container' image tag to '1.2.0'
vcsim remains on commit 'dee49fa3694c5aff05e4b340b0686772f65c1fe1'
2018-04-17 17:57:43 -07:00
e401927d67 Restore seboolean and sefcontext tests on RHEL. 2018-04-17 16:34:47 -07:00
77ef4802f0 win_regedit: stabilise tests (#38912) 2018-04-18 08:11:44 +10:00
26312b6557 Remove migrated httptester files.
The httptester has been migrated to:

https://github.com/ansible/http-test-container
2018-04-17 15:03:51 -07:00
3d57f45815 Update httptester docs. 2018-04-17 15:02:56 -07:00
a1b148d190 Fix shebang so sanity tests pass 2018-04-17 15:01:29 -07:00
1f0cc54ec7 fixup style problems in new script 2018-04-17 15:01:29 -07:00
6b1e6b8460 Add a script for finding bare plugin :ref:s
We're porting autogenerated plugin docs so that :ref: targets are
namespaced by plugin type.  To do this effectively, we need to know
where all the :ref: targets which refer to the bare plugin names are in
the rst files.  This script will find those.
2018-04-17 15:01:29 -07:00
92f4065157 Fix typo in windows_faq.rst (#38864)
Fix typo in `python-pip` packet name.
+label: docsite_pr
2018-04-18 07:55:57 +10:00
57f1298074 Restore docker_secret test on RHEL. 2018-04-17 13:56:11 -07:00
35748e5228 Update httptester container reference. 2018-04-17 12:15:07 -07:00
11a5671d68 [cloud] New module: AWS EC2 Elastic IP address facts (#38823) 2018-04-17 15:10:54 -04:00
44d06f8858 [cloud] Add support for updating IAM role with ec2_instance module (#38812)
* [cloud] Add support for updating IAM role with ec2_instance module

* Add test for updating IAM role
2018-04-17 15:02:46 -04:00
4117b2dd29 Fix documentation fragments for docker (#38378) 2018-04-17 08:51:56 -07:00
68e3ff80a7 Error if docker and docker-py are simultaneously (#38884)
* Error if docker and docker-py are simultaneously installed over top of each other. Fixes #36125

* Remove duplicate installed
2018-04-17 11:29:24 -04:00
3b3c72f3e5 Fix use of bytes in cliconf plugins for Python 3 (#37715)
* Remove raw byte-strings from cliconf plugins of supported platforms + edgeos

Remove uses of to_bytes, too

* Update CliConfBase docstring to reflect current position on byte strings
2018-04-17 10:15:21 -04:00
be6628cd3d [docs] Correct misspelled domain in icinga2_host.py (#38867)
<!--- Your description here -->
Just a misspelled link. Updated.
+label: docsite_pr
2018-04-17 10:05:40 -04:00
0b4f92d852 Lambda policy arn (#38863)
* Fix the function_name handling logic for lambda_policy

Switch the logic handling function_names that are ARNs
so that ARNs are correctly handled and detected

* Add tests for lambda_policy function_arn

Ensure that function_arn works.

Needs a reasonable ansible_lambda_role.
2018-04-17 09:53:59 -04:00
4e56dcd01a Update Issue & PR templates to make them clearer
Try and reduce people typing in the comments section
2018-04-17 09:52:37 -04:00
f5cc4acc53 Add changelog entry for grafana base64 port 2018-04-17 06:51:59 -07:00
98fb47b061 Fix deprecated warnings 2018-04-17 06:47:37 -07:00
3664c74cb8 Fix idempotency in apt module (#38858)
* Idempotency fix

Only show a change, if we did indeed update the cache.

* Apply changes from review feedback
2018-04-17 08:33:22 -05:00
a372142434 fix ntp_auth issues (#38824) 2018-04-17 08:25:05 -04:00
3d3781db57 Correct formatting (#38874) 2018-04-17 13:19:04 +01:00
93fbfbe4cf VMware: Check if cluster exists or not (#38517)
This fix adds a check if Datacenter contains cluster but does not
have ESXi server associated with that cluster.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-17 05:28:00 -04:00
efc3f4f824 VMware: handle permission denied while reading facts (#37163)
This fix adds exception handling which is raised when user
does not have correct set of permissions/privileges to read virtual machine
facts especially host system configuration.

Fixes: #37056

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-17 05:18:07 -04:00
3922b6cc93 apt: integration tests for #31577 (#38586) 2018-04-17 10:17:29 +02:00
7850dfa9d9 [fix] issue #30638 - onlyupgrade handling (#31577)
Fixes #30638
2018-04-17 03:49:21 -04:00
44fc3459cf win_pester: move away from public repo to source test files (#38862) 2018-04-17 15:24:54 +10:00
67d561b0c8 Add supported connection in junos module documentation (#38813)
* Add supported connection in junos module documentation

Add supported connection type in junos module doucmentation.

* adds link to platform docs

* makes recommended connection a code snippet

* does this fix banner and command?

* does this fix the rest of the errors?
2018-04-17 10:27:29 +05:30
8eb94ccbd5 Add support for dzdo flags Fixes #38766 2018-04-16 23:28:51 -04:00
f1c16438c1 win_updates: fix when failed is not present in output (#38856) 2018-04-17 10:45:53 +10:00
27def6c5dc Remove vcenter-simulator container files.
The simulator has moved to its own repository:

https://github.com/ansible/vcenter-test-container
2018-04-16 16:47:32 -07:00
3b7f5aef07 name cron 2018-04-16 19:02:14 -04:00
135ec86eb5 fix exception on lookup ignore error
no log, so only_log ...
2018-04-16 18:04:52 -04:00
0ea7329553 Fix zabbix_host for Zabbix Server versions < 3.0 (#38665)
The tls_* parameters are not present in Zabbix Server versions prior to
3.0. Thus the API response does not contain these keys and the
zabbix_host module failed. This commit adds checks if the parameters are
present in the API response and otherwise just completely ignores these
parameters. The documentation already states that they are not supported
for Zabbix Server versions below 3.0.
2018-04-16 17:57:57 -04:00
354aa8d602 Skip self._parent on dynamic, defer to grandparent for attr lookup (#38827)
* Skip self._parent on dynamic, defer to grandparent for attr lookup

* Revert _inheritable

* Add tests for include inheritance from static blocks

Fixes #38037 #36194
2018-04-16 16:46:47 -05:00
1d5c933ecf Use new vcenter simulator container location. 2018-04-16 14:25:13 -07:00
068b9ac523 keep track of original inventory hostname in play context (#38818)
this change further enables the ansible-vcr project to collect fixtures per host in
situations where the host context is totally lost due to delegation.

* Keep some original pre-delegate values in connection options
2018-04-16 17:16:57 -04:00
694d6b339c Set memory-swap to memory (#38836) 2018-04-16 15:49:12 -05:00
265d838ec9 fix displaying group vars in graph 2018-04-16 15:24:31 -04:00
5828023e54 bool 2018-04-16 15:22:44 -04:00
1d58585945 minor fixes, also handle 'values' passed to dscl 2018-04-16 15:22:44 -04:00
790a117b21 added support for hidden users on macOS 2018-04-16 15:22:44 -04:00
a1c3cd261c Too much mail to keep up with vmware_guest, sorry 2018-04-16 21:10:23 +02:00
cd235e9eb0 BELOW THIS COMMENT 2018-04-16 13:45:22 -04:00
f474195a3b Attempt 4: Prevent reparenting a block with itself (#38747)
* More concisely reparent, ensuring we don't go too shallow or too deep in this process. Fixes #38357

* More explicit reparenting, with a short circuit for a common case

* We need new_block to have a parent, otherwise we lose context with this approach

* Remove duplicate parent assignment

* Change callers of Block.copy to not use exclude_parent=True, when including the parent, exclude tasks
2018-04-16 12:33:08 -05:00
d2ce1d3c26 Revert "Work-around for get-pip.py install failure."
This reverts commit fa466be33d.
2018-04-16 10:08:10 -07:00
1d972f519c Upgrade PYPI badge to point to new Warehouse site
It should become default quite soon:
https://github.com/pypa/warehouse/milestone/1
2018-04-16 17:16:34 +02:00
8c49c867d2 ovirt_host_networks: Fix removing of network attachments (#38816) 2018-04-16 10:54:19 -04:00
bdbb89378f centralize doc/config plugin lists (#38775)
* centralize doc/config plugin lists

also update list for generation in docsite
added note to ensure they are in sync

* updated shell page to list plugins

added some more docs hinting at plugins being configurable

* fix edit link for plugins
2018-04-16 09:29:49 -04:00
a30befa609 Remove duplicated "instead" word (#38800)
* Remove duplicated "instead" word

* Actually fix the message
2018-04-16 09:23:43 -04:00
3c6a362921 playbooks_async.rst: correct typo 2018-04-16 09:03:39 -04:00
40b7a63d1a Add docs to AnsibleAWSModule.client retry settings (#38689) 2018-04-16 08:48:10 -04:00
ae7e391dab Minor fixes in terraform module (#38438)
This fix adds following -
* Check for None or blank value in project_path
* Make terraform binary path as required

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-16 08:43:13 -04:00
9ebad79f40 influxdb: Add condition for retries argument (#38441)
'retries' argument was added to InfluxDBClient in version 4.1.0,
versions lower than this fails if retries are specified.
This fix adds a conditional to check if version is greater than equal to
4.1.0 and depending upon that adds 'retries' option.

Fixes: #38204

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-15 22:05:51 -04:00
1ff5e975d9 yum: docs: name is not required (#38758) 2018-04-16 07:15:57 +05:30
fa466be33d Work-around for get-pip.py install failure. 2018-04-14 19:05:28 -07:00
5bf5f25115 Temporarily disable sefcontext test on RHEL. 2018-04-14 17:35:17 -07:00
0f13333615 Temporarily disable seboolean test on RHEL. 2018-04-14 16:24:35 -07:00
74f7b8e81c Temporarily disable docker_secret test on RHEL.
Test does not pass on RHEL 7.4 with pip 10 installed.
2018-04-14 13:10:15 -07:00
eb72f2d1f3 Mark rabbitmq_user test unstable. 2018-04-14 13:05:21 -07:00
cacc3c893b Disable fortios_* integration tests.
These tests require pyfg which depends on pip internals that are
no longer available under pip 10.
2018-04-14 13:02:00 -07:00
f2b65fc5fe Fix documentation for aws_ssm and aws_ssm_parameter_store (#38352)
Fix typos aws ssm vs aws_ssm and quotes
2018-04-14 13:29:47 +10:00
b4d235ca8d minor fixes 2018-04-13 18:50:42 -04:00
c5b3a5edbe Add new Pure Storage module to discover facts for FlashArray (#37263) 2018-04-13 17:22:30 -05:00
a00abcb003 [terraform] Fixed typo in preflight_checks (#38740)
The function was incorrectly reporting project path when it failed to find binary.
2018-04-13 16:32:41 -04:00
636e705260 fix user module error when generating ssh keys w/o a home (#29055)
* Fixes https://github.com/ansible/ansible/issues/29028

* raise Exception when no home directory
2018-04-13 16:22:53 -04:00
c1e4ef39cb fix of some problems with user modification with skeleton informations under FreeBSD (#34694)
* respect skeleton argument in usermod mode for FreeBSD

* use FreeBSD's own (more sophisticated) home creation function rather than ansible's create_home(), which does not handle skeleton files correctly for FreeBSD
2018-04-13 16:22:17 -04:00
d512bed495 fix bug in modules/system/user.py (#37552)
for freebsd tool "pw" use date not days in "modify_user"
2018-04-13 16:21:22 -04:00
d639d5dc96 Fix typo (#38652)
Typo
+label: docsite_pr
2018-04-13 14:15:26 -04:00
9b139baacb VMware: Set default network type as 'dhcp' (#38518)
If user does not specify any network type then set network type
to dhcp. There are additional checks around 'ip', 'netmask' and
'type' in network spec.

Fixes: #38466

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-13 23:21:39 +05:30
53a3b8b602 [cloud] Use correct string types for comparisons in ec2_instance 2018-04-13 10:29:53 -04:00
2367130ba3 VMware: correct documentation for datacenter (#38718)
This fixes documentation related to datacenter in vmware_guest_find
module.

Fixes: #38290

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-13 18:34:45 +05:30
bed5f7317d Remove boolean check for underscore in IAM role (#38664)
Underscore is a valid character in an IAM role, per the docs https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html
2018-04-13 08:46:26 -04:00
ed25b56772 Pattern to catch string post to ERROR nxos terminal plugin (#37237)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-04-13 06:55:49 -04:00
1d975bdc93 fix nxos_ntp_options (#38695) 2018-04-13 06:17:32 -04:00
efa7ebb8a5 ovirt_disks: Fix fail condition for LUN disk (#38726)
Fixes: https://github.com/ansible/ansible/issues/38661
2018-04-13 05:54:18 -04:00
8f5320435f Use correct esxi host variable in vmware_cfg_backup (#38721)
Fixed bug where hostname could not be found and minor documentation changes.
2018-04-13 14:21:37 +05:30
88662d0c56 Fix in eos get_config cliconf api (#38682)
If format is passed as None to get_config api, wrong command is
genereted ie. `show running-configuration | None | section interface`.
Add format type in command only if format value is either not `text`
or  `None`.
2018-04-13 13:20:23 +05:30
6de49f084c doc for _config backup argument (#38650) 2018-04-13 12:48:49 +05:30
ab52d84151 Mark win_pester test as unstable. 2018-04-12 22:23:45 -07:00
26f2da3874 Mark unstable integration tests. 2018-04-12 21:41:35 -07:00
521ea56e77 Add details to see decrypted vault value (#37341)
* Improves ansible-vault section of network getting started
2018-04-12 19:52:34 -05:00
25523666ce Modules that have a link to their own deprecated section need to use a different link syntax (#38697)
The :ref: syntax is for linking to targets which are defined for the
whole document tree.  `link`_ is for linking to targets which are inside
of the document.  We want the latter for deprecated sections because
otherwise we'd have to create namespaced link targets for them.

Also fix expansion of version a deprecated module will be removed in
2018-04-12 17:24:14 -07:00
8a223009ca Improve handling of integration test aliases. (#38698)
* Include change classification data in metadata.
* Add support for disabled tests.
* Add support for unstable tests.
* Add support for unsupported tests.
* Overhaul integration aliases sanity test.
* Update Shippable scripts to handle unstable tests.
* Mark unstable Azure tests.
* Mark unstable Windows tests.
* Mark disabled tests.
2018-04-12 16:15:28 -07:00
26fa3adeab Add docs-build sanity test. 2018-04-12 15:56:49 -07:00
14cdf3b03c Suppress a UserWarning about unknown dist option 2018-04-12 23:53:52 +02:00
8912b43051 Refactor setup.py helper code 2018-04-12 23:53:52 +02:00
922e7039dc Shield setup module from accidental setup exec
This might happen when third-parties like analizers import this
module for testing purposes.
2018-04-12 23:53:52 +02:00
75092c9f29 Update python requirements in distribution meta
This has been discussed during #38413 review, but got missed.
2018-04-12 23:53:52 +02:00
a173cf51e8 Add a list or extra URLs to distribution metadata
This should enable Warehouse PYPI implementation pypa/warehouse#3604
to pull data from GitHub and show it on the project page.
2018-04-12 23:53:52 +02:00
3dee0b67e8 Fix test aliases. 2018-04-12 11:08:15 -07:00
f1cd254265 nmcli: change default value of autoconnect (#38676)
There was discrepancy between documentation and actual code.

Fixes: #38671

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-12 12:10:40 -04:00
c0243a8a31 fixed documentation to include esxi host (#38668) 2018-04-12 10:18:04 -04:00
cdb064289b Fixing minor typo (#38662)
[...] the grafana_api_key only belong to one organisation [...] -> [...] the grafana_api_key only belongs to one organisation [...]
2018-04-12 10:12:35 -04:00
9f3491d035 Examples: Edit mistake (#38657) 2018-04-12 10:04:32 -04:00
d303c0706c Make the foreman callback more defensive (#36527)
* Foreman: Make the foreman callback more defensive

This ensures the ssl_verify attribute is always set. It also handles
None in _disable_plugin.

* Foreman: Handle ints in verify_certs

The default value for verify_certs is 1 which is an int. That has no
lower() function. By casting it to a str we can handle it later in
_ssl_verify().

* Foreman: Clean up coding style

* Foreman: Use get_option in favor of _plugin_options
2018-04-12 09:58:57 -04:00
db80504839 firewalld: fix AttributeError (#38442)
Error was:
  File "/tmp/ansible_qY_BMb/ansible_module_firewalld.py", line 703, in <module>
    main()
  File "/tmp/ansible_qY_BMb/ansible_module_firewalld.py", line 548, in main
    module.fail(msg='firewall is not currently running, unable to perform immediate actions without a running firewall daemon')
AttributeError: 'AnsibleModule' object has no attribute 'fail'
2018-04-12 08:43:00 -05:00
34260cb4e6 Ignore .pytest_cache (#38401) 2018-04-12 09:41:57 -04:00
a4046d3424 better error when wrong type passed to import_play (#36592)
fixes #36576
2018-04-12 09:37:04 -04:00
d78da403b6 allow user control of lookup error behaviour (#35932)
* allow user control of lookup error behaviour

this does not affect undefined vars, only other exceptions raised by a lookup

i.e lookup('file' ..) not finding a file
2018-04-12 09:35:00 -04:00
9de9633cac [GCP] New module GCP DNS Resource Record Set (#35920) 2018-04-12 07:31:43 -04:00
2fc3ac3516 win_setup: fix for machine sid to work in domains with lots of users (#38646) 2018-04-12 06:01:16 -04:00
b9d97d85f6 Add options field to bond structure. (#38512)
This change allows users to pass bond options
alongside bond mode, in order to allow greater
flexibility for bond creation. Previously,
bond options were derived from bond mode, e.g.
"miimon" was set to 100 for mode 3 (load-balance),
however a user may want to use 200.
2018-04-12 04:09:50 -04:00
91da1653e0 Added sumologic callback plugin (#38297)
* Added sumologic callback plugin

* Better comments
2018-04-12 00:34:48 -04:00
4ba29c8bf1 Use a temp directory that is more likely to exist (#38645)
`env:SystemDrive\temp` does not necessarily exist

`env:temp` is much more likely to exist. Use that
2018-04-12 14:16:18 +10:00
6d830166e9 Minor typo fix (#38589) 2018-04-12 13:47:48 +10:00
3b74dc2f6e Improve aws_ec2 plugin documentation (#37689)
* Better formatting
* More examples
2018-04-11 23:01:18 -04:00
c9fb054bc8 Fix get_cloud_platforms config usage. 2018-04-11 17:08:54 -07:00
b345b79dcd aws_ec2 inventory: add support for tag values as hostnames (#35880) 2018-04-11 19:34:06 -04:00
7376a9b946 fix with_<lookup> spelling (#38584)
trivial change ;)

+label: docsite_pr
2018-04-11 15:37:33 -07:00
da6d2b5f43 corrects Junos network_cli example & variables (#38601)
* corrects Junos network_cli example & variables

* vdacosta feedback, thanks
2018-04-11 15:36:40 -07:00
ea99cf3231 inaugural Network FAQ (#38359) 2018-04-11 15:35:42 -07:00
90a7b3bef3 Change version added to 2.5.1 (#38604)
A bugfix backported to 2.5 also contained the new toggle option. The release
manager approved backporting this added feature to the dot release, so updating
devel to accurately reflect when the fetaure was added.
2018-04-11 17:52:27 -04:00
e5776a129a Add include_import tests for many top level include_tasks (#36531)
* Add include_import tests for many top level include_tasks

Rename a few test playbooks to make more sense

* Use fewer include_tasks due to memory limits in CI
2018-04-11 17:08:33 -04:00
98a6827be0 When I rebased the README as rst PR, I missed a few changes. 2018-04-11 13:26:15 -07:00
12431d23cd VMware: Support for multiple jinja filters in vmware_inventory (#38173)
This fix adds support for multiple jinja filters for groupby_patterns
and host_filters.

Fixes: #37961

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-11 15:50:35 -04:00
5297eac46d playbooks_variables.rst: fix facts code-block (#38520) 2018-04-11 20:46:27 +02:00
f1e41cbb36 playbooks_intro.rst: remove duplicite playbook (#38521) 2018-04-11 20:45:59 +02:00
19a5f96a1a README.md was renamed. Fix deb build reference to the README 2018-04-11 11:22:50 -07:00
6ef389617a check types for template parameters (#37257)
this should give a better error than when failing on random methods when parameters where the wrong type.
2018-04-11 14:00:18 -04:00
8a0c192c36 Fixes new created lb doesn't return anything (#38560) 2018-04-11 13:22:27 -04:00
cc1c7c63db ensure 'home' translations (#36755)
* ensure 'home' translations

* removed slash as it created issues on diff plats
2018-04-11 11:53:05 -04:00
d9430b79f9 Ensure non ansilbe exceptions keep tracebacks (#37523) 2018-04-11 11:52:12 -04:00
ed42331105 fix nxos_igmp_snooping issues (#38566)
* fix nxos_igmp_snooping issue

* shippable error fix
2018-04-11 10:14:27 -04:00
0d79268a6d issue:38321 fix onyx_config module failed while using python = 3.5 (#38343) 2018-04-11 08:01:54 -06:00
cd280859dd Add OpenNebula maintainers, update yum maintainers (#38590) 2018-04-11 14:59:21 +01:00
d9b3b3f745 Add module to configure Pure Storage FlashArray Directory Services (#37350) 2018-04-11 08:17:25 -05:00
5b1a8ee1e8 Adding slx_command module and supporting module_utils. (#38235)
* Adding slx_command module and supporting module_utils.

This commit adds the slx_command module and tests as well as the
required slxos module_utils.

* Update copyright in header

* Adding missing module init

* Cleaning up shebangs/licensing.

* Incorporating feedback

Removing reference to `waitfor` alias in `slxos_command` module.
Adding `Extreme Networks` to `short_description` of `slxos_command` module.

* Adding cliconf tests

* Fixing 3.X tests

* Adding docstrings to test methods for slxos cliconf tests

* Adding slxos terminal tests

* Adding slxos module_utils tests

* Adding Extreme Networks team members to BOTMETA.yml
2018-04-11 12:59:34 +01:00
8f6ee2a5ca Added empty default for name parameter (#38514)
* Added empty default
Fix for issue https://github.com/ansible/ansible/issues/38482
2018-04-11 17:21:06 +10:00
16c2d3717e Add junos connection type check (#38527)
junos_netconf works only with connection=netconf
Add check to report appropriate error if any other
connection type is used.
2018-04-11 12:07:56 +05:30
53d3e7e306 Add troubleshooting URL for persistent socket path related issue (#38542)
* Add troubleshooting URL for persistent socket path related issue

socket path timeout related error messages are not displayed on the
console as the ansible-connection process does not have access to it.
Until this is fixed need to point to troubleshooting URL so that
users can take corrective actions.

* Fix CI issue
2018-04-11 11:23:23 +05:30
72b0ed8cb4 fix handling of some exceptions for mail plugin
redid the flow to simplify and dedupe code, also now we capture extra exceptions previouslly  causing traceback
see https://groups.google.com/forum/?#!msg/ansible-project/qhalnkYZMfI/93n8hlEpBAAJ
2018-04-10 22:17:33 -04:00
886c4edfb9 avoid caching invetnory sources in loader (#38242)
* fix inventory plugin source caching

 - avoid caching invetnory sources in loader in base
 - same fix for yaml plugin
 - idem for 'auto' plugin

fixes #37162

* fix mock dataloader func sig
2018-04-10 22:15:52 -04:00
399cba1c84 dict2items filter 2018-04-10 18:46:30 -04:00
2e852fcd6d return empty host list when pattern is empty
fixes #37894
2018-04-10 18:43:29 -04:00
fda9312379 actual error reporting on failed galaxy clone (#36788)
actual error reprting on failed galaxy clone

also allow debugging to see stdout/stderr from command
handle output for all commands on error
also use std temp dir instead of random
2018-04-10 17:26:17 -04:00
32cf79c044 show changed in online 2018-04-10 17:25:24 -04:00
5a333859fe allow for parameterized string functions
now also allow for ending parens

from following, 1, 2, 4 and 5 match, rest are ignored.

	{doc | to_nice_json}}
	{{(doc | to_nice_json)}}
	{{doc | to_nice_json| from_json}}
	{{doc | to_nice_json()}}
	{{doc | to_nice_json(indent=2)}}
	{{doc | to_nice_json(indent=2) | from_json()}}
	{{doc | to_nice_json(indent=2) | from_json}}

fixes #37579
2018-04-10 17:24:27 -04:00
0c2e7fd841 made missing cli tools non fatal (#37194)
* made missing cli tools non fatal

* remove bare exceptions

these shoudl not be there as they can prevent 'wanted' exits
2018-04-10 17:23:29 -04:00
42912e1ac8 minimize loading files/plugins
avoids some repetitive loading
 - read config file only once
 - now cache the ini parser per file
 - optimize shell plugin loading

tried to 'optimize' vars_plugins loading but it creates issues with precedence,
probalby due to iterator not being reset, will look into it in subsequent fix/PR
2018-04-10 17:22:31 -04:00
34c002c771 give hint to users when a file is not found 2018-04-10 17:19:03 -04:00
eef70d028f restrore showing stderr on script success (#38177)
* restrore showing stderr on script success

accidentally removed during transition to plugin, with toggle for those
who prefer the quiet way

fixes #33776

* stderr display if no other errors capture first
* fixed issue with error encoding
2018-04-10 17:16:12 -04:00
1850bb752f ignore version when deciding callback loading (#38281)
* ignore version when deciding callback loading

The code already defaulted to load the callback if the properties are not present
there was no need for us to also check the version

fixes #38270

* fix error msg on set optoins to use correct name
2018-04-10 17:15:28 -04:00
95ce00ff00 Allow loading dirs from role defaults/vars (#36357)
This commit moves code to look for vars files/dirs to a common place and
uses it for loading role defaults/vars. This allows things such as
'defaults/main' or 'vars/main' being a directory in a role, allowing
splitting of defaults/vars into multiple files. This commit also fixes
the role loading unit tests for py3 when bytestrings are used for paths
instead of utf8 strings.

This fixes #14248 and #11639.
2018-04-10 17:14:38 -04:00
cc250156c4 Update Pure Storage FlashArray hostgroup module (#38503)
Allow for deletion and additon of hosts and volumes to a
volume group.
2018-04-10 16:06:51 -05:00
d4e5e385ca [docs][cloud] Include volume_size in ec2 module docs 2018-04-10 16:57:04 -04:00
f97f81ec2e Update Pure Storage FA Host module to allow for mixed protocol hosts (#37078) 2018-04-10 15:50:43 -05:00
62957c9fc0 Support network action plugin classification. 2018-04-10 13:43:41 -07:00
c679186f17 better handling of diff key types in compose
also made separator configurable
fixed some exception types
better error msgs
2018-04-10 15:15:52 -04:00
38491fe93d Explicitly exclude W504 (#38539)
pycodestyle 2.4 has changed the default for W504
2018-04-10 20:07:57 +01:00
0f9a66a32c urpmi module improvements (#37596)
* fix urpmi.update path #37432

* improve urpmi

* use get_bin_path rather than hard coding the path

* fix pep8 issue

* avoid using global

* - `RPM_PATH`, `URPMIUPDATE_PATH`, `URPME_PATH`) aren't constants, they should be lowercase rather than uppercase
- shorten too long lines
- remove unused import

* revert removed imports

* use lowercase rather than uppercase

* update doc

* update doc

* update doc after sanity check
2018-04-10 13:10:56 -04:00
2a55c64da9 Add docs badge to README 2018-04-10 10:01:01 -07:00
0507c907a9 get_url should accept headers as a dict, instead of only a complicated string (#35470)
* get_url should accept headers as a dict, instead of only a complicated string

* update headers description text

* Add headers string and dict tests for get_url

* Add intg test for string header format parsing error

* Adjust deprecation version ahead 1 release, add the version dict format was added in to description
2018-04-10 11:50:39 -05:00
89d6c36584 Optimize file handling in the find module (#38192)
* Optimize file handling

Use the best practice of opening and doing operations on an opened file

Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>

* Fix docstring to Sphinx type

- update the docstrings to Sphinx type, as suggested by Toshio
- Move the pattern object assignment outside the context manager, as
  suggested by Matt

Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2018-04-10 09:01:44 -07:00
450cfa8776 Handle duplicate headers in the uri module (#33792)
* Handle duplicate headers, and make it easier for users to use cookies, by providing a pre-built string

* Ensure proper cookie ordering, make key plural

* Add note about cookie sort order

* Add tests for duplicate headers and cookies_string

* Extend tests, normalize headers between py2 and py3

* Add some notes in test code

* Don't use AttributeError, use six.PY3. Use better names.
2018-04-10 09:26:51 -05:00
f1082af73f Error if a module is found to shadow a reserved keyword (#34649)
* Error if a module is found to shadow a reserved keyword

* Add test for shadowed module

* Bring in functools.wraps for the decorator

* Drop the decorator, make _find_plugin the real function, find_plugin now holds the shadow logic

* Swap order of functions for bottom to top execution order

* Only error for modules

* Add test for loading a lookup plugin that shadows a keyword
2018-04-10 09:26:27 -05:00
d97952dbf4 apt: allow for --allow-unauthenticated in upgrade (#38381)
* apt: allow for --allow-unauthenticated in upgrade

* Style fix

* Another style fix

* Add trailing comma
2018-04-10 15:37:41 +02:00
56cd8f2d48 Retry creation of tags when DHCP optionset is not found (#38528) 2018-04-10 09:08:41 -04:00
361437b042 fix nxos_igmp issues (#38496) 2018-04-10 00:05:58 -04:00
dabe5e6d07 fix nxos_hsrp issues (#38410)
* fix nxos_hsrp issues

* shippable fix

* add examples for md5 auth
2018-04-09 23:54:05 -04:00
c38617a736 fix for when status codes are provided as a comma separated list (#38080)
* fix for when status codes are provided as an array of strings

* convert status codes to int, additional tests
2018-04-10 12:25:08 +10:00
85d5901b31 Fix broken links in module documentation (#38469)
* Reflect updated names of the aws_batch_job modules
* Remove mention of `lambda_invoke` module which has yet to make it to
  Ansible.
* Update broken rst link in win_dsc module
2018-04-10 11:20:14 +10:00
22f2388ef1 winrm: added flag handler for kinit to request forwardable ticket when delegation is set (#37815) 2018-04-09 18:00:19 -07:00
f25603d101 bring changelog/frgaments to devel
* 2.6.0a1 catchup is empty on purpose, will fill in with all notable dev commits as we get closer
2018-04-09 17:56:55 -07:00
0d374f28d2 win_exec_wrapper: fix tests after recent change (#38504) 2018-04-09 17:48:14 -07:00
6454aedb44 Reinstate code of conduct to the community TOC; add links to code of conduct to a few conspicuous spots in the community guide. (#38501) 2018-04-09 16:16:45 -07:00
0fe778105b Fix sporadic errors in ec2_vpc_subnet integration tests (#38473) 2018-04-09 17:03:36 -04:00
ccc56e138a win_updates: handle if module failed to run (#38363) 2018-04-10 05:25:25 +10:00
988808c066 README.rst should always exist so no need to set a default value 2018-04-09 11:59:55 -07:00
6300e71903 Fix authot github account 2018-04-09 14:31:31 -04:00
283ccaa252 lastpass filter: add example 2018-04-09 14:20:21 -04:00
6332beef65 Add unit tests for ansible.module_utils.urls (#38059)
* Start of tests for ansible.module_utils.urls

* Start adding file for generic functions throughout urls

* Add tests for maybe_add_ssl_handler

* Remove commented out line

* Improve coverage of maybe_add_ssl_handler, test basic_auth_header

* Start tests for open_url

* pep8 and ignore urlopen in test_url_open.py tests

* Extend auth tests, add test for validate_certs=False

* Finish tests for open_url

* Add tests for fetch_url

* Add fetch_url tests to replace-urlopen ignore

* dummy instead of _

* Add BadStatusLine test

* Reorganize/rename tests

* Add tests for RedirectHandlerFactory

* Add POST test to confirm behavior is to convert to GET

* Update tests to handle recent changes to RedirectHandlerFactory

* Special test, just to confirm that aliasing http_error_308 to http_error_307 does not cause issues with urllib2 type redirects
2018-04-09 10:17:43 -05:00
eccccfe77f Initial commit for Scaleway Compute (#38285) 2018-04-09 09:00:48 -05:00
72120c3cac Grafana datasource module : tls_ca_cert or tls_skip_verify options (#36945)
* Allow to set tls_ca_cert or skip verify for grafana datasources

* version_added in documentation for new options tls_skip_verify

* Added default value for tls_skip_verify option in doc

* Fixed author git account

* Updated author
2018-04-09 14:41:09 +01:00
546a406a14 [docs] Add examples to ec2_instance docs (#38479) 2018-04-09 09:14:42 -04:00
e10e0d42d8 Fix junos transport check (#38460)
For connection=local check only if the transport value in
provider is cli and the respective module support cli
transport. If not report back appropriate error message.
2018-04-09 16:22:09 +05:30
061ecac3b5 Update playbooks_loops.rst (#38440)
Missing parentheses
+label: docsite_pr
2018-04-09 12:49:34 +02:00
1e0df01980 Small typos in docs (#38371)
* Small typos in docs

* Use same wording as in porting_guide_2.5.rst
2018-04-09 12:49:10 +02:00
bb6f90ff6f apt: properly set changed for autoremove/autoclean (#38329) 2018-04-09 11:10:42 +02:00
81a8c42115 Give hint when lookup fails on one element list (#38406)
* Give hint when lookup fails on one element list

* Mention wantlist first

* Fix pep8...
2018-04-09 11:08:04 +02:00
99497ce54c openssl_certificate: Handle dump() in check_mode (#38386)
Currently, when ones run the module in check_mode it tries to retrieve
values from the actual certificate generated in the generate() function.

Since in check_mode we call dump() without calling generate(), self.cert
is None, leading to self.cert.get_notBefore(), self.cert.get_notAfter()
and self.cert.get_serial_number() raising an error.

>  NoneType' object has no attribute 'get_notBefore'

The solution is to have two way to handle dump() method, whether its run
in check_mode=True or check_mode=False leading to different way the
information is retrieved.
2018-04-09 09:26:02 +01:00
57738a3ab4 New module: digital_ocean_certificate_facts (#36731)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-09 12:57:11 +05:30
8bc7af2e34 Minor typo in installation guide (#38452)
Change subsription-manger to subscription-manager

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-08 14:41:59 -07:00
7f99876274 remove duplicate declaration (#38449)
result['uid'] is already defined at line 2213 in user.py module.
2018-04-08 22:24:32 +05:30
0c5f03d3f4 manageiq_provider: don't send top-level null fields on creation (#38448)
* manageiq_provider: method docstrings fixes

* manageiq_provider: refactoring step towards DRY

`resource` is now same in `edit_provider()` and `create_provider()`,
to be extracted to main later.

* manageiq_provider: Fix creation of openshift provider

Fixes #38331.
Sending `api_version` to openshift provider would cause error:
"OpenShift api_version cannot be modified"
due to https://github.com/ManageIQ/manageiq-providers-kubernetes/blob/gaprindashvili-2/app/models/manageiq/providers/kubernetes/container_manager.rb#L37

In `edit_provider` we `delete_nulls()` on the whole data being sent
so `api_version` was omitted if not specified.
In `create_provider()` we only did it on endpoints list so `api_version`
was always sent - now doing on whole data.
2018-04-08 12:36:51 -04:00
ffee906c54 lvg: don't fail if an unknown physical device is encountered (#38446)
Physical devices are listed using 'pvs' command. Then, for
'/dev/dm-*' devices 'dmsetup' command is used to find pv_name.

An error occurs when 'pvs' command list an unknown device:

$ pvs --noheadings -o pv_name,vg_name --separator ';'
  /dev/dm-0;vg_var
  /dev/mapper/sdb3_backups;vg_data_backups
$ dmsetup info -C --noheadings -o name /dev/dm-0
Device dm-0 not found

Then the module fails:
{
  "changed": false,
  "err": "Device dm-0 not found\nCommand failed\n",
  "msg": "Failed executing dmsetup command.",
  "rc": 1
}

This failure can be avoided when the unknown device isn't used in
module parameter 'pvs'.
2018-04-08 05:04:28 -04:00
d1d15dd025 Mobile CSS update - adds scrolling inertia (#38443) 2018-04-07 16:37:54 -07:00
a8953fcac4 Add documentation on dict2items (#38375)
dict2items is worth mentioning in the filters and loops pages
(the latter as it's useful to replace `with_dict`)

Update some nearby broken links
2018-04-07 02:13:19 -07:00
785964ea97 Tweaks docs CSS to fix minor issue with main content page display cutting off at the bottom. (#38432) 2018-04-06 20:34:31 -07:00
42d15671d0 clarifying docs with first_found (#36951)
better examlpes as this was never really a task loop, but contained inside the lookup itself
2018-04-06 17:19:15 -04:00
e05cad785e Fall back to ValueError if JSONDecodeError is not available (#38276) 2018-04-06 16:28:39 -04:00
7afa34ae8a Convert README from Markdown to ReStructured Text and use as longdesc (#22330)
* Convert README from Markdown to ReStructured Text and use as longdesc

Discussion in #13758 led to deciding to switch README to rst and having
setup.py consume it as the long_description.

* Fix long string in setup.py for pep8 compliance

* Open README.rst as read-only

* Update usages of root README.md to README.rst

Unsure about the file ./packaging/debian/docs as it (only) contains the
text README.md. I believe it's referencing ./packaging/debian/README.md
but maybe someone who knows debian packaging could review it?

* Pick up fixes that had been merged into README.md after the initial conversion to rst
2018-04-06 12:38:40 -07:00
f1b63f435e The ssh change note has been removed
Since the note was about 2.0 versus 1.x, this has been removed.  The
file implementing it is gone so we need to stop referencing it.
2018-04-06 12:04:19 -07:00
bab947d854 Migrate s3_bucket module to boto3 (#37189) 2018-04-06 14:33:58 -04:00
9bb1ee30bf Required changes to support redirects on HTTP 307/308 (#36809)
* Required changes to support redirects on HTTP 307/308

This ensures HTTP 307 and 308 will redirect the request to the new
location without modification.

* Fix the unused newheaders reference

* Be more compliant

* Add integration tests for follow_redirects=all

* Improve other tests for new behaviour

* Make follow_redirects values more strict
2018-04-06 13:17:14 -05:00
3c996d0f74 make aef test more predictable
revert "Disable any_errors_fatal test."
This reverts commit 56189cc312.

fixes #38407
2018-04-06 09:48:30 -07:00
56189cc312 Disable any_errors_fatal test. 2018-04-06 08:16:15 -07:00
712d30f46c Add eos_smoke integration tests (#36957)
* added eos_smoke tests

* removed left over file

* added note to uncomment broken eapi test when #36919 is fixed

* uncommented fixed test, added unbecome test

* skip become tests when connection=local
2018-04-06 08:16:07 -04:00
49aac5f8c7 Added module win_pester and relatives integration tests (#37343)
* Added module win_pester and relatives integration tests

* Corrected issues as stated by ansible-test

* Added defaults variable in integration tests

* Added task to install Pester if needed in the integration test

* Corrected error in win_psmodule task

* Added Pester installation with Chocolatey when Powershell version < 5

* Get facts...

* Disabled invoke-pester output

* Added pester_result type

* Added jhawkesworth changes proposal

* Corrected documentation linting

* Corrected linting

* Added dagwieers recommendations

* Added dagwieers recommendations

* Corrected linting errors and task error in integration test

* Corrected error in integration test

* Added dagwieers recommendations

* Corrected requirements in the DOCUMENTATION block
2018-04-06 11:48:45 +01:00
fc7a68875a ovirt_templates: Add new attributes (#38211)
- operating_system
 - memory
 - memory_guaranteed
 - memory_max
2018-04-06 05:04:20 -04:00
af3598343d doc: apt, yum: add example with package lists (#38333) 2018-04-06 10:58:51 +02:00
fa8b047039 Corrected a parameter name (#38385) 2018-04-06 10:58:01 +02:00
2381d2207e Additional docs CSS fix for mobile (#38376) 2018-04-05 23:59:18 -07:00
79c5a34b0b Fixes CSS so docs display properly on mobile (#38373) 2018-04-05 23:20:24 -07:00
2340ca7701 Small typos in docs (#38370)
* Small typos in docs

* Fixed wording
2018-04-05 22:20:51 -07:00
1bf29651af fix nxos_acl issues (#38283)
* fix nxos_acl issues

* typo fix

* typo fix in sanity.yaml

* another typo fix in sanity.yaml
2018-04-06 00:57:13 -04:00
f355eb621a VMware: Documentation update vmware_guest_snapshot (#38083)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-05 21:23:18 -04:00
1f3b480142 ec2_snapshot_copy: Add wait_timeout module parameter (#38072) (#38243)
* ec2_snapshot_copy: add wait_timeout parameter
2018-04-06 10:40:16 +10:00
2afb1090b1 allow incremental update for vars in loop for set_fact/include_vars (#38302)
* fix set_fact/include_vars looping

* tests for all behaviours affected

* add tests with injection off/on
2018-04-06 09:57:34 +10:00
1b9879ccbf remove unused optoins from inventory cli
fixes #31929
2018-04-05 18:40:24 -04:00
153c9bd539 Reduce recursion within group methods
This offers an optimization that allows loading larger
inventories of various structure by improving the
scaling laws involved for adding hosts and groups.

The primary speed benefit is the elimination of duplicate
recusion from traversing converging paths.
2018-04-05 18:38:44 -04:00
71e8527d7c powershell: display non-ascii characters in command outputs (#37229) 2018-04-05 14:59:51 -07:00
fd4d264253 win_setup: Added connection name to interfaces (#37327) 2018-04-06 07:36:38 +10:00
ad94d03ba1 Tolerate win line endings on windows module_util load (#37291)
* tolerate windows line endings when loading windows module utils.  Helpful for old custom windows modules.

* add test modules to demonstrate win line ending module load behaviour.

* attempt to fix sanity check failures

* pep8 fix

* explict skip of test modules from shebang check (core modules must still have expected unix style line endings)

* switch to rstrip() following core team meeting feedback
2018-04-06 07:13:31 +10:00
4e38036bbd Replace the hard-coded temp path in gunicorn module (#38349)
The gunicorn module has a hard-coded reference to '/tmp' which may
or may not be the actual temp directory for an operating system.

This patch replaces '/tmp' with module.tmpdir which should
resolve to the correct temp directory for the OS.

Fixes Issue #36953

Signed-off-by: Eric Brown <browne@vmware.com>
2018-04-05 16:31:21 -04:00
b794fa4fe7 Expose verbosity as a var, dedupe attr list. Fixes #36170 2018-04-05 16:06:01 -04:00
0d31d1cd24 [cloud]Add aws_ses_identity_policy module for managing SES sending policies (#36623)
* Add aws_ses_identity_policy module for managing SES sending policies

* Add option to AnsibleAWSModule for applying a retry decorator to all calls.

* Add per-callsite opt in to retry behaviours in AnsibleAWSModule

* Update aws_ses_identity_policy module to opt in to retries at all callsites.

* Add test for aws_ses_identity_policy module with inline policy.

* Remove implicit retrys on boto resources since they're not working yet.
2018-04-05 15:11:12 -04:00
95d40bcd0a Update fish setup to use source instead of . (#33207)
"The use of . is deprecated in favour of source, and . will be removed in a future version of fish."

source: https://fishshell.com/docs/current/commands.html#source
2018-04-05 11:51:55 -07:00
c62551c1b0 Update role doc examples (#37844)
* fix role examples

- also fixed issue with overload of 'name', fixes #37836
- attempted to clarify tag inheritance/application

* Typo fix
2018-04-05 11:41:25 -07:00
dca61cc397 Update docs to reflect support for CDP neighbors (#38051) 2018-04-05 19:14:55 +01:00
f630d420c6 clarify os x password with user module (#38344)
also removed pointer to non existing example

fixes #36427
2018-04-05 14:13:22 -04:00
5ad13d66aa documented actual precedence (#38009)
fixes #22025
2018-04-05 11:09:11 -07:00
9cca9a9c10 docs: Document disabling diff on task level (#37998)
* docs: Document disabling diff on task level

Tasks that deal with secrets may leak sensitive information when
running in Check Mode. This change updates the documentation explaining
that the diff can be deactivated on task level.

The feature was requested in #14860 and got introduced in Ansible 2.4
with #28581.

* Updated for clarity
2018-04-05 11:08:30 -07:00
2a604f6fe6 doc: index_var: fix version added (#37982)
e9b0a4ccb4 is present since v2.5.0b1
2018-04-05 11:06:14 -07:00
a1d3cf488d [cloud][test]Add missing IAM policy for cloudfront (#38248)
Cloudfront needs CreateOriginAccessIdentity

Add profile parameter to setup-iam.yml. Could arguably just use
AWS_PROFILE but given that other tasks are using profile, should
be consistent.
2018-04-05 14:06:04 -04:00
55fd3d62fb Update porting_guide_2.5.rst (#37927)
The example regarding `include_*` is a bit unclear. First it seems like the v2.4 and v2.5 examples are the same. So I attempted to make the relevant change in the examples more obvious.

 label: docsite_pr
2018-04-05 11:05:38 -07:00
1f54775581 Clarify the "refresh_inventory" meta task when using a dynamic inventory script (#37575)
Clarify the "refresh_inventory" meta task when using a dynamic inventory script since it was somehow documented in this old mailing list message:
https://groups.google.com/forum/#!topic/ansible-project/ImhePKKDBZM
2018-04-05 10:49:51 -07:00
cdf9e39647 Fix the automatic docsite_pr label (#37999) 2018-04-05 10:48:37 -07:00
34dca85417 Update installation docs for RHEL based distributions. (#38056)
Upstream rpms are no longer in Extras but EPEL as well as releases.ansible.com.
Add instructions for adding Ansible Engine repo to RHEL.
2018-04-05 10:46:46 -07:00
ea9ece8e72 Update spelling_word_choice.rst (#38113)
Added missing format string on "Installer"

 label: docsite_pr
2018-04-05 10:45:42 -07:00
24fe8674a6 DOCS: Network Best Practices fixes (#38293)
* fixes typo per #38217, corrects link anchor

* adds ssh-agent info per #35649
2018-04-05 10:44:27 -07:00
39aa50022a Fix rpm_key test on Fedora 27. 2018-04-05 08:56:21 -07:00
3f2c90914e Fixes Making sure that the key value returns a string to avoid concatenation issues (#37445) 2018-04-05 11:47:55 -04:00
8673e1e661 Support for module param defaults (#22648) 2018-04-05 11:44:51 -04:00
f9bd29fe4d Added module for Autoscale Launch Config (#37345)
* Added module for Autoscale Launch Config

* Fixed review comments
2018-04-05 15:51:39 +01:00
15b6ec66bb Set raw=True when reading passwords from ConfigParser files. (#35582)
* Set `raw=True` when reading passwords from ConfigParser files.

The assumption is that no one is actually doing interpolation on the
password value, even if they may for other configuration values, and
passwords are far more likely to contain '%'.

* Add vmware_inventory as well.
2018-04-05 09:25:11 -04:00
d5cfc54ef4 Validate SSL in panos_import (#36972)
* Fix bug 36936

* Added version_added to argument and fixed whitespace

* Update panos_import documentation

Update parameter documentation and add note.

* Add type documentation

* added version number for documentation

For real

* Integrated recommended changes

- Added recommended changes from PR

* Changed validate_ssl default back to True considering there is a
note at the top of documentation explaining change

* Format changes based on recommendations from gundalow

* Rename validate_ssl to validate_cert

* Change description to remove SSL reference

* Change url default ih documentation

* Integrated small changes from bug report
- Renamed validate_cert to validate_certs
- Changed documentation for disabling cert validation
2018-04-05 13:29:33 +01:00
613f24a346 Fix typo in apt.py (#38332) 2018-04-05 14:06:12 +02:00
acf3f7a5df Add module maintainers information (#38030) 2018-04-05 12:34:28 +01:00
509f52a8ed ISSUE-37945 output not populated on failure (#37952)
* ISSUE-37945 output not populated on failure

This always includes output, but it is empty on failure.

* handle the other failcases as well
2018-04-05 05:49:10 -04:00
62c2b9a544 Removes modules from TOC, speeding up build time and reducing doc disk space requirements. 2018-04-04 20:36:01 -07:00
1c7b9e66b4 AWS WAF module custom waiter (#37026)
Consolidate waiters to a single file

* Add waiter message with token ID
* Add waiter

Add waiter for WAF change tokens

Working waiter for waf_condition module

Add support for waiters to waf_rule

* WAF data model refactor

* Fix ref to self.client

* Add custom waiters to aws_waf_web_acl

* Allow add/remove rule tasks to operate in parallel, then wait for their change tokens to complete

* Move waiter into run_func_with_change_token_backoff since it is generic to all WAF update operations

* Wait for deletes on waf_web_acl

* Remove always-wait

* Remove waiter retry catch
2018-04-05 11:30:57 +10:00
534e9e142b Fix openssl_certificate test for newer openssl. 2018-04-04 14:48:18 -07:00
4165bb308b Fix 2.5 changelog link 2018-04-04 14:39:38 -07:00
8f1b5fc47b Add alias's as a :ref: target for modules
This is especially important for deprecated modules as we want to link
to those in porting guides and such.
2018-04-04 14:31:14 -07:00
73c80862c8 Update docs and version definitions for the 2.4.4 and 2.5.0 releases 2018-04-04 14:21:04 -07:00
5b703a2a53 Add OpenNebula one_image_facts module (#38169)
* Add OpenNebula one_image_facts module

`one_image_facts` - module for gathering facts about OpenNebula images
Add integration tests

* Add an alias for ids
2018-04-04 22:53:31 +02:00
45b5a486c6 2.6 roadmap doc (#37926)
* 2..6 roadmap doc

* Formatting & network items

* typo
2018-04-04 18:26:19 +01:00
380c074808 demonstrates best practices for group vars (#37930)
* demonstrates best practices for group vars

* removes vm-specific var from example

* adds brackets to all [group:vars] refs
2018-04-04 09:50:29 -07:00
92bb3c2788 Fix grafana CALLBACK_VERSION 2018-04-04 11:26:22 -04:00
0bd2cd4394 added junos_smoke tests (#37216)
* added junos_smoke tests

* enable check mode test

* fix check mode test
2018-04-04 10:46:47 -04:00
38fa1d0b15 added iosxr_smoke (#37828)
* added iosxr_smoke tests

* finalized netconf tests

* cleaning up files
2018-04-04 10:46:30 -04:00
893b4e9116 Fix spelling of "lookup" across docs and src comments
PR #38273 by @colinrymer
2018-04-04 15:52:55 +02:00
3c53e2f8ea openvswitch_db: Split key-value pairs correctly (#33335)
Map values can contain commas, e.g.
    - name: Configure OVN bridge mapping
      openvswitch_db:
        state: present                                                                                                                                                                                                                                table: open_vswitch                                                                                                                                                                                                                           record: .                                                                                                                                                                                                                                     col: external_ids                                                                                                                                                                                                                             key: ovn-bridge-mappings
        value: '"vmnet-static:br-vmnet-st,vmnet-dynamic:br-vmnet-dyn"'

Previous behaviour was splitting the value and raised an exception.
2018-04-04 07:49:01 -06:00
5e990301bb Fixing lack of failure when uploaded source is invalid (#37461)
Checking the response status for 400 and throwing exception.
Unit tests updated.

Fixes #37406
2018-04-04 07:48:22 -06:00
a4e932ee9f ansible_ssh_pass is the ENV variable (#38035)
* ansible_ssh_pass is the ENV variable

* ansible_ssh_pass then ansible_password

* priority is top(lower)->bottom(higher)
2018-04-04 07:45:57 -06:00
72d42bd065 issue:38167 add support for onyx version 3.6.6000 for onyx_linkagg (#38191)
Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-04-04 07:43:10 -06:00
19ca1b2b8a Fix typo in Slack Callback plugin (#38268)
`get_options` is an undefined method from CallbackBase

As a result, remove the trailing `s` letter.

Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2018-04-04 15:29:49 +02:00
ac9dbdeb10 nmcli: check NMClient, NetworkManager availability (#38076)
This fix adds check for NMClient, NetworkManager availability
while using require_version API.

Fixes: #38042

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-04 05:58:38 -04:00
980a130f2e Update aliases on integration tests. (#38258)
* Enable dpkg_selections test.
* Enable vmware_maintenancemode test.
* Enable azure_rm_deployment test.
* Mark aws_waf_web_acl test unsupported.
2018-04-03 23:40:23 -07:00
b8cb382a40 nxos_acl_interface tests addition (#38230) 2018-04-04 02:07:37 -04:00
3a4fc4af08 Add error handling for junos in case wrong connection type (#38023)
* Add error handling for junos in case wrong connection type

Fixes #37990

If a junos module doesn't support given connection/transport type
return appropriate error message.

* Fix CI issues

* Fix review comment
2018-04-04 09:54:47 +05:30
d653d52dd8 Mark unsupported integration tests. (#38251)
* Mark UCS integration tests as unsupported.
* Mark various connection tests as unsupported.
* Mark win_domain_group test as unsupported.
* Mark java_cert test as unsupported.
* Mark synchronize-buildah test as unsupported.
* Mark various AWS tests as unsupported.
* Mark azure_rm_acs test as unsupported.
* Mark GCP tests as unsupported.
2018-04-03 19:04:23 -07:00
a5cbc0a2c8 Multiple ansible-test fixes. (#38247)
* Add ansible-test integration --allow-root option.
* Fix destructive target override.
* Fix bad type hint SanityResult -> TestResult.
* Fix skip/python3 filtering with --docker option.
2018-04-03 18:53:53 -07:00
f37a44430f win_service: fix when dealing with paths with special chars and change WMI to CIM cmdlets (#37897)
* win_service: fix when dealing with paths with special chars and change WMI to CIM cmdlets

* compare username in lowercase for test
2018-04-03 18:28:10 -07:00
3a1cd4d45a Fix incorrect RN used in module (#38245)
This requires backporting to v2.5
2018-04-04 02:43:58 +02:00
63a8ae94a7 cloudfront_distribution: fix restrictions (#37476) 2018-04-04 10:26:14 +10:00
68f81a6799 Reinstated element to fix doc display on mobile devices. (#38246) 2018-04-03 17:13:29 -07:00
71699d5140 Introduce grafana callback plugin. (#34246)
* Introduce grafana callback plugin.

The grafana plugin plublishes annotations to the HTTP API available in
Grafana 4.6+

The callback publishes:
* An annotation on playbook start, tagged with "ansible",
 "ansible_event_start" and playbook name, example:

```
{
    "text": "Started playbook test.yml\n\nFrom 'pc45.home'\nBy user 'remirey'\n",
    "tags": ["ansible", "ansible_event_start", "test.yml"],
    "time": 1514291163000
}
```

* An annotation on error containing the host and task who failed and
  tagged with "ansible", "ansible_event_failure" and playbook name, example:

```
{
    "text": "Playbook test.yml Failure !\n\nFrom 'pc45.home'\nBy user 'remirey'\n\n'TASK: simulate failure' failed on localhost\n\ndebug: {\"changed\": false, \"msg\": \"Some random failure\"}\n",
    "tags": ["ansible", "ansible_event_failure", "test.yml"],
    "time": 1514291165000
}
```

* A region annotation emitted on playbook stats, tagged with "ansible",
  "ansible_report" and playbook name, example:

```
{
    "text": "Playbook test.yml\nDuration: 1.641703\nStatus: FAILED\n\nFrom 'pc45.home'\nBy user 'remirey'\n\nResult:\n{\"localhost\": {\"unreachable\": 0, \"skipped\": 0, \"ok\": 2, \"changed\": 1, \"failures\": 1}}\n",
    "tags": ["ansible", "ansible_report", "test.yml"],
    "isRegion": true,
    "timeEnd": 1514291165000,
    "time": 1514291163000
}
```

Fixes #34225
2018-04-03 18:51:52 -04:00
91a748e33b fixes issue when netconf would report ios is not supported (#38155)
* fixes issue when netconf would report ios is not supported

This change now will map ansible_network_os=ios to the correct netconf
plugin implementation.  This will resolve an error where the netconf
connection plugin will report that ios is unsupported.
2018-04-03 17:01:59 -04:00
873a9ddf8d [cloud] Add custom waiters to stabilize ec2_vpc_subnet module - Fixes #36083 (#37534)
* stabilize ec2_vpc_subnet module

* Add waiters for ec2_vpc_subnet

Clean up integration tests

* Reenable CI for stabilized ec2_vpc_subnet tests

* rename waiters

* Use module_json_aws where applicable

Handle WaiterError first if waiting failed

* Fix traceback when tagging with keys/values that look like booleans

* Fix check mode with tags

* Add integration tests for tags that look like booleans and check mode

* Add waiter for deleting subnet

* Sleep a few seconds after using aws command line
2018-04-03 15:25:00 -04:00
95c15757a2 Initial commit for Scaleway support (#37638) 2018-04-03 14:04:42 -05:00
a89d0d0919 Ensure that arguments for sub commands are properly indented (#37992) 2018-04-03 10:56:12 -05:00
b000339a31 ec2_instace: fix instance_role argument (#37465) 2018-04-03 11:39:39 -04:00
ddf937d642 Don't pass keyword args as positional, include file_name. Fixes #38190 (#38194) 2018-04-03 09:59:13 -05:00
f666208b75 Add integration test for #35900 (#38090)
* Add integration test for #35900

* Fix cleanup
2018-04-03 16:25:51 +02:00
8199b448e8 Add no_log to activationkey (#36657) 2018-04-03 07:35:21 -04:00
7a5e7c83d3 dictionary changed size during iteration error (#37454)
Iterating an object and changing it at the same time is unsecure and no longer permitted in Python >= 3.6

Provisioning an instance fail with the Python error: "RuntimeError: dictionary changed size during iteration"
2018-04-03 06:13:09 -04:00
72657ce815 Add example to clear the usage of extra_opts (#31873) 2018-04-03 05:03:11 -04:00
70d49f7616 Fix indentation issue
<!--- Your description here -->

+label: docsite_pr
2018-04-03 10:45:50 +02:00
fd711671ed copy: doc: fix typo (#38197) 2018-04-03 09:26:35 +02:00
119352b538 nxos_vlan purge (#38202)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-04-03 02:53:44 -04:00
24cc6b80bd fix nxos_aaa_server_host issues (#38188) 2018-04-03 01:53:43 -04:00
35b7b608bf Add missing required property to docs
<!--- Your description here -->

+label: docsite_pr
2018-04-03 03:32:49 +02:00
70bcc5ed45 ec2_snapshot_copy: WaitError and ClientError exception handling (#38072) 2018-04-03 10:23:35 +10:00
67cd641c04 Fixes #38085 - cloudfront_invalidation doesn't work for the first invalidation ever (#38086) 2018-04-03 10:14:09 +10:00
2d90f50eeb git_config: add quotes in complex value (#38168)
This fix adds quotes to complex values of git config keys.

Fixes: #20954

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-02 19:09:39 -04:00
b5b3beff83 Correct syntax highlighting in plugin dev docs (#38184)
Use rst em dash
2018-04-02 15:39:20 -07:00
5d779fada0 Doc formatting update for office_365_connector_card.py (#38142)
* Update office_365_connector_card.py

The two bullet items were about one single item; this module is not idempotent.
Therefore the two bullet items should be one.

 label: docsite_pr

* Update office_365_connector_card.py

Removed trailing white space that caused the test failure.
2018-04-02 16:23:47 -05:00
87bd169ca9 Allow subnets with names formatted like subnet-1234 (#37740)
* Allow subnets with names formatted like `subnet-1234`

* Deduplicate IDs, in case a subnet is specified both by name and ID
2018-04-02 17:13:44 -04:00
d129396274 GCP: Compute IP Addresses (#36325) 2018-04-02 16:42:49 -04:00
082b03c829 fix set options in callbacks for foreman 2018-04-02 12:17:39 -04:00
5839f07e0f yaml callback fails on python3
When the URI module returns complex JSON objects, the YAML callback
fails while trying to represent these objects.  The problem arises
because the filter method returns an iterator in Python 3, rather than a
str object.  Therefore, the str method expandtabs() is not available,
and the callback fails with the following error:

[WARNING]: Failure using method (v2_runner_on_failed) in callback plugin (<ansible.plugins.callback.yaml.CallbackModule object at 0x7f7c7ed8aa20>): 'filter' object has no attribute 'expandtabs'

Issue can be replicated by running this playbook:

- hosts: localhost
  gather_facts: false
  tasks:
    - uri:
        url: https://jsonplaceholder.typicode.com/posts

ansible-playbook tmp.yml -v
2018-04-02 11:41:00 -04:00
423b0e0f58 Improve details and events results for ecs_service_facts (#37983)
* Use AnsibleAWSModule to simplify AWS connection
* Add Exception handling, pagination, retries and backoff
* Allow events to be switched off
* Allow details to be obtained without having to specify services
2018-04-02 11:26:23 -04:00
50761bef0a changes description to match module (#31364) 2018-04-02 11:24:15 -04:00
a73e2a924b Add OpenNebula one_image module (#37831) 2018-04-02 16:58:39 +02:00
697c301f04 fix nxos_aaa_server issues (#38117) 2018-04-02 07:56:06 -04:00
b4debfad9a Add NSX-T Logical Switch support in vmware_guest (#37979)
* Add NSX-T Logical Switch support in vmware_guest

* Update vmware_guest.py

add space after % operator
2018-04-02 05:35:13 -04:00
0cdba9ff70 add instanceUuid (also called PersistentId) in vmware utils (#37127) 2018-04-02 01:49:39 -04:00
93fc99c576 Making clearer that the module has to be executed twice, and that the second run needs the data of the first (#37884). (#38135) 2018-03-31 10:07:00 -04:00
28ce3c2329 doc: inventory: nmap: fix version added (#38157) 2018-03-31 11:45:12 +02:00
b06dfbec54 cs_user: fix E325 (#38158) 2018-03-31 11:44:04 +02:00
8b98c29afd Remove the deprecated tls-sni-02 challenge method. (#38137) 2018-03-31 03:17:12 -04:00
45e4dfda3d doc: fix grammar (#38145) 2018-03-30 18:32:29 +02:00
9a21f9b2db ovirt_host_networks: Fix of bond assignment (#38054)
* ovirt_host_networks: Fix of bond assignment

* ovirt_host_networks: Fix bond modes

* ovirt_host_networks: Fix incorrect prefix documentation
2018-03-30 07:56:11 -04:00
477a602fdf ovirt_hosts: Fix failed_state after PM fence (#38102) 2018-03-30 07:55:17 -04:00
1c00a14c31 fix typo (#38131) 2018-03-30 03:46:53 -04:00
126a41327c Update docs to highlight lookup plugins for templating
<!--- Your description here -->

+label: docsite_pr
2018-03-30 09:33:02 +02:00
3973eb4c30 Added an example using a templated payload file
<!--- Your description here -->

+label: docsite_pr
2018-03-30 09:27:45 +02:00
16cf51926d VMware: vmware_portgroup teaming policy support (#36778)
This fix adds support for specifying teaming policy in
vmware_portgroup module.

Fixes: #36773

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-29 23:03:45 -04:00
fd96bcd22f Use correct action in warning about missing name 2018-03-29 18:10:00 -04:00
5e2f215dd7 Nmap inventory (#32857)
* nmap inv plugin draft

* more accurate regex

* fix format
2018-03-29 17:16:36 -04:00
a4c82d5842 Update EdgeOS modules to be community supported (#38112) 2018-03-29 15:59:46 -05:00
27c47f75ad #29334 handle maven local repo (#36159) 2018-03-29 16:16:46 -04:00
ee06f57f0d [ec2_vpc_nacl] revert suboptions for ingress and egress module parameters (#38071) 2018-03-29 16:16:01 -04:00
800dad5bdf uri: Add redirect tests for none, safe, urllib2 and all (#37068)
This is required if we want to ensure that #36809 doesn't cause any
important behavioral changes.

This PR changes the uri module to support follow_redirects=urllib2

It also adds a better error message when the connection closes before
any data was returned.
2018-03-29 14:54:42 -04:00
fea8c84a17 Fix returned landscape value when using python3 2018-03-29 11:44:05 -07:00
7908f78fa6 module_common: handle None value for templar (#36651)
* module_common: set required parameter templar

Fix the following error (related to b455901):

  $ ./hacking/test-module -m ./lib/ansible/modules/system/ping.py -I ansible_python_interpreter=/usr/bin/python
  Traceback (most recent call last):
    File "./hacking/test-module", line 268, in <module>
      main()
    File "./hacking/test-module", line 249, in main
      (modfile, modname, module_style) = boilerplate_module(options.module_path, options.module_args, interpreters, options.check, options.filename)
    File "./hacking/test-module", line 152, in boilerplate_module
      task_vars=task_vars
    File "ansible/lib/ansible/executor/module_common.py", line 910, in modify_module
      environment=environment)
    File "ansible/lib/ansible/executor/module_common.py", line 736, in _find_module_utils
      shebang, interpreter = _get_shebang(u'/usr/bin/python', task_vars, templar)
    File "ansible/lib/ansible/executor/module_common.py", line 452, in _get_shebang
      interpreter = templar.template(task_vars[interpreter_config].strip())
  AttributeError: 'NoneType' object has no attribute 'template'

* module_common.modify_module: templar is required
2018-03-29 13:54:48 -04:00
e10724fadb dedupe the --rsh options in favor of user supplied (#38096) 2018-03-29 09:32:27 -05:00
6f2cb28bb9 fix nxos_vlan issues (#38008) 2018-03-29 06:26:33 -04:00
2ad7d79985 additional fixes to function app test 2018-03-29 00:10:43 -07:00
66b389a00d show version brief does not work on iosxr virtual (#37609)
* show version brief does not work on iosxr virtual

* ci failures fix
2018-03-29 12:33:41 +05:30
73d3ed85ef Fix apt tests (#37922)
* Fix apt tests

* Enable the test in CI

* Additional fixes not discovered locally

* Don't break mysql tests and fix for 14.04 upgrade

* Remove not needed when cond

* Add shebang to fix-udev script

* Remove workaround in favor of rebuilding containers

* Remove leftover script
2018-03-29 08:20:10 +02:00
0efbb702b9 fixes bug: puppet module is no longer updating persistent external facts (#38026) 2018-03-29 14:54:44 +10:00
7ea05a2d56 synchronize: fix the mixture of quoting and passing of lists to run_command (#38020)
* switch to six.moves.shlex_quote

* remove the unncessary quotes on rsh
2018-03-28 18:45:49 -07:00
a19a21d715 Add --include and --omit options to ansible-test coverage report (#38061)
* Support --include and --omit with ansible-test coverage report

* Code format change
2018-03-28 18:42:57 -05:00
9b1e97424e Update Ubuntu image SHAs for ansible-test. 2018-03-28 16:11:24 -07:00
0128022654 Add OpenNebula one_vm module (#37825)
* Add OpenNebula one_vm module

* `one_vm` - module for managing VM instances instances on OpenNebula

* Add integration tests
2018-03-28 23:32:03 +02:00
cb5e594c13 Fix building from ubuntu1404 Dockerfile 2018-03-28 14:17:31 -07:00
e5d44934e7 changes default WAPI version to 2.1 (#37578) 2018-03-28 18:27:17 +01:00
98b29f8ad6 [cloud]Ensure SGs in default VPCs get default egress rule (#38018)
SGs created when a VPC ID was not specified would not necessarily
get the default egress rule, even when no explicit egress rules
were set.

Add some checks for egress rules in results from existing tests
2018-03-28 12:53:35 -04:00
9dfb665e43 issue:37307 Add support for changes in pfc output in onyx 3.6.6000 (#37651)
* issue:37307 Add support for changes in pfc output in onyx 3.6.6000

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-03-28 17:13:54 +01:00
7324f49829 fixes example address parameters (#37765) 2018-03-28 17:11:24 +01:00
447b342662 apt: use --auto-remove with dist-upgrade (#37594) 2018-03-28 12:18:36 +02:00
4688a09aa8 Update team_netapp (#38015)
Replace gouthampacha with amit0701

amit0701 will help maintain these modules
alongside hulquest lmprice and broncofan.
2018-03-28 10:33:35 +01:00
612d0d6634 Fix interfaces_file for proper file contents (#37818)
The generated file was completely unusable by the system
therefore the fix which ensures that diffing the file
prior to changes and after only shows diffs

Furthermore the code did not work for Python 3.6
>       f.writelines(to_bytes(lines, errors='surrogate_or_strict'))
E       TypeError: a bytes-like object is required, not 'int'

The other modifications (lambda variable renaming) is to
comply with default flake8 rules
2018-03-28 10:21:43 +01:00
710db82930 flattened: doc: Typo in lookup example (#38006) 2018-03-28 08:25:40 +02:00
29c8d9b923 Update xml.py (#38019)
Fix a trivial typo 

 label: docsite_pr
2018-03-28 07:47:28 +02:00
371317b553 don't create vmware vm on ESX in maintenance mode (#37124)
* don't create vmware vm on ESX in maint mode

update vmware_guest not to try to create VM on ESXi host in maintenance mode

* update as requested
2018-03-27 23:12:43 -04:00
454096ca59 Fixes #37700 Azure image can be created with tag (#37981)
* image can be create or add

* update tags

* can remove all tags

* Update azure_rm_common.py
2018-03-27 23:10:29 -04:00
d065cce021 VMware: Use RFC 952 compliant hostname while customization (#38005)
VMware throws error if hostname provided by user is not RFC 952
compliant. Added minor documentation fixes.

Fixes: #24225, #27096

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-27 22:49:22 -04:00
0ee275ca64 Add Meaningful Cloudfront Identity during creation of cloudfront distribution (#37914) 2018-03-28 10:38:16 +10:00
ab9b4479a1 Quote --rsh command options for rsync in syncrhonize module (#35976)
Currently the --rsh command arg being passed to rsync is not quoted,
but we're adding arguments to the ssh command and that causes rsync
to attempt to accept them as it's own, which is not the desired
outcome.

Fixes #35717

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-03-27 20:26:00 -04:00
9350b5ec22 [docs] correct the code of conduct link (#38012) 2018-03-27 17:07:37 -04:00
b72960fdd4 revises network portion of 2.5 porting guide (#37938)
* revises network portion of 2.5 porting guide
2018-03-27 14:59:04 -05:00
897c8df8d0 Ensure the MAC address uses colons instead of hyphens for later comparison. Fixes #35463 (#35465) 2018-03-27 15:20:01 -04:00
8ce2ee0ebb VMware: Fix regression in get_all_host_objs (#36770)
If user does not specify esxi_hostname then module
fails to detect ESXi hostsystem from given configuration.
This fixes the regression in get_all_host_objs API by
getting first host managed object from list.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-27 14:57:17 -04:00
4edcbeb62d VMware: Gather facts when powerstate is specified (#37908)
This fix adds additional facts after VM powerstate management.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-28 00:19:33 +05:30
6e737c8cb6 Fix 'New Vault password' on vault 'edit' (#35923)
* Fix 'New Vault password' on vault 'edit'

ffe0ddea96 introduce a
change on 'ansible-vault edit' that tried to check
for --encrypt-vault-id in that mode. But '--encrypt-vault-id'
is not intended for 'edit' since the 'edit' should always
reuse the vault secret that was used to decrypt the text.

Change cli to not check for --encrypt-vault-id on 'edit'.

VaultLib.decrypt_and_get_vault_id() was change to return
the vault secret used to decrypt (in addition to vault_id
and the plaintext).

VaultEditor.edit_file() will now use 'vault_secret_used'
as returned from decrypt_and_get_vault_id() so that
an edited file always gets reencrypted with the same
secret, regardless of any vault id configuration or
cli options.

Fixes #35834
2018-03-27 14:12:21 -04:00
cbe2915ba5 continue fact gathering even without dmidecode (#34925)
* continue fact gathering even without dmidecode

If dmidecode is not available we still wan to continue with fact
gathering.
On certain platforms dmidecode just won't work
2018-03-27 13:56:49 -04:00
ed6c4b4058 Add spectrum_device module (#19739) 2018-03-27 11:58:01 -05:00
1428db45bc updated example with correct parameters (#37679)
Updated EXAMPLES documentation which had following 2 incorrect parameters: 
'type' has been changed to 'ds_type'
'basic_auth' parameter has been removed.

 label: docsite_pr
2018-03-27 18:49:11 +02:00
4aa1477470 fix typo (#37996)
fix typo
 label: docsite_pr
2018-03-27 18:47:48 +02:00
c1af147c1f warn about assign_public_ip immutability only if explicitly set (#37974)
Change assign_public_ip to default to None rather than False so
that we can detect whether the value is being explicitly set or
not, and only warn if it is explicitly set to False for something
with a public_dns_name

Fixes #37985
2018-03-27 08:20:57 -04:00
290cca3613 docs/keywords: Clarify async a bit (#37943)
I hastily did a copy/paste of the `async` example and it took me
a while to understand that `async` specified a maximum runtime in seconds.
The docs are actually mostly clear on this, but I made this PR while
reading the code.

This also fixes the spelling of "asynchronously".
2018-03-27 08:15:30 -04:00
d79b9f88bb Fix broken link to cloud utils from AWS guidelines. (#37166)
* Fix broken link to cloud utils from AWS guidelines.

* Replace absolute links within repo with relative links.
2018-03-27 18:55:25 +10:00
c2226dd18b Purge legacy test modules (#37691) 2018-03-27 09:46:35 +01:00
135d343254 fix nxos_udld_interface issue (#37527) 2018-03-27 02:57:14 -04:00
023f130a46 Add CDP support for the neighbors option (#37655) (#37667) 2018-03-27 12:06:17 +05:30
b1ac65d95a win_copy: added fix for win_copy deleting local tmp folder (#37964) 2018-03-27 16:20:10 +10:00
68e44e082e Ansible.ModuleUtils.FileUtil: catch DirectoryNotFoundException when testing a path (#37968) 2018-03-27 16:19:45 +10:00
63da50e1d8 Integration Tests only: nxos_user (#37852)
* add new integration file to nxos_user

* fix shippable error

* change nxapi to connection

* review comments
2018-03-27 01:41:39 -04:00
c4e7b54630 win_reboot: fixed up warning message for dep args (#37898) 2018-03-27 13:03:07 +10:00
e707e71ec5 Except in specific cases, we want to use text strings on the controller 2018-03-26 16:54:39 -07:00
00a7ff7974 Move man pages generations to rst2man (#37861) 2018-03-26 16:28:28 -07:00
02f44176b9 Document the relationship between octal numbers and the leading zero
Fixes #37875
2018-03-26 16:25:06 -07:00
a82fea65c1 We need to save the basename into an attribute for calling code 2018-03-26 16:15:05 -07:00
5d90ebb28e Add argument to allow limiting docker container to s specific amount of memory (#37950)
* Add argument to allow limiting docker container to s specific amount of memory

* Address review comments
2018-03-26 16:45:50 -05:00
2d0547c411 Disable unstable win_uri test. 2018-03-26 13:43:53 -07:00
449e400ffe Remove myself from vmware maintainers (#37928) 2018-03-26 22:27:51 +02:00
abae7a49f7 Fixes #37824. cloudstack: do not rely on APIs list queries for names (#37910) 2018-03-26 15:53:28 -04:00
ce6595b567 aws_ssm_parameter_store - Make the module idempotent (#36252)
* Make the module idempotent

* pep8 fixes.

* Made required changes for overwrite_value for idempotency.

* Fix missing error definition

* Add in missing documentation variable.
2018-03-26 15:46:37 -04:00
6051ef4041 Revert accidental addition of Mapping in #37741 (#37939) 2018-03-26 13:57:56 -05:00
ffbbb5a25b Use arg_spec type for comparisons on default and choices (#37741)
* Use arg_spec type for comparisons on default and choices

* Further improve type casting

* Make sure to capture output in more places

* Individually report invalid choices

* Update ignore.txt after resolving merge conflicts
2018-03-26 12:15:32 -05:00
9890ce47e8 Optimizations in mod_args parsing
* Make it less likely that we have to identify all the modules during
  a playbook run.  PluginLoader is optimized to look for modules one
  directory at a time.  If we find a module before we've examined all
  the directories we never have to touch the other directories.
  Reordering this conditional makes it so tasks which don't have
  a module file will not force us to examine all the module directories
  before moving on to other sources of task actions.
* Change several variables we consult to see if a task is in a certain
  category from lists/tuples to frozensets.  These are static lists
  which we only do containment tests on so frozensets should be faster
2018-03-26 10:08:38 -07:00
1f824bd620 Don't overwrite builtin jinja2 filters with tests (#37881)
* Don't overwrite builtin jinja2 filters with tests. Fixes #37856

* Fix tests and other callers of _get_filters
2018-03-26 12:06:00 -05:00
169209c32a Put back $PATH checking in ansible-connection call (#37933) 2018-03-26 12:49:30 -04:00
0df5cfd41f fix nxos_static_route issues (#37614)
* fix nxos_static_route issues

* remove nxos_static_route from ignore
2018-03-26 11:13:32 -04:00
0dcd8b598c Don't assume that self._task.action is copy, explicitly set. Addresses #37238 (#37777) 2018-03-26 10:04:06 -05:00
8eaa9cc938 Fix junos modules check_mode issue (#37311)
Fixes #37208

If check_mode is enabled instead of committing th config need to
discard all the chnages to cnadidate db
In case of cli to discard changes issue `rollback 0` command
and for netconf execute `discard-changes` rpc call
2018-03-26 07:27:30 -04:00
7cd3d9cc1a Correct msg to detect idempotent yum groupinstall (#37858)
The message text used to check stderr for a warning about
groupinstall in order to determine if a change occurred is specific
to the version of yum that is in RHEL7 and newer. This change simply
removes a couple words off the end in order to only use text found
in the warning message in older versions of yum.

Fixes #35982

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-03-26 10:46:24 +02:00
f0fd0f219d Hide apikey from log in uptimerobot (#37342)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-26 03:02:00 -04:00
702b5a3e81 Added poweroff_guest vm and reboot_guest vm in vsphere_guest (#34348) 2018-03-26 02:35:58 -04:00
adbda67151 New module: digital_ocean_domain_facts (#37269)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-26 01:48:13 -04:00
681c69f8c1 Fix the aws_kms_facts module name in module docs (#37902)
Forgot to update the examples when the module name changed to
have the `aws_` prefix
2018-03-26 12:18:36 +10:00
ba0ff415a0 [cloud] ec2_vpc_nacl: add documentation about ingress and egress rules (#37747)
Fixes #25152

Use suboptions
2018-03-26 11:44:44 +10:00
2c44061a04 append request headers instead of replacing (#37845) 2018-03-26 05:35:41 +10:00
d502745a4e Disable unstable s3_bucket test. 2018-03-24 11:00:32 -07:00
2ffbd5554f Disable unstable ec2_group test. 2018-03-24 05:11:19 -07:00
308b0a9772 Increase ansible-test scp retries. 2018-03-24 03:43:26 -07:00
3554e2c2d9 Fixes scrolling issue without breaking header nav (#37864) 2018-03-23 17:55:29 -07:00
47318a50b2 Temporary fix for horizontal scrolling issues on certain pages. Note that this will revert the behavior where headings scroll off the top of the main content region during navigation; fix for that is being investigated. (#37863) 2018-03-23 17:36:56 -07:00
c7b6a73d41 Disabled unstable ec2_ami test. 2018-03-23 16:49:41 -07:00
af15a46f20 Disable unstable ec2_vpc_subnet test. 2018-03-23 16:46:42 -07:00
b7ce2b1c5a win_certificate_store: fix typo stopping key_storage from working (#37810) 2018-03-24 09:17:18 +10:00
97942a588a Disable unstable ec2_vpc_route_table test. 2018-03-23 15:44:57 -07:00
7284d40049 trying to fix storage blob timing issue 2018-03-23 15:43:27 -07:00
e95e9de235 Typos in the yaml inventory plugin
This patch fixes up some English typos in the yaml inventory
plugin documentation.

* s/specifically/specific
* s/as/as an

Signed-off-by: Eric Brown <browne@vmware.com>
2018-03-23 18:01:40 -04:00
68ff986708 Fix 'repomd.xml signature could not be verified' (#35989)
If a repo with `repo_gpgcheck=1` is added and the repo GPG key was never
accepted, quering this repo would throw an error `repomd.xml signature
could not be verified` and the module would fail. If that happens now
`yum -y makecache` will be run which will fetch the new repo data and
accept the repo GPG key.
2018-03-23 16:13:49 -05:00
00068e9fcc Add integration tests for include_role using variable for tasks_file (#37742)
* Add tests using a variable in tasks_from field

Related to #32503

* Do not test using hostvars with import_role

hostvars cannot be used with import_role — use include_role instead
2018-03-23 15:43:00 -04:00
c3ab6cb9b1 template: Add option to lstrip_blocks' and fix settingtrim_blocks` inline (#37478)
* template: Add integration tests for `lstrip_blocks'

Signed-off-by: Alex Tsitsimpis <alextsi@arrikto.com>

* template: Fix passing `trim_blocks' inline

Fix passing `trim_blocks' option to the template module as inline
argument. Previously passing the `trim_blocks' option inline instead of
using the YAML dictionary format resulted in it always being set to
`True', even if `trim_blocks=False' was used.

Signed-off-by: Alex Tsitsimpis <alextsi@arrikto.com>

* template: Add option to `lstrip_blocks'

Add option to set `lstrip_blocks' when using the template module to
render Jinja templates. The Jinja documentation suggests that
`trim_blocks' and `lstrip_blocks' is a great combination and the
template module already provides an option for `trim_blocks'.

Note that although `trim_blocks' in Ansible is enabled by default since
version 2.4, in order to avoid breaking things keep `lstrip_blocks'
disabled by default. Maybe in a future version it could be enabled by
default.

This seems to address issue #10725 in a more appropriate way than the
suggested.

Signed-off-by: Alex Tsitsimpis <alextsi@arrikto.com>

* template: Add integration tests for `trim_blocks'

Signed-off-by: Alex Tsitsimpis <alextsi@arrikto.com>

* template: Check Jinja2 support for `lstrip_blocks'

Since the `lstrip_blocks' option was added in Jinja2 version 2.7, raise
an exception when `lstrip_blocks' is set but Jinja2 does not support it.
Check support for `lstrip_blocks' option by checking `jinja2.defaults'
for `LSTRIP_BLOCKS' and do not use `jinja2.__version__' because the
latter is set to `unknown' in some cases, perhaps due to bug in
`pkg_resources' in Python 2.6.6.

Also update option description to state that Jinja2 version >=2.7 is
required.

Signed-off-by: Alex Tsitsimpis <alextsi@arrikto.com>
2018-03-23 12:05:21 -04:00
687f3bbef3 apt: fix mark when no packages (#37835) 2018-03-23 15:06:03 +01:00
270e799cb6 cs_vpc_offering: listVPCOffering API returns any matching names (#37783)
* fix listVPCOffering API method returns any matching names

* fix build_ci no-underscore-variable

* clearer variable name

* making it simpler
2018-03-23 09:13:41 -04:00
56d0721bd9 doc: modules involving file transfert bypass pipelining (#37250)
* doc: modules involving file transfert bypass pipelining

* Fixed typo
2018-03-23 07:02:19 -05:00
00d9345158 apt: mark installed packages manual (#37751)
* apt: mark installed packages manual

* Add fallback for when manual is not a thing
2018-03-23 12:23:12 +01:00
ca225d6da0 Changed Azure SecurityRule to use kwargs instead of positional args (#37695) 2018-03-23 20:37:22 +10:00
e06f3463fd Typo in ipaddr filter (#37592)
interger = integer
2018-03-23 11:06:53 +01:00
bcfff1c818 docs: needs_rebase is still used (#37774) 2018-03-23 00:51:53 -07:00
0dade18f43 Fix yamllinter handling of tuple assignment. 2018-03-22 23:14:21 -07:00
503f907b63 fix container instance version 2018-03-22 20:34:27 -07:00
2a7481444b supervisorctl: add integration tests 2018-03-22 15:46:53 -07:00
4e0ecfd553 Fix ansible-test handling of network plugins. 2018-03-22 15:16:27 -07:00
1b121fc9e4 Fix dynamic inventory for vagrant does not work on python3 (#37631)
* Fix dynamic inventory for vagrant does not work on python3 #35129
2018-03-22 15:13:43 -07:00
a4a2b4a381 consul_kv: decodes kv values from Consul to utf-8 (#35894)
* Decodes kv values from Consul to utf-8.

* Switches to using module utils to perform text decoding.

* Adds self to authors list to help community maintenance.
2018-03-22 14:56:38 -07:00
a51a699314 make jira authentication Python3 compatible (#33862)
* make jira authentication Python3 compatible
2018-03-22 14:38:01 -07:00
69c0f96112 Fix nested parameters in module docs (#37793) 2018-03-22 14:33:51 -07:00
3bec76fc85 Avoid 2nd processing of facts for actions
include_vars and set_fact are already updating hostvars in strategy
no need to 're add again' with lower priority the same data.

fixes #37535, mostly by avoiding reprocessing and 'cleaning'
2018-03-22 17:27:38 -04:00
0633f73faf Fix loader for filters (#37748)
* Fix loading of filter and test plugins

Filter and test plugins are different than other plugins in that they
can have many plugins in a single file.  Therefore they need to operate
a little differently.  They need to have all of the potential files
returned.  Then the caller takes care of passing those onto jinja2 in
order for jinja2 to make use of them.

This problem was (most recently) introduced with f921369445

This commit also restructures how we deduplicate plugins to take paths
into account.  If we want to start scoping which set of modules are
loaded (due to roles, for instance) we'll need to hang on to the path
information.

* add integration test for override

* Fix style checks for bcoca code

* Implement jinja2 plugin loader as a subclass

Having a subclass allows us to customize the overriding of jinja
plugins.  We can then move common parts of common code into the Loader.
2018-03-22 17:23:10 -04:00
e501134755 [aws] Register scalable target prior to creating/deleting a scaling policy (#35632)
* Added missing scalable target creation

* Changed if statement

* Added support to results of all actions

* Fixed line lengths, whitespaces and blank lines between functions

* Fixed documentation formatting

* Work in progress, fixed returns from functions, still need to do exception handling

* Work in progress, still need to do exception handling

* Moved to AnsibleAWSModule, Added exception handling

* Added detailed return doc

* Fixed return doc alarms

* fixed return yaml

* Fixed function calls when creating/deleting

* fixed unnecessary blank line

* removed imports and unnecessary checks handled by AnsibleAWSModule

* removed whitespace
2018-03-22 16:45:55 -04:00
8b45cab3c1 document our deprecation (#37788)
* document our deprecation

fixes #37779

* Copy edit.
2018-03-22 16:15:02 -04:00
340064bfb9 Fix python3 interpreter issue (#34811) (#35176)
* Fix python3 interpreter issue (#34811)

* Update ansible.module_utils._text (#34811)

* Convert to text later to account for multibyte characters
2018-03-22 12:59:46 -07:00
da3f7a8db1 [cloud] ec2_vpc_route_table: ignore routes without DestinationCidrBlock - fixes #37003 (#37010)
* [cloud] ec2_vpc_route_table: ignore routes without DestinationCidrBlock

Add module warnings rather than silently skipping

* Permit warnings for routes tables containing vpc endpoints to be turned off

* Add tests to ensure a VPC endpoint associated with a route table does not result in a traceback
2018-03-22 15:15:36 -04:00
f1899f784b Fix docker_secret test on RHEL. 2018-03-22 11:59:41 -07:00
f53f29352d Move AWS placebo fixtures into test/units/utils so module_utils tests can use them (#37300) 2018-03-22 14:57:59 -04:00
296ad80002 apt: allow for integration tests using fake repo (#37639)
* apt: allow for integration tests using fake repo

* Add integration test for 19102

* Clean up packages and repo

* Fix indentation
2018-03-22 19:14:40 +01:00
3a5a0fed06 [cloud] ec2_ami_copy: undeprecate wait_timeout to allow modifiable timeouts again to allow a longer timeout than 600 seconds (#37680)
Fixes #37111
2018-03-22 13:34:47 -04:00
868811adbc Documentation update (#37782)
- Mention Perl requirement for customisations to work in Linux based OS.
- Fix typo
2018-03-22 13:30:03 -04:00
ab1db9bcb8 yum: clean fake repos after tests run (#37770) 2018-03-22 13:19:29 -04:00
fcbee7e40b Check that output from list_vhosts can be split (#37630)
As with list_users, list_vhosts can sometimes return a value that
doesn't contain a '\t' character. This appears to be the case if the
server has no vhosts, for example.

The same fix was applied to the rabbitmq_users module here:
fafb89cde5
2018-03-22 13:03:20 -04:00
6ad784bbbb Fixed issue with accessing response in digital_ocean module (#37268) 2018-03-22 10:35:56 -04:00
68e7045a38 try to clarify run_once and forall! (#37754)
* try to clarify run_once and forall!

* fixed hidden tls middle man

* make when note

* Minor edit

* Typo fix
2018-03-22 09:37:14 -04:00
9802088082 New generator inventory plugin (#37690)
* New generator inventory plugin

Allows construction of hosts and groups through cartesian
product of various group combinations

* Add generator plugin documentation
2018-03-22 09:32:15 -04:00
40a55e9f55 update vars info (#37729)
- remove 1.x references
- update directives to keywords as this is the accepted naming for them
2018-03-22 00:02:45 -07:00
fe87869cec Fix casing on CallbackBase in 2.4 porting guide (#37616) 2018-03-22 00:00:23 -07:00
ee596743d1 Improve ansible-test retries. 2018-03-21 22:52:27 -07:00
fcd75bbc5a fixing function app test (#37687) 2018-03-21 20:58:28 -07:00
c7701fd4ac Disable failing azure_rm_securitygroup test. 2018-03-21 20:52:59 -07:00
2c2f335893 win_psexec: Fix pslint issues (#37718) 2018-03-22 03:21:07 +01:00
de5fb66026 win_product_facts: Fix pslint issues (#37722) 2018-03-22 03:18:48 +01:00
fef5f01b11 adding possibility to specify resource group for referred virtual net… (#36768)
* adding possibility to specify resource group for referred virtual network

* fixed sanity issues

* removed trailing whitespace

* added test

* fixed documentation

* try to fix unstable test

* Tidied up the description of virtual_network_resource_group
2018-03-22 12:10:29 +10:00
9fb04d20e1 azure_rm_networkinterface: don't query subnet as it's not necessary (#36826)
* don't query subnet as it's not necessary

* fixed pep8?

* another attempt to fix pep8 indentation
2018-03-21 21:59:46 -04:00
d5cd10c214 Remove unused import from azure dyn inventory (#34980) 2018-03-22 10:57:45 +10:00
bc4f8a6786 win_tempfile: Fix pslint issues (#37720) 2018-03-22 01:10:16 +01:00
04539ca448 Updated text for azure_rm_virtualmachine around images that can be used (#37686) 2018-03-22 09:34:09 +10:00
0b828ee830 azure_rm_virtualmachine: adding possibility of disabling public ip address (#36766)
* adding possibility of disabling public ip address

* fixed indent

* fixed whitespace

* fixed mistake

* try to create test with vm without public ip address

* try to fix test

* another attempt for test

* fixing test

* create vm with no ip with different name and delete it immediately

* a few additional fixes

* another attempt to pass test

* must be deleted

* simplified no ip test

* reorganised tests

* Wrapped choice in C()
2018-03-22 09:30:42 +10:00
89a80e0591 Removed windows_azure inventory script to avoid confusion with azure_rm.py (#37439) 2018-03-22 09:29:08 +10:00
89401f13f7 azure_rm_networkinterface: fixed issue when public ip address should not be created (#36824)
* fixed issue when public ip address should not be created

* adding test for public ip address

* fixed samples

* another fix to sample formatting

* fixed test

* fix test

* fixed test

* another attempt to fix test

* maybe it works now

* still wrong

* improved check per customer request

* removed stupid semicolon

* updated test to match main scenario

* changed ip configurations to list

* another attempt
2018-03-22 09:16:32 +10:00
fdc0e5c5fb win_defrag: Fix pslint issues (#37719) 2018-03-22 00:06:42 +01:00
f78b415db0 win_wakeonlan: Fix pslint issues (#37717) 2018-03-21 23:45:17 +01:00
c73ee8aac8 Update httptester SHA. 2018-03-21 15:42:48 -07:00
307d8b5330 Disable PowerShell null comparison test.
Too many false positives due to unknown types.
2018-03-21 15:41:49 -07:00
8c819dd9cb Support MSI for ansible on Azure resources (#36634)
* msi

* add env and param

* add msi in default

* add azure_rm

* add document

* subscription param

* if not enabled msi

* remove the msi in default mode since the infinite loop will block if not enabled msi

* lint

* lint

* Update azure_rm_common.py

* fix

* catch exc and make error message more friendly

* lint

* Minor docs changes to the msi source option
2018-03-22 06:01:44 +10:00
05220d693d Complete updates of remaining code-smell tests. (#37743)
* Add text/binary file support to code smell tests.
* Enhance line-endings code smell test.
* Enhance no-smart-quotes code-smell test.
* Enhance shebang code-smell test.
2018-03-21 12:02:06 -07:00
7c311ad615 Update httptester for httpbin==0.6.2 2018-03-21 11:21:39 -07:00
6352e67ab2 Update ansible-test is_binary_file test.
Add hard-coded list of common text and binary extensions.
2018-03-21 11:05:59 -07:00
aee01564a9 Clean up non-standard module shebangs. 2018-03-21 11:04:55 -07:00
0ae7a0e88c VMware: Use environment variable for connection (#37726)
This fix adds environment variables for connection in vmware_*
modules.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-21 13:31:24 -04:00
1d6bc094cf Add http(s)_proxy support in yum module (#36800)
* added set_env_proxy function for setting proxy environment

Added set_env_proxy function, that set system http(s)_proxy
environment for fetching RPM if proxy settings set in yum.conf file
that fix Issue - #18979

* fix automatic field numbering specification

* changed if statement in setting http_proxy environment

* Change set_env_proxy function to function with decorator

That decorator set system proxy environment from yum.conf and revert
back to system configuration after fetching RPM

* Minor fix

- rename variable schem  to scheme
- change 'in' to 'startswith'

* change decorator set_env_proxy to decorating through contextmanager

- added import contextmanager from contextlib
- set_env_proxy now decorating through contextmanager
- fix http/https setting environment principle
2018-03-21 11:55:36 -05:00
6aed74a97d Fix edgeos_config: {backup: yes} (#37619)
* Fix edgeos_config: {backup: yes}

* Add actual plugin copy
2018-03-21 12:48:09 -04:00
8daa80e5bb Move var precedence check to integration tests. 2018-03-21 09:43:32 -07:00
eebe728ae8 Fix SteamOS ansible_distribution fact (Fixes #33628) (#37576)
Fixes #33628
2018-03-21 11:50:54 -04:00
ca634486f1 added parameter for allowing prerelease packages in win_chocolatey for #33243 (#37205)
make sure we don't pass it to state absent

removed trailing whitespace

forcing CI
2018-03-21 15:46:40 +01:00
aadbb6c0b4 VMware: Handle exception gracefully (#36619)
This fix adds logic to handle exception raised from conversion of
user parameter 'memory_mb'.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-21 10:29:46 -04:00
7a4c3e5cad ovrit_cluster: fix for CPU arch entity #37425 (#37436)
* ovrit_cluster: fix for CPU arch entity #37425

* Corrected Indentation

* Condition to check if `architecture` is defined
2018-03-21 09:57:00 -04:00
ec2e027980 cloudfront_distribution: fix the order of headers to avoid updates again and again (#37340)
* Fix python2/3 compatibilities issues

* Sort cloudfront_distribution headers to avoid useless updates
2018-03-21 22:16:42 +10:00
062a5551e0 ManageIQ module - provider refresh (#37573) 2018-03-21 05:34:24 -04:00
5bdc32ff8d Updated modules for Avi version 17.2.8 (#37344) 2018-03-21 02:47:09 -04:00
248ca2df21 Fix encoding of code-smell paths on stdin. 2018-03-20 23:00:39 -07:00
fa2ff6ceaa enabling storage blob as it seems that test is stable 2018-03-20 22:53:36 -07:00
6dfc82fe3e Set win_rm protocol to the name, not the full ProtocolTypes object (#37499) 2018-03-21 15:37:48 +10:00
0214a85382 Correct module name in vcenter_license.py (#37672)
Module name should be vcenter_license not vmware_license.
2018-03-21 00:30:46 +01:00
850ab534d7 iam_role_facts: Add information about instance profiles associated with the iam roles (#37641) 2018-03-21 09:29:18 +10:00
51e3882b80 Update tests triggered for bin/ changes. 2018-03-20 16:26:48 -07:00
97670c4a82 Update ansible-test default container SHA. 2018-03-20 16:25:58 -07:00
81cfbbbeb9 constructed inventory does not use group variables from previous inventory #37397
* Add support for loading invenotry group variables in constructed plugin
2018-03-20 18:26:27 -04:00
06b70f1614 Revert "Add a few Jinja2 tests to simplify template (#37514)"
This reverts commit b8e07f0d6e.
2018-03-20 18:20:43 -04:00
b8e07f0d6e Add a few Jinja2 tests to simplify template (#37514)
Add list test to simplify template
2018-03-20 23:08:55 +01:00
alu
b7aa41b9b9 Fix crash in py3: 'TypeError: a bytes-like object is required, not 'str' (#37504)
* Fix crash in py3: 'TypeError: a bytes-like object is required, not 'str'

Fixes #37387

* Review applied https://github.com/ansible/ansible/pull/37504#pullrequestreview-104799823
2018-03-20 14:33:14 -07:00
Im0
8c4f349743 Test include role with items in name #36372 (#37001)
* Tests for #36372

* Tests for #36372

* Tests for #36372
2018-03-20 15:39:16 -05:00
09325b619e Fix csvfile traceback on Python3 (#37625)
* Fix csvfile traceback on Python3

The csvfile lookup uses some custom iterators.  These needed to be
ported to handle the python3 iterator protocol.  In addition, the
csvfile module takes an iterator of byte strings in Python2 and an
iterator of text strings in Python3

Fixes #36808
2018-03-20 12:58:51 -07:00
e02c72d856 Fixes #32146 Fixes reconcile inventory to correctly remove hosts from ungrouped 2018-03-20 15:37:39 -04:00
57da6319e1 Adds VMWare to TOC; sort scenario guides alphabetically (#37661) 2018-03-20 12:15:15 -07:00
b98ad3a12b Compare byte strings to byte strings
* Fix a traceback in ansible-pull on python3 comparing output from
  subprocess with a text string.
* Rename variables that hold byte strings so we are clear that those are
  not text strings.
* Use to_text() to transform variable that's being displayed as it's
  less fragile than str().

Fixes #36962
2018-03-20 12:04:05 -07:00
0d55081ba8 Fix use of user_data field with spot_price in ec2 module (#37628)
The user_data field is base64 encoded inside of the boto library.  In
Python3, base64 must be used with byte strings.  So we make sure to
encode the user_data into a byte string before passing it on to the boto
library.

Fixes #34978
2018-03-20 15:01:24 -04:00
ba4f26313b Correct method to get timedelta seconds value (#37485)
* Correct method to get timedelta seconds value

This also adds additional clarification for extracting different time/date values for time deltas

* Small edit
2018-03-20 12:00:34 -07:00
775539a8b8 Fix api_profile choices in Azure docs fragment. 2018-03-20 11:07:34 -07:00
54e70fc783 Fix name parameter templating in include_role module (#36372)
An IncludedFile() object built using the original_task will have
its _task bound to the original_task. The iterative reassignment of
original_task._role_name during with_item loops leaves all returned
included_files with the same ._task._role_name (the final name from
the with_items list). This commit builds IncludedFile() objects
from an original_task.copy() to avoid the problematic binding.
2018-03-20 14:01:48 -04:00
6c3e565ba3 Fix py3 issue in wait_for_connection (#37646) 2018-03-20 11:21:19 -05:00
f11986c82a Update default ansible-test docker container. (#37644)
* Limit cryptography version for Python 2.6 tests.
* Specify pip list format to eliminate warning.
2018-03-20 08:54:16 -07:00
b95b077993 Restore skipped/failed in JSON callback, add custom facts (#37204)
* Restore skipped/failed keys. Fixes #37050

* Display custom stats. Fixes #37184

* Add version_added

* Drop fallback, use self.get_option

* Remove unused import
2018-03-20 10:32:33 -04:00
8232c95f42 Pin httptester SHA. 2018-03-20 07:12:53 -07:00
f51a6ea832 implemented installroot option (#33613)
* fix

* move version to 2.6
2018-03-20 10:41:50 +00:00
334b291720 Added module for L4 Policy Set (#37346)
* Added module for L4 Policy Set

* Fixed review comments
2018-03-20 10:30:23 +00:00
da2bcf4f6a kedarX has left the building (#37636) 2018-03-20 10:23:50 +00:00
b0a8d823d2 Added module for User Account (#37347) 2018-03-20 10:13:10 +00:00
a89bafce2e issue:37306 Fix issue with vlan support for onyx version 3.6.6000 (#37310)
* issue:37306 Fix issue with vlan support for onyx version 3.6.6000

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-03-20 10:08:35 +00:00
6308047dc9 nso_verify handle leaf-list in 4.5 and identityref (#37393)
NSO verify did not handle leaf-list value verification in 4.5 and
later due to changes made for configuration writing made.

map prefix for identityref types in verification.
2018-03-20 10:01:36 +00:00
1fd9a616a4 Fix uri test on Python 2.6. 2018-03-19 23:11:38 -07:00
00abe6dbe7 fix UnboundLocalError nxos_bgp_af module (#37610)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-20 01:53:08 +05:30
716e170821 Auth method for the k8s lookup plugin now matches other modules (#37533) 2018-03-19 15:00:05 -04:00
ffd1200948 [cloud] ec2_asg: wait for the lifecycle hooks - Fixes #37281 (#37282)
Wait for the lifecycle hooks by matching states `Terminating:Wait` and `Terminating:Proceed` in addition to `Terminating`.
2018-03-19 14:59:07 -04:00
357beeb7ae Address some language in EXAMPLES (#37555) 2018-03-19 13:51:23 -04:00
0d0bdbec62 Load plugin config defs on first load only (fixes #37553) (#37584) 2018-03-19 13:34:15 -04:00
3e44186137 cs_instance: add new template filter all (#37571) 2018-03-19 17:27:16 +01:00
9c668fb167 nso_action use json result format if available in NSO (#37395)
Use JSON result format when it is available and make the result format
returned look like it when JSON result format is not available in NSO.
2018-03-19 15:17:12 +00:00
458a07d5a4 add timeout parameter and increase default timeout for nso modules (#37391)
NSO operations can take much longer than 10 seconds as they operate on
real network equipment, set default timeout to 5 minutes and allow for
user override.
2018-03-19 15:12:58 +00:00
e166946a0a Fix redundant yaml error blurbs on ModArgs parse errors (#36923)
* Fix redundant yaml error blurbs on ModArgs parse errors

Some of the AnsibleParserErrors from parsing.mod_args
are created with the obj=some_yaml_ds options but
some are not.

If they were, we don't want to add another yaml_ds to
it, because that will result in double yaml error blurbs.
And since we dont need to add info, we can just re raise it.

But if there is no ._obj, add it here so we get the extra
detail in the error message (see issue #14790) and raise
a new AnsibleParserError instance.

Fixes #36848

* cleanup existing test_tasks pep8/sanity issues
2018-03-19 10:55:29 -04:00
6281441e4d cloudformation: add create_timeout attribute (#36445)
* cloudformation: add create_timeout attribute
* No default value
* Only applies on stack creation
* In minutes
2018-03-19 10:38:17 -04:00
f8d20f970f Update Cisco NSO module required versions. (#36736)
NSO modules will now work with older versions of NSO, update version
requirements.
2018-03-19 14:18:44 +00:00
26d9de6f3e apt_repository: check attribute repo for None value (#36944) 2018-03-19 10:16:43 -04:00
5be9315603 apt: use to_native instead of str for exc (#37595) 2018-03-19 19:00:58 +05:30
64dfaf9cda removed deffered items (#37541) 2018-03-19 01:05:34 -07:00
7fd74c2089 Fix typo in inventory docs (#37577) 2018-03-19 01:04:29 -07:00
60fee5154b letsencrypt: don't mask values specified in data (#37556)
* Don't mask values specified in data.

This heavily improves readability of error messages such as
'Authorization for ******** returned in********:  CHALLENGE: ********-01 DETAILS: Incorrect TXT record "********" (and 1 more) found at ********.********;'
(verbatim quote).

* Added documentation.
2018-03-18 16:51:50 -04:00
e356e13d66 Fix the initial value of a variable
This should be a dict, not a string.

Fixes #37455
2018-03-18 09:45:29 -07:00
5d9090fbd7 Adding metadata from existing app to the JSON results, so that, for example, the app port can be referenced later 2018-03-18 09:43:41 -07:00
a97d8dff5a Fix argspec for webfaction modules
* Fixing webfaction_domain "subdomains" argument parsing - must coerce to list, not string
* Fixing webfaction_db and webfaction_app "machine" argument default
2018-03-18 09:43:41 -07:00
d30554bc90 Network F5: Adjust for Python 3 scoping rules (#37554)
This PR makes and adjustment for Python 3 scoping rules which differ from Python 2.  In Python 3, the variable __ex__ goes out of scope at the exit of the __try-except__ block.  This means that when __ex__ is referred to on the lines that follow, it would be an _undefined name_ causing a __NameError__ to be raised instead of the expected __ConnectionError__.

flake8 testing of https://github.com/ansible/ansible on Python 3.6.3
The command "echo ; echo -n "flake8 testing of ${URL} on " ; python -V" exited with 0.
130.72s$ time flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
./lib/ansible/module_utils/api.py:114:21: F823 local variable 'retry_count' (defined in enclosing scope on line 107) referenced before assignment
                    retry_count += 1  # pylint: disable=undefined-variable
                    ^
./lib/ansible/module_utils/six/__init__.py:54:20: F821 undefined name 'basestring'
    string_types = basestring,
                   ^
./lib/ansible/module_utils/six/__init__.py:55:27: F821 undefined name 'long'
    integer_types = (int, long)
                          ^
./lib/ansible/module_utils/six/__init__.py:57:17: F821 undefined name 'unicode'
    text_type = unicode
                ^
./lib/ansible/module_utils/six/__init__.py:658:16: F821 undefined name 'unicode'
        return unicode(s.replace(r'\\', r'\\\\'), "unicode_escape")
               ^
./lib/ansible/module_utils/six/__init__.py:754:37: F821 undefined name 'basestring'
            if not isinstance(data, basestring):
                                    ^
./lib/ansible/module_utils/six/__init__.py:757:32: F821 undefined name 'file'
            if (isinstance(fp, file) and
                               ^
./lib/ansible/module_utils/six/__init__.py:758:38: F821 undefined name 'unicode'
                    isinstance(data, unicode) and
                                     ^
./lib/ansible/module_utils/six/__init__.py:768:32: F821 undefined name 'unicode'
            if isinstance(sep, unicode):
                               ^
./lib/ansible/module_utils/six/__init__.py:774:32: F821 undefined name 'unicode'
            if isinstance(end, unicode):
                               ^
./lib/ansible/module_utils/six/__init__.py:782:36: F821 undefined name 'unicode'
                if isinstance(arg, unicode):
                                   ^
./lib/ansible/module_utils/six/__init__.py:786:23: F821 undefined name 'unicode'
            newline = unicode("\n")
                      ^
./lib/ansible/module_utils/six/__init__.py:787:21: F821 undefined name 'unicode'
            space = unicode(" ")
                    ^
./lib/ansible/modules/cloud/misc/rhevm.py:594:24: F821 undefined name 'e'
            setMsg(str(e))
                       ^
./lib/ansible/modules/cloud/openstack/os_user.py:202:38: F821 undefined name 'shade'
    if description and StrictVersion(shade.__version__) < StrictVersion('1.13.0'):
                                     ^
./lib/ansible/modules/cloud/openstack/os_volume.py:153:27: F821 undefined name 'shade'
            StrictVersion(shade.__version__) < StrictVersion('1.22')):
                          ^
./lib/ansible/modules/files/archive.py:391:92: F821 undefined name 'e'
                module.fail_json(dest=dest, msg='Error deleting some source files: ' + str(e), files=errors)
                                                                                           ^
./lib/ansible/modules/network/dellos9/dellos9_facts.py:379:24: F821 undefined name 'key'
                parsed[key] += '\n%s' % line
                       ^
./lib/ansible/modules/network/dellos9/dellos9_facts.py:399:24: F821 undefined name 'key'
                parsed[key] += '\n%s' % line
                       ^
./lib/ansible/modules/network/dellos9/dellos9_facts.py:403:24: F821 undefined name 'key'
                parsed[key] += '\n%s' % line
                       ^
./lib/ansible/modules/network/dellos9/dellos9_facts.py:418:24: F821 undefined name 'key'
                parsed[key] += '\n%s' % line
                       ^
./lib/ansible/modules/network/f5/bigip_device_httpd.py:461:40: F821 undefined name 'ex'
        if 'Connection aborted' in str(ex) and 'redirectHttpToHttps' in params:
                                       ^
./lib/ansible/modules/network/f5/bigip_device_httpd.py:465:33: F821 undefined name 'ex'
        raise F5ModuleError(str(ex))
                                ^
./lib/ansible/modules/network/ironware/ironware_facts.py:274:24: F821 undefined name 'key'
                parsed[key] += '\n%s' % line
                       ^
./lib/ansible/modules/network/ironware/ironware_facts.py:514:24: F821 undefined name 'key'
                parsed[key] += '\n%s' % line
                       ^
24    F821 undefined name 'basestring'
1     F823 local variable 'retry_count' (defined in enclosing scope on line 107) referenced before assignment
25
2018-03-17 19:19:43 -07:00
190755ff65 Fixing domain to authorization matching for ACME v2. (#37558) 2018-03-17 19:03:16 -04:00
0a6b951447 Fixes anchors scrolling off the top of the screen during navigation. (#37548) 2018-03-16 21:35:41 -07:00
51662acc6c Clean up Grafana docs a bit (#37516)
* Clean up Grafana docs a bit

But more is needed, default values, missing choices, proper
descriptions, actual sentences :-)

* Remove validate-modules entries
2018-03-17 02:53:26 +01:00
775e8ed806 fix the typo
<!--- Your description here -->

 label: docsite_pr
2018-03-16 16:26:13 -04:00
e541bed186 Added parameters to na_cdot_volume (#37202)
* Added parameters to na_cdot_volume

Before this commit there were no parameter for creating a volume
and exporting it as NFS volume. The added parameters are:
- *junction-path* for specifying where to mount the volume in the namespace
- *export-policy* for specifying which export policy to apply to the given namespace
- *snapshot-policy* if required, applying a snapshot policy for scheduling data protection tasks

* Sanity fixes

* Sanity fixes (2)
2018-03-16 15:14:06 -04:00
872a7b4a7a add some Tower module integration tests (and fix a bug or two) (#37421)
* add additional test coverage for tower modules

* add test coverage for the tower_credential module

* add test coverage for the tower_user module

* fix a bug in py3 for tower_credential when ssh_key_data is specified

* add test coverage for tower_host, tower_label, and tower_project

* add test coverage for tower_inventory and tower_job_template

* add more test coverage for tower modules

- tower_job_launch
- tower_job_list
- tower_job_wait
- tower_job_cancel

* add a check mode/version assertion for tower module integration tests

* add test coverage for the tower_role module

* add test coverage for the tower_group module

* add more integration test edge cases for various tower modules

* give the job_wait module more time before failing

* randomize passwords in the tower_user and tower_group tests
2018-03-16 13:28:19 -04:00
594840c1d6 Close & remove paramiko connection where appropriate (#37528)
* Close & remove paramiko connection where appropriate

* Update unit test
2018-03-16 13:28:04 -04:00
93d2761551 Fix typo in timezone.py (#37442) 2018-03-16 11:18:03 +05:30
16f8a993a0 Increase delay and tries for ec2_vpc_net backoff - fixes #36063, fixes #37323, fixes #36078 (#37354)
* Increase delay and tries for ec2_vpc_net backoff

Wait for DHCP option to be created in ec2_vpc_dhcp_option

Wait for all modifications to the VPC

* Use the vpc_available waiter because is uses Filters

* Missed one

* Optimize retries to only occur if the functionality is available

* Increase max wait time

* Add comments to explain what the waiters are doing
2018-03-16 08:07:54 +10:00
cdd21e2170 Clean up module documentation (#36909)
* Clean up module documentation

This PR includes:
- Removal of `default: None` (and variations)
- Removal of `required: false`
- Fixing booleans and `type: bool` where required

* Fix remaining (new) validation issues
2018-03-15 22:15:24 +01:00
58eb2e849d Disable unstable azure_rm_virtualmachine test. 2018-03-15 13:48:03 -07:00
3cc362d958 Add missing YAML escape characters
These were missing after review PR #37486

 label: docsite_pr
2018-03-15 21:06:16 +01:00
e691e07646 Fix boolean input and string-type validation 2018-03-15 12:39:39 -07:00
981e89117a Improve Tower integration test support:
- Add TOWER_VERSION environment variable.
- Add error check for missing configuration.
2018-03-15 12:25:58 -07:00
70c0875dbc clarify input location 2018-03-15 14:27:39 -04:00
5d178c9287 Add .python-version to gitignore (#37483)
This file is used by pyenv tool to automatically activate env
2018-03-15 19:07:59 +01:00
a6617e4357 ovirt: Fix documentation for interface parameter (#37459) 2018-03-15 13:31:22 -04:00
85cc5ea129 Raise error when trying to use older iosxr modules with netconf (#37423) 2018-03-15 12:49:35 -04:00
a6d31b6fb1 apt: better error msg when update_cache fails (#37410) 2018-03-15 17:32:25 +01:00
6292fe1116 small typo fix
small typo fix
2018-03-15 11:01:32 -04:00
957ab02e52 Ensure network_cli nxos test is run only once - remove unnecessary files (#37462)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-15 17:52:54 +05:30
d3df0249af maven_artifact: add verify_checksum option - fixes #31799 (#33370)
* maven_artifact: add verify_checksum option - fixes #31799

* maven_artifact: some cleaning

* Remove blank lines to please the format checker

* Now targeting 2.6...
2018-03-15 06:43:08 -04:00
05b266cc66 fix nxos_udld issues (#37418) 2018-03-15 15:37:46 +05:30
995f6c7689 apt: clarify allow_unauthenticated docs (#37453)
* apt: clarify allow_unauthenticated docs

* Fix sanity check
2018-03-15 10:07:18 +01:00
5bdc8fe9f6 Clarify the apt module force documentation (#37353)
The force parameter is inherently insecure.  Be clearer in the
documentation that this is the case.

Fixes #25242
2018-03-15 01:24:32 -07:00
71e85a45c1 Add missing single quote in inventory_plugin doc (#37403)
Added missing single quote in inventory_plugin doc.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-15 01:23:34 -07:00
73512eeb78 timezone module: allow suse linux as target (#36719)
* timezone module: allow suse linux as target

* use with statement for file handling
2018-03-15 04:00:28 -04:00
a8487feb70 Fix ansible-test python and pip executable search. 2018-03-14 23:34:14 -07:00
dd37857884 fix ios_l2_interface (#37389)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-15 11:33:59 +05:30
7328c94268 Add turb as maven_artifact maintainer (#37424)
and flag chrisisbeef as ignored, because he has been inactive for many months already.
2018-03-15 14:01:31 +10:00
c718c42df4 ansible_tower modules doc: fix typos, use formatting functions (#37414)
* fix typos

* use formatting functions

* use 'job template' instead of 'job_template'

* acronyms: user uppercase

* become_enabled param is about privilege escalation
2018-03-15 13:58:50 +10:00
4bba66e664 doc: Update pscx examples (#37245)
* win_chocolatey: replace pscx example

PSCX is no longer distributed via Chocolatey: https://chocolatey.org/packages/pscx#comment-3762408157

* win_unzip example: install psxc via win_psmodule
2018-03-15 09:10:58 +10:00
0cf2ecbc62 Update porting_guide_2.5.rst
A fix to a minor typo. ("Previouslu" -> "Previously")

 label: docsite_pr
2018-03-14 17:02:51 -04:00
381359a8f8 Doc build warning/broken link clean-a-palooza (#37382)
* Doc build warning/broken link clean-a-palooza, WIP commit 1.

* Fixed broken anchor

* Fixing additional broken links; converting from doc to ref.

* Fix anchor
2018-03-14 12:44:21 -07:00
ff15a9e7e2 Document that this module was renamed recently (#37420) 2018-03-14 11:36:42 -07:00
8c992ccbc7 Allow filtering of instances by tags in GCE dynamic inventory (#35770)
* Allow filtering of instances by tags in GCE dynamic inventory

* Optimize instance tags configuration

* Fix for PEP8
2018-03-14 14:09:06 -04:00
dd0140dfed Add a note to iosxr_(command|config|facts) stating netconf is not supported (#37394) 2018-03-14 13:24:31 +01:00
841cb0e6a4 Add fact to obtain iSCSI initiator IQN 2018-03-13 17:39:53 -07:00
4378542ac7 Connection error messages are unsafe: wrap them (#37329)
* Check that connection error msg are not unsafe

* Connection error messages are unsafe: wrap them

For example, in case of error, docker connection plugin returns exception
message containing Go template. These messages weren't tagged as unsafe
and were consequently rendered:

The conditional check 'result is failed' failed. The error was:
{
  'msg': u'Docker version check ([\'/usr/bin/docker\', \'version\', \'--format\', "\'{{.Server.Version}}\'"]) failed: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.35/version: dial unix /var/run/docker.sock: connect: permission denied\n',
  'failed': True
}:
template error while templating string: unexpected '.'.
String: Docker version check (['/usr/bin/docker', 'version', '--format', "'{{.Server.Version}}'"]) failed: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.35/version: dial unix /var/run/docker.sock: connect: permission denied
2018-03-13 16:20:24 -07:00
30bb70cf2d Disable failing github_issue integration test. 2018-03-13 15:50:10 -07:00
042ad70da0 Production ACME v2 endpoint is available. (#37369) 2018-03-13 16:59:50 -04:00
93946ba627 Use NormalizedOperationMethod to catch ClientErrors so the waiter can handle them properly (#37356) 2018-03-13 16:02:39 -04:00
123694397a [openstack][docs] Fixing spelling error (#37351) 2018-03-13 14:21:23 -04:00
31878ee0ea Fix ansible_lo being used inside of ansible_facts
The logic was keeping ansible_facts['ansible_lo'] instead of fixing it
to be ansible_facts['lo']
2018-03-13 12:05:14 -04:00
aeb56e4bbe Accept list or string for ports is seport module (#36661)
* Accept list or string for ports is seport module

Fixes #36466

* Update docs
2018-03-13 12:04:27 -04:00
a1026dbce5 Eos :do not push config to device if check_mode is enabled (#37287)
* eos can not check config without config session support

* add testcase for check_mode without config session

* fix eos eapi to read use_session env var
2018-03-13 17:13:23 +05:30
dc61f4c6b1 Fix nxos_vrf issues (#37092)
* fix nxos_vrf issues

* fix doc
2018-03-13 17:08:37 +05:30
ba5e562c76 Fix nxos_l2_interface and test typo (#37336)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-13 13:36:38 +05:30
ff57fd0bb4 Fix nxos_switchport (#37328) 2018-03-13 12:03:05 +05:30
9031533c0c issue:36955 remove creating temp file for debug
Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-03-12 23:06:08 -04:00
80ba7b7402 Various module doc fixes (#37256)
This PR includes:
- A fix for multiple-choice defaults
- A fix for messed up dictionary samples
- Cleaner defaults when they don't appear part of choices
2018-03-12 13:50:52 -07:00
b945846814 Remove dead code
I wrote this code because we had a traceback at some point with pyyaml
not able to handle our AnsibleUnicode type (the C library was doing an
exact match to python's unicode type rather than testing with the object
inheritance hierarchy.) Neither jimi think that AnsibleUnicode gets
passed into this function anymore, though, so we think it is safe to remove.
2018-03-12 12:13:19 -07:00
099d8f0b56 route53_zone: enable check mode (#37201) 2018-03-12 14:43:43 -04:00
d54675b44b Add support for Cloudformation's parameter attribute UsePreviousValue (#31775)
* Add support for Cloudformation's parameter attribute UsePreviousValue
2018-03-12 13:46:36 -04:00
c1008d693c Fix eos_facts eapi integration test failures (#37301) 2018-03-12 20:12:44 +05:30
3ce325e35e Improving EC account key parsing (see #37275). (#37293) 2018-03-12 06:54:06 -04:00
d1332b83ee Add support for --quiet-build and --quiet-fail to portage module
PR #36452
2018-03-12 11:19:07 +01:00
16c564c4b4 fix spelling mistakes in several modules (#36296)
* fix more spelling mistakes

* fix spelling mistakes
2018-03-12 11:00:19 +01:00
a50db37c6c New module : digital_ocean_image_facts (#35887)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-11 11:43:23 -04:00
3bf6c50fa9 terraform: fixed typo, name error sdtout -> stdout (#37253) 2018-03-10 23:44:37 +01:00
c5c78ab045 ovirt_vms: Pass correct VM entity to create method (#37249) 2018-03-10 04:41:23 -05:00
11ad559010 Terminate Tower instances after CI ends. (#37265)
* Remove obsolete Tower support from manage_ci.
* Add missing remote settings to cloud tests.
2018-03-09 16:17:29 -08:00
8980d275a0 Support recursive suboptions schema (#37206)
* Support recursive suboptions schema

* Remove todo line, add voluptuous version constraint
2018-03-09 17:09:58 -06:00
5688d2243c Update support for Tower testing.
This is required for compatibility with the latest
version of ansible-core-ci, which now handles more
of the Tower instance setup.
2018-03-09 14:42:49 -08:00
1ceaf84108 Document compare_policies utility in AWS guidelines. (#37174) 2018-03-09 16:19:55 -05:00
cb53b717a4 Ansible Galaxy: skel for network role #37241 (#37251)
* Skel for network role (#37241)

Skel and boilerplate for network role.

* Add network option as valid type
2018-03-09 13:31:27 -05:00
c2a063a5c0 aws ssm parameter lookup - testing and documentation around negative and failure cases (#36550) 2018-03-09 12:30:33 -05:00
5506229e79 Remove restriction of SRV protocols (#36709) 2018-03-09 09:22:01 -05:00
5e827f4cc4 added nxos_smoke tests (#36647)
* added nxos_smoke tests

* add connection information, check length of output

* updated name of task
2018-03-09 09:03:33 -05:00
b440544e73 eos_config module exit session gracefully (#37244)
Fixes #36979
If `abort` is not issued in the top level session prompt
the existing session goes to pending state.
The fix is to come out of config mode by issuing `end` command
and again to same config session and execute `abort` which
`abort` is issued at the top level session prompt.
2018-03-09 19:24:23 +05:30
62f85d863a Update README.md 2018-03-09 13:53:49 +00:00
2501834c42 add nxos_snapshot test for missing required param (#37248)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-09 17:47:14 +05:30
90943a3362 Add APB role_type to ansible-galaxy init (#36789)
* Add APB role_type to ansible-galaxy init

* Add handlers scaffolding

* Fix shippable errors by setting default

* Add unit tests and fix shippable

* Updates init description
2018-03-09 06:50:17 -05:00
a10df8b0b5 fix required args for nxos_snapshot and docs improvement (#37232)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-09 14:08:01 +05:30
5234b78b5f modules: zypper: Optimize the 'search' subcommand (#37191)
When looking for installed packages we do not need to query
repositories since we only care about the rpmdb. As such, we can
disable all the repositories operations in order to improve the
performance of that step

Before this patch, when using 'state: present' in the zypper module,
the operation was taking about 12 seconds to complete:

time ansible-playbook foo.yml 1>/dev/null

real	0m12.614s
user	0m10.880s
sys	0m0.683s

After this patch:

time ansible-playbook foo.yml 1>/dev/null

real	0m4.193s
user	0m2.560s
sys	0m0.575s

see:
https://bugzilla.opensuse.org/show_bug.cgi?id=1084525
2018-03-09 03:28:36 -05:00
74e79d9f5e fix nxos_vrf_af issues (#37211) 2018-03-09 12:20:27 +05:30
c25a42bef6 VMware: New module : vmware_datastore_cluster (#36365)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-08 23:44:15 -05:00
1ec3d1f768 VMware: refactor vmware_datacenter (#36214)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-08 23:36:27 -05:00
e479e55f59 Fix the docs link to Ohai in the Ohai module (#33788) 2018-03-08 17:00:17 -08:00
fafcb3452f Porting guide (#37226)
* Add the lookup plugin strictness to the porting guide

* Edited for clarity.

* Wordsmithing.
2018-03-08 16:02:43 -08:00
708869edd6 win: handle non string as an environment value (#37215)
* win: handle non string as an environment value

* Changed powershell environment handler to use .net function instead for special chars
2018-03-09 08:02:54 +10:00
58261a42e9 Auto install of python-apt without recommends.
debian:9

`apt-get install python-apt` - this will install python2.7 and python3
After this operation, *88.4 MB* of additional disk space will be used.

`apt-get install --no-install-recommends python-apt` - only python2.7
After this operation, *35.0 MB* of additional disk space will be used.

(cherry picked from commit c542e62)
2018-03-08 16:21:30 -05:00
3134ba6bee Do not try to add an entry if none exist (#37152)
When commit revisions are disabled, there will be no revision items returned.
Add note about setting ANSIBLE_PERSISTENT_COMMAND_TIMEOUT to a higer value to avoid timeouts.
2018-03-08 14:36:32 -05:00
8f2c87231f Ensure the table spans the complete page width (#37129) 2018-03-08 10:48:42 -08:00
6636401246 Improve default values and choices in module docs (#36901)
* Improve default values and choices in module docs

So currently we show defaults and choices in separate columns.

For each parameter we have
- Mostly empty default and choices cells
- A list of choices and a separate default value
- Only a default value

So there's a lot of space being wasted on empty cells.
We can do this better.

* Improve Parameters section

* Add Choices back into column header

* Ensure the tables spans the complete page width
2018-03-08 10:48:15 -08:00
0130490faa cs_instance: fix py3 user_data base64 (#37135)
* cs_instance: tests: reproduce py3 user_data base64 issue

* cs_instance: fix base64 encoding with py3
2018-03-08 17:05:57 +01:00
4b6b2d4206 vultr: fix py3 compat (#37171)
* vr_server: fix base64 encoding with py3

* vultr: fix AttributeError with py3
2018-03-08 16:46:06 +01:00
155adb1631 Using correct content type (as per version 10 of ACME draft). (#37165)
* Using correct content type (as per version 10 of ACME draft).

* Another incompatibility with ACME v2: body must be {} and not contain v1 data (Pebble fails otherwise).

* Fixing bug: self.args in a subclass of Exception is apparently always a tuple.
2018-03-08 09:11:20 -05:00
02999b77a4 fix nxos_switchport/l2_interface trunk_vlans state absent (#37180)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-08 18:10:04 +05:30
d45ceb3a4f ovirt_hosts: Add option to choose to reboot the host (#35956) 2018-03-08 06:07:03 -05:00
19f92005b9 Update developing_api.rst (#37108)
Fix for #17716 and #36110
2018-03-08 10:48:48 +00:00
190d3fbbed cs_instance: fix error when state destroyed but querying user_data 2018-03-08 10:32:01 +01:00
6c8d40f653 yum is Python 2 only. If Python 3 use dnf (#37140)
* PY3 = dnf

Red Hat are unlikely to provide a Python 2 version of the yum bindings
as they are moving to `dnf`.

If Ansible can't find the yum Python library give the user a hint about
dnf and Python 3
2018-03-08 08:10:07 +00:00
2a0971435f examples fix: mode selection (#37128)
Mode selection in the examples didn't match (or work) for system: true.
It should be 
`mode: <mode here>`
2018-03-07 23:28:06 -05:00
5d410c2c69 doc: 2.3.3 has been released
Sources:
https://github.com/ansible/ansible/releases/tag/v2.3.3.0-1
https://pypi.python.org/pypi/ansible/2.3.3.0
2018-03-07 21:21:56 -05:00
cca0ccaf97 Fix unarchive with strip-components in extra_opts (#37048)
* Fix unarchive with strip-components in extra_opts

When unarchive is given extra_opts to strip all leading directories, it
could end up trying to change the permissions on the root directory.
Tar archives shouldn't contain absolute paths anyways so make sure that
all paths are relative as we handle them.

Fixes #21397
2018-03-07 17:14:51 -08:00
c1f5e11cdf win_uri: return response info on non 200 responses, convert DateTime values to ISO 8601 (#37104) 2018-03-08 09:43:42 +10:00
bd43776acf Add ansible-config and ansible-inventory to setup.py scripts (#37151) 2018-03-07 16:51:22 -06:00
b4bf502268 Initial Tower module integration test support. 2018-03-07 14:21:55 -08:00
b9b8081a87 Cleanup and enhancements for ansible-test. (#37142)
* Fix type hint typos.
* Add one-time cloud env setup after delegation.
* Add generate_password to util.
* Add username/password support to HttpClient.
* Avoid pip requirement for ansible-test shell.
* Support provisioning Tower instances.
2018-03-07 14:02:31 -08:00
5de7c9ce8f Add me as VyOS and EdgeOS maintainer (#37130) 2018-03-07 19:10:12 +00:00
8f3f7f104f DigitalOcean: typecast map function for Python3 (#37126)
In Python2, `map` returns list whereas Python3, `map` function
 returns iterator. This fix typecast map function for Python3.

Fixes: #37114

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-07 11:31:23 -05:00
7c07877b1b s3_bucket: add integration tests (#36941)
Also update testing-policies/storage
2018-03-07 11:25:24 -05:00
51d491f8f0 route53_zone: move to boto3, and enable comment update (#36641) 2018-03-07 11:16:04 -05:00
11f9286ab6 Fixes #37042
* correctly check that the no_device attribute is specified
 * ignore volume_size requirement if no_device is specified
2018-03-07 10:28:54 -05:00
99ce712259 ovirt_host_networks: Fix idempotency (#37075) 2018-03-07 10:25:32 -05:00
0fee332643 Added missing store regex pattern for prompt found after error (#35820) 2018-03-07 09:35:35 -05:00
bc6b96d42e webfaction modules: fix broken import (#35024)
* webfaction_app: fix broken import
* doc: use formatting functions
* webaction_db: fix broken import
* webfaction_domain: fix broken import
* webfaction_mailbox: fix broken import
* webaction_site: fix broken import
* webfaction modules: fix doc
2018-03-07 06:22:06 -08:00
a7371d4998 Having uppercase in the resource_prefix can cause unexpected issues
We may as well enforce lower case resource prefixes at source
2018-03-07 06:09:50 -08:00
e1297af18a cs_router: fix missing doc (#37107)
* cs_router: fix missing doc

* update ignore.txt
2018-03-07 13:34:39 +00:00
67d8c8f5c6 cs_ip_address.py: fix missing doc (#37109)
* cs_ip_address.py: fix missing doc

* update ignore.txt
2018-03-07 13:15:39 +00:00
ff28429e2a Network doc items that are done 2018-03-07 11:37:43 +00:00
2559e832df cloudstack: fix common E324 in docs (#37082)
Notes about precedence of common args.
Partly fixes E324.
2018-03-07 11:09:08 +01:00
c6a6ea5d98 Add reference to VNET resource group (#34576)
Ported #26052
2018-03-07 04:01:33 -05:00
b7bc61c7df fix nxos_l2_interface tests for fretta (#37086) 2018-03-07 10:15:56 +05:30
3fd5b0740e allow ANSIBLE_KEEP_REMOTE_FILES for local test runner (#33357)
* allow ANSIBLE_KEEP_REMOTE_FILES for local test runner
* add ANSIBLE_KEEP_REMOTE_FILES to tox.ini, update docs
* Clarify handling of environment variables.
2018-03-06 16:28:06 -08:00
efb8b539c1 Don't fail on configure in command (#37011)
* Don't fail on configure in command

* Change test to check mode
2018-03-06 18:10:09 -05:00
67ffde4ac1 win_wait_for: use loopback IP instead of hostname if 127.0.0.1 is used (#36762)
* win_wait_for: use loopback IP instead of hostname if 127.0.0.1 is used

* removed reverse dns lookup in port check
2018-03-07 08:40:57 +10:00
4705edd1a7 letsencrypt: add new param force (#37077)
* letsencrypt: add new param force to ignore remaining days

* letsencrypt: fix E325
2018-03-06 20:51:24 +01:00
f0dc0b28d4 Fix side-effect of flags being passed to ios get_config again (#37084) 2018-03-06 13:55:36 -05:00
23f15e6ff6 Lenovo license update (#36840)
* Editing the License text after Review of Lenovo Legal team.
2018-03-06 18:02:46 +00:00
80217f64e2 botmeta: new cloudstack maintainer (#37081) 2018-03-06 13:00:05 -05:00
c9cb0016a0 Fix consul module service deregistration (#34847)
* Fix consul module service deregistration

Upstream pr in the python-consul library:
https://github.com/cablehead/python-consul/pull/174

This is based on work from https://github.com/bobh

Fixes ansible/ansible#34628

* Pass ACL token when deregistering consul service
2018-03-06 11:57:04 -05:00
d984afa5ba Add compatibility for docker-py version 3 (#36973) 2018-03-06 07:14:31 -05:00
ebc71bcb16 Network modules to link to network guide (#37033)
* Network modules to link to network guide

* Make it clear what's deprecated
* enable -> become
* Detail when provider is still needed (eAPI/NX-API)
* Link to specific sections
* rx_rate & tx_rate to link to conditional docs
2018-03-06 12:01:07 +00:00
5f3feac7fa remove unused tx_rate and rx_rate from vyos_interface (#37062)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-06 16:38:48 +05:30
eb52a88fb6 Improve module docs return values (#36943)
* Improve module docs return values

Currently the 5 columns shown doesn't make optimal use of the screen
estate, especially for facts modules this is a problem.

* Add returned facts as a separate section

* Remove whitespace and add support section

Since Notes were moved higher up, the Author, Status and Maintainer
information was now placed under the Return Values section.

* Switch Last Updated and Copyright
2018-03-06 10:46:19 +00:00
7a4e270ae0 Link to new network platform pages (#37057)
Also fix a few broken links
2018-03-06 09:32:26 +00:00
4ed0e5072d fix nxos_vrrp issues (#36930) 2018-03-06 13:36:50 +05:30
51e8eab9db Fix n3k separate to combined image upgrade (#37017)
* Fix n3k separate to combined image upgrade

* Address review comments
2018-03-06 10:05:08 +05:30
ba3201cd2f Fix eos integration test failures (#37020)
Fixes #36919

Fix other eos modules integration test failure in dci
2018-03-06 10:04:40 +05:30
bcdaba57b5 Remove Sphinx/Read-the-Docs plug on every doc page (#37023)
* Remove Sphinx/Read-the-Docs plug on every doc page

No need to have this on every page.

This fixes #37021

* Reinstated RTD credit with revised wording.

* Re-removed RTD footer boilerplate.
2018-03-05 16:14:27 -08:00
cb79957b5f Make use of named links in documentation notes (#37027)
* Make use of named links in documentation notes

Now that it is possible to name external links, we are making use of
this to make the documentation better.

* Add improvements to ACI documentation

* Disable QA for long line

* Add :menuselection: and :guilabel:

* Improve links on some modules
2018-03-06 00:05:13 +01:00
c8ef07e015 Route custom waiter (#36922)
This creates a way for us to use boto3's data-driven waiter support to use custom waiters where Boto3 hasn't implemented them yet.

The only waiter implemented so far is for VPC Route Tables to check that they exist, and this replaces some custom retry code.
2018-03-06 08:22:16 +10:00
51558f12f4 Added variables to destroy command (#37028) 2018-03-05 16:09:03 -05:00
1bc860fafd Python3 issues in maven_artifact (#37035)
Fixes #33761
2018-03-05 12:11:27 -08:00
2d98a2de68 fix python3 compatibility for znode module
kazoo client requires bytes and not string
2018-03-05 12:00:46 -08:00
0a2dda2060 Support <hr/> in module docs (#37030) 2018-03-05 19:18:24 +00:00
905b3e2f65 fix NIOS DNS lookup example (#36737) 2018-03-05 13:52:02 -05:00
a2b3120e85 ec2_asg: fix #28087 and #35993 (#36679)
Fixes #35993 - Changes to update_size in commit eb4cc31 made it so
the group dict passed into update_size was not modified. As a result,
the 'replace' call does not see an updated min_size like it previously
did and doesn't pause to wait for any new instances to spin up. Instead,
it moves straight into terminating old instances. Fix is to add batch_size
to min_size when calling wait_for_new_inst.

Fixes #28087 - Make replace_all_instances and replace_instances behave
exactly the same by setting replace_instances = current list of instances
when replace_all_instances used. Root cause of issue was that without lc_check
terminate_batch will terminate all instances passed to it and after updating
the asg size we were querying the asg again for the list of instances - so terminate batch
saw the list including new ones just spun up.

When creating new asg with replace_all_instances: yes and lc_check: false
the instances that are initially created are then subsequently replaced.
This change makes it so replace only occurs if the asg already existed.

Add integration tests for #28087 and #35993.
2018-03-05 11:47:31 -05:00
ce416f247f Fixes commit a28eb94, which broke validate_certs = False for python < 2.7.9 (#34887) 2018-03-05 11:34:03 -05:00
daeec920b0 ini_file: add allow_no_value param (#24442) 2018-03-05 17:05:41 +01:00
7d0e1f92f4 [terraform] Support initializing modules and providers at runtime (#36996)
* Fixes #36994

Added function for force initializing modules and providers

Added type for force_init parameter
2018-03-05 11:01:53 -05:00
985f09270d Ability to link to other pages from plugin docs (#37009)
Support relative links
2018-03-05 15:16:58 +00:00
7016b3b9ca ios_static_route idempotence fix (#35912)
* Remove default admin_distance and fix the idempotence thereof

Fixes #33290

* Fix tests and use yaml anchors to shorten tests

* Add test for undefined admin_distance

* Read config from `show run` if `show ip static route` fails

* Restore flags to ios.get_config &  use get_config where appropriate
2018-03-05 09:28:37 -05:00
0feea66988 Move _start_connection() to module_utils/connection and fix Popen() call (#36249)
* Fix Popen() call to use ansible python

* Remove PATH searching, reuse location of ansible instead
2018-03-05 09:12:01 -05:00
6cbc69447b adds fix for terminal plugins 2018-03-05 08:54:40 -05:00
18d605a132 ugh q 2018-03-05 08:54:40 -05:00
d1ff03e84c fixes cliconf and netconf plugin loaders
This change updates the configuration and plugin loader objects for
cliconf and netconf to pull be able to configure where to find the
plugins.
2018-03-05 08:54:40 -05:00
4021194532 Fix_regex (#36569) 2018-03-05 06:30:37 -05:00
6578403288 cs_zone_facts: implement return facts as ansible returns (#36993) 2018-03-05 11:42:38 +01:00
d1eb4fe58c VMware: Refactor vmware_target_canonical_facts (#36964)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-04 10:20:47 +05:30
e0945900df New module: digital_ocean_snapshot_facts (#35897)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-04 10:19:58 +05:30
8824a8fe23 Assume firewall is offline on DBUS_ERROR during init (#36486)
During init, the FirewallClient tries to connect to the DBUS socket.  If it
fails to connect it should be safe to assume firewalld is offline.
2018-03-03 21:59:10 -06:00
83aaa8137a Fix Base64 decode TypeError (#36968)
```
TypeError: expected bytes-like object, not str
```
2018-03-03 16:33:07 -05:00
b973fff276 New module: digital_ocean_load_balancer_facts (#36966)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-03 21:55:54 +05:30
3ead89e3c5 New module: digital_ocean_tag_facts (#36965)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-03 21:55:21 +05:30
e7f9c5cc60 Copy edits and tweaks 2018-03-02 18:14:07 -05:00
cf43e0d605 updated api example
- added many more comments
- removed very obsolete 1.x refs
2018-03-02 18:14:07 -05:00
aa1e491244 [cloud aws_s3] Enforce required parameters for the various aws_s3 modes (#36767)
[cloud aws_s3] Most modes require `object` parameter, and this is easy to
get wrong (e.g. through confusion with the `dest` parameter). As
it's as easy to enforce, let's do that.
2018-03-02 16:33:04 -05:00
836d7a42a4 Remove old boto documentation and promote AnsibleAWSModule (#36763)
There should no longer be a need for boto documentation - it
just adds significant extra clutter to the guidelines.

AnsibleAWSModule greatly improves the codebase to such an extent
that we should mandate it for new code unless there is a
documented good reason.
2018-03-02 14:03:12 -05:00
3a161fa157 VMware: new module : vmware_datastore_maintenancemode (#36436)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-02 23:35:53 +05:30
2f72d082c0 Use Tower v2 API when available, falling back to v1 where necessary (#36663)
* Use Tower v2 API when available, falling back to v1 where necessary
2018-03-02 11:31:53 -05:00
a3390b63fe Reversed orser of icmp_type and icmp_code per bug 36378 (#36380) 2018-03-02 16:09:32 +01:00
83c3561ee5 Enable eapi integration test for eos modules (#36934) 2018-03-02 12:39:00 +05:30
ef7f3fcab6 eos_static_route fix (#36903)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-02 08:50:27 +05:30
07bc98f019 Additions to AWS Module Guidlines from Pull Request Feedback (#36834)
* Update doc of AnsibleAWSModule to remove incorrect connect example.

Current example uses aws_connect method which no longer exists. Replace
this with the client and resource methods that do exist.

Also remove try/except block in connect example as guidelines imply that
there aren't connection errors thrown on connection, just when later
sing the connection.

* Update AWS module guidelines to include the AnsibleAWSModule connection methods.

* Add information on integration testing to the AWS module guidelines.

* Add information on common documentation fragments to AWS module
Guidelines.

* Changes as requested on PR.

* Restructure connection section to start with current best practice
* Explain the use of the CI build groups
* Use YAML Anchors for aws credentials example

* Replace guidance on use of test groups with link to aliases file.

This achieves the goal of explaining why this file is necessary without
introducing overhead of keeping documentation up to date when test
groups change.
2018-03-02 11:40:01 +10:00
858d10a91a Clean up VMware BOTMETA and author/license info (#36873)
* Clean up vmware BOTMETA

This removes everything that's already part of the module docs. So
basically the BOTMETA file only extends the information from the module.

* Updated author information and copyright statement
2018-03-02 01:07:17 +01:00
9deef5626f Only create tags if tags are provided (#36921) 2018-03-01 15:30:08 -05:00
0e7106b106 properly pass /api/v1/ credential fields for older Towers (#36917) 2018-03-01 15:22:29 -05:00
fe10685b01 Add more maintainers to team_tower 2018-03-01 12:15:57 -08:00
7ade607525 Add variables and variable_file in terraform module (#36879)
* Fixes #36837

Added terraform variables for validate command

* Fixes #36837

Changed method from append to extend.
2018-03-01 12:50:49 -05:00
b12e90311f map network_os to ncclient device_params (#36819)
* map network_os to ncclient device_params

Fixes #36786

* update device map

* Add default netconf fallback plugin
2018-03-01 22:23:14 +05:30
ca092b5c26 Skip top level args that are the same as args in provider in doc<->arg_spec comparisons (#36911) 2018-03-01 10:47:20 -06:00
a82043939b properly detect the absence of credential_type in older tower-cli (#36908) 2018-03-01 10:36:18 -05:00
ac11027d58 Convert key to snake. Fixes #36845. (#36887) (#36904) 2018-03-01 10:03:32 -05:00
808f45db55 Allow configuration of manual mac address (#35504) 2018-03-01 20:24:40 +05:30
3a6f0fbb9c Allow inversion of uid_owner match in iptables module (#36073)
Fixes #20747 and updates documentation for uid_owner in iptables.py
2018-03-01 12:24:02 +00:00
9db509db80 corrected typo in documentation examples (#36894) 2018-03-01 08:55:28 +01:00
5c2a1a6124 Fix eos_vrf integration test failures (#36893) 2018-03-01 13:05:39 +05:30
41d75783b5 Fix junos_command py3 related issues (#36782)
Fixes #36204

*  tostring() input string shoulb be in byte string format
*  to_ele() input is required in unicode format
2018-03-01 12:09:11 +05:30
2fbfce06e7 Fix nxos_interface multiple issues (#36827)
* fix interface_type

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

* fix setting mtu, doc for state check param, doc for params applicable for ethernet intf

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

* speed idempotence and add unittest

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

* fabric_forwarding_anycast_gateway applicable for svi type intf only

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

* fix speed

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-03-01 10:56:16 +05:30
e2615308f9 Include Digital Ocean Token Alias (#36810) 2018-03-01 09:56:53 +05:30
0694aca2a0 VMware: refactor configure disk logic (#36617)
This fix corrects logic related to disk parameters.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-01 09:36:54 +05:30
6601e78dfa Wrong syntax 2018-03-01 03:07:03 +01:00
f923299fe8 Adds the ability to override the doc build output directory from the command line. (#36604)
* Adds the ability to override the doc build output from the command line.

* For safety, removed straight rm of BUILDDIR and removed subdirectories instead.

* Added check to see if BUILDDIR was defined to main makefile
2018-02-28 16:01:18 -08:00
4a6758b74f Update playbooks_filters_ipaddr.rst (#36883)
Fixed a typo since the example should be referencing the newly defined list.
2018-03-01 09:25:40 +10:00
809106ba77 fix unixy when debug's msg is not text (#36882)
fixes #36850
2018-03-01 09:23:39 +10:00
cf6726397e Add tbjurman to team_nso (#36861) 2018-03-01 09:09:42 +10:00
274a4b0688 gitlab_project: don't ignore errors (#36702)
* gitlab_project: check that errors are reported

* gitlab_project: report encountered errors

Fix #36495
2018-02-28 23:22:47 +01:00
c3a805aa3c minor wording changes to remove ambiguity 2018-02-28 16:47:41 -05:00
45e7689335 Fix lineinfile example
The examples comment said 'Add a line to a file if it does not exist, without passing regexp' which suggests, that the file is being created. But the default for 'create' is false. Thus the example lacked this option.
2018-02-28 16:47:41 -05:00
4f63123320 Network Platform docs (#36814)
* introduces platform docs
2018-02-28 15:16:32 -06:00
eae0aa0592 Automatically stuff reference in commit message (#36844)
* Automatically stuff reference in commit message

So we probably want to track which edits were performed through the
Github interface, and this change automatically adds a label to the
commit message.

```yaml
<!--- Your description here -->

+label: docsite_pr
```

Eventually this allows to (on regular basis) list the changes from
documentation readers and process them in a separate process.
2018-02-28 21:14:57 +00:00
629278464f Improve contribute-message in document footer (#36841) 2018-02-28 09:21:24 -08:00
3b27d723fb Fix indentation of requirements (#36813)
Just discovered that the requirements were indented, whereas all other
lists were not. This makes them stand out for no good reason.
2018-02-28 17:16:18 +00:00
38abda544f Improve module docs wrt. required params (#36812)
So I am still not satisfied with how required parameters are being
displayed (before it was yes/no, then it became required/optional, and
only required).

Now it will display in small green 'required' under the parameter name.
This is more convenient, and provides more room for the description.
Especially on smaller screens.
2018-02-28 09:00:56 -08:00
974c50a417 Move notes higher up in order (#36815)
So people reading the module documentation usually look for parameters
first, and are interested in examples. However the notes are at the very
end even below the Return Values (the least interesting part).

So this change moves the notes higher up, below parameters, but before
examples so people at least see the notes.
2018-02-28 08:58:49 -08:00
6633eaa2c1 crypto: Fix incorrect type for privatekey_passphrase (#36868)
Fix incorrect type for privatekey_passphrase path -> str
2018-02-28 17:19:22 +01:00
41c066eff9 Fix broken links (#36864) 2018-02-28 15:54:58 +00:00
529bc0edc6 New module: digital_ocean_size_facts (#35898)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-28 20:11:53 +05:30
3f19ef680a aws_ssm_parameter_store module - value parameter should be no_log since it's often a secret (#36843) 2018-02-28 14:40:58 +00:00
60e39b9718 Updated the documentation of modules to match argspec including the type setting for bool parameters (#36821) 2018-02-28 14:38:03 +00:00
8362ddd107 clarify the slicing example (#36842)
As stated by fellow contributors, update the slicing example

Resolves:
Related: #36625
Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2018-02-28 13:28:38 +00:00
365220bea5 ovirt_vms: Fix NoneType in placement policy check (#36775)
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1549082
2018-02-28 08:05:58 -05:00
5859c102ee Add documentation for import FCP storage domain (#36780)
FCP storage domain task, does not need to contain port or address
since the storage domain is already on the Host.
Added an example for FCP import.
2018-02-28 08:05:48 -05:00
a0db015454 ovirt_host_networks: Fix removing the label (#36783) 2018-02-28 08:05:32 -05:00
d1214484e6 ovirt_vms: Fix boot devices idempotence (#36833) 2018-02-28 08:04:28 -05:00
3911b9c53a typo 2018-02-28 12:41:16 +00:00
b3c64ecd09 khjh
j
2018-02-28 12:40:31 +00:00
042c111563 nso_config break cycles in dependency sorting (#36828)
False assumption that values can not have cyclic dependencies. Fix by
removing dependency on self and look for cycles, if found remove
dependency to get a partial sort done.
2018-02-28 11:16:49 +00:00
dc71c2197f More code-smell sanity test updates. (#36830)
* Add test for missing Azure requirements.
* Improve readability.
* Enhance no-unicode-literals code-smell test.
2018-02-28 00:50:00 -08:00
a031e02ab0 Add aws_caller_facts module to changelog (#36823) 2018-02-28 17:42:51 +10:00
5a295162ab Add gdpak to networking team (#36822) 2018-02-28 12:20:59 +05:30
645952c139 Add aws_caller_facts module and use it in setup-iam.yml (#36683)
* Add aws_caller_facts module and use it in setup-iam.yml

This removes the dependency on having the command line AWS tools
installed.
2018-02-28 16:30:34 +10:00
db43fe6a76 nxos_facts fix and integration tests (#36796)
* fix nxos_facts ipv6 error

* time_range not supported for N35
2018-02-28 10:45:50 +05:30
8d49bb6eee VMware: new module: vmware_host_capability_facts (#36497)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-28 09:54:52 +05:30
398b3a4d76 ACI: Parameter username is not required (#36817) 2018-02-28 05:07:56 +01:00
68b39f7a84 Parameter method is not required (#36816) 2018-02-28 04:56:16 +01:00
ac1698099d Overhaul additional sanity tests. (#36803)
* Remove unnecessary sys.exit calls.
* Add files filtering for code-smell tests.
* Enhance test-constraints code-smell test.
* Simplify compile sanity test.
* Pass paths to importer on stdin.
* Pass paths to yamllinter on stdin.
* Add work-around for unicode path filtering.
* Enhance configure-remoting-ps1 code-smell test.
* Enhance integration-aliases code-smell test.
* Enhance azure-requirements code-smell test.
* Enhance no-illegal-filenames code-smell test.
2018-02-27 15:05:39 -08:00
5b5a79917d Fix author string in documentation section (#36798) 2018-02-27 20:25:24 +00:00
3240fee9fd Add Pure Storage FlashBlade Snapshot module (#32505) 2018-02-27 20:07:34 +00:00
de7692b1c9 Explain what the Ansible Quickstart video does (#36453)
* Explain what the Ansible Quickstart video does

Rewrote what video does. The video is really not teaching you how to do the work. It explains why you'd want to use Ansible and shows you what it takes (some sample code) . Video also introduces you to other products in the Ansible ecosystem.

* Edit
2018-02-27 18:40:24 +00:00
50e989f906 docs: Workaround for non-string values (#36720)
* Workaround for non-string values

So I think the proper fix should go into html_ify, which should convert
any value into a string, rather than expecting strings only.

* My preferred solution
2018-02-27 18:28:47 +00:00
e75989ec88 nso_config work around ordering issues (#36774)
Include dependencies when sorting entries to avoid issues with certain
versions of NSO.
2018-02-27 15:22:57 +00:00
52627f3fa0 Added extra choice floppy for bootdev option in ipmi_boot module (#36174) 2018-02-27 15:18:55 +00:00
57f01c63e9 Add missing import keyword into snippet in Guidelines
PR #36779
2018-02-27 15:22:00 +01:00
443327f665 New module: digital_ocean_region_facts (#35911)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-27 19:24:29 +05:30
e00406740f BOTMETA: label:docs (#36757)
Don't use different labels for docs, that's what is:pr and is:issue is
for.

Discussed and approved by dharmabumstead

Makes it easier to do label:docs label:networking to find all issues
and PRs
2018-02-27 12:03:24 +00:00
60a24bbdaa Pass code-smell paths on stdin. 2018-02-27 00:36:16 -08:00
87d6bdaf98 VMware: Re-enable VM poweroff testcases (#36734)
This testcases were failing due to vcsim version.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-27 09:04:42 +05:30
e15a903bdf Win lineinfile fix (#35100)
* win_lineinfile: fix #33858. Removed conversion from \r\n

* win_lineinfile: added test for #33858

* win_lineinfile: added documentation and more tests for change

* win_lineinfile: fixed wrong hash in testing
2018-02-26 19:34:44 -05:00
c2feab0606 fix plugin-to-doc naming mismatch, typos, grammar (#36366) 2018-02-26 14:25:28 -08:00
9c81b5d92b Fix table display width. (#36728) 2018-02-26 14:24:34 -08:00
009f536d4e Update default docker container SHA.
ci_complete
2018-02-26 13:23:22 -08:00
7a81d5f11e removed now irrelevant section
fixes #35760
2018-02-26 14:25:43 -05:00
3937082892 Fix rst link syntax. 2018-02-26 11:17:43 -08:00
602f059875 Add atomic_move in ini_file module
Fixes #34181
2018-02-26 10:53:40 -08:00
641f8b4ef6 tower cred: support credential kind/type for /api/v1/ and /api/v2/ (#36662)
older versions of Tower (3.1) don't have a concept of CredentialTypes
(this was introduced in Tower 3.2).  This change detects older versions
of pre-3.2 tower-cli that *only* support the deprecated `kind`
attribute.
2018-02-26 13:12:54 -05:00
6bd715a17d skip fmg_script unit test if the pyFMG script is not present (#36732)
* skip fmg_script unit test if the pyFMG script is not present

* appease the sanity test gods
2018-02-26 12:01:14 -05:00
fb6a8c0133 fix cliconf get_config method to match base signature (#36682)
This commit fixes up the get_config method to match the minimum method
signature as defined by the base class.  Without this patch, the
get_config method calls will fail in some cirumstances.
2018-02-26 10:56:22 -05:00
eb162bdf7f Add space between arguments for acme-tiny (#36739)
Currently, the module fail with a error saying that --acme-dir is mandatory.
Looking at the commandline:

    /usr/sbin/acme-tiny --chain --account-key /srv/letsencrypt/acme_key/acme.key
    --csr /srv/letsencrypt/nginx_certs/www.example.org.csr--acme-dir /srv/letsencrypt/webroot",

We can see that the space before --acme-dir is missing.
2018-02-26 09:15:17 -05:00
ff0f6286d7 Docker service update project_name doc (#36713)
```
FAILED! => {"changed": false, "msg": "Parameter error - project_name required when providing definition."}
```
2018-02-26 08:25:50 -05:00
2789cc5c09 NSO ValueBuilder improvements. 4.5 leaf-list compatability. (#36583)
Fix issues in ValueBuilder used in nso_config and nso_verify so that it
can handle leaf-list in NSO 4.5 and detect identityref types from
unions.

Fail gracefully if a type is not found.
2018-02-26 13:18:20 +00:00
b61b4bef11 Update team_nso members (#36652) 2018-02-26 13:17:44 +00:00
8b52006d5c Fix sanity checks in OpenStack docs fragment (#36722)
* Fix sanity checks in OpenStack docs fragment

Signed-off-by: Mário Santos <mario.rf.santos@gmail.com>
2018-02-26 13:05:53 +00:00
93b795baf0 allows ib_spec attrs to be filtered in update (#36673)
* allows ib_spec attrs to be filtered in update

This change will allow the ib_spec entries to be be filtered on a change
object by setting the update keyword to false.  The default value for
update is true.  When the update keyword is set to false, the keyed
entry will be removed from the update object before it is sent to the
api endpoint.

fixes #36563

* fix up pep8 issues
2018-02-26 07:55:26 -05:00
cdb2969703 cs_sshkeypair: fix ssh key rename (#36726)
* tests: cs_sshkeypair: add reproducer for failed key rename

* cs_sshkeypair: fix rename ssh key
2018-02-26 13:43:40 +01:00
487ff1fe9b Fix typos (#36671)
Fix minor typos
2018-02-26 11:24:53 +00:00
581a0637ba DigitalOcean: new module: digital_ocean_volume_facts (#36004)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-26 16:15:15 +05:30
1c43f7c482 FreeIPA inventory (ipalib 4.6.2): avoid exception (#34356)
Workaround for https://pagure.io/freeipa/issue/7345.

mentions:
- IPA_CONFDIR environment variable when directory doesn't exist
- domain, xmlrpc_uri or jsonrpc_uri parameters when one is missing

Exception was:
$ IPA_CONFDIR=/path/to/empty/dir ./ansible/contrib/inventory/freeipa.py --list
Traceback (most recent call last):
  File "./ansible/contrib/inventory/freeipa.py", line 95, in <module>
    api = initialize()
  File "./ansible/contrib/inventory/freeipa.py", line 18, in initialize
    api.finalize()
  File "local/lib/python2.7/site-packages/ipalib/plugable.py", line 738, in finalize
    self.__do_if_not_done('load_plugins')
  File "local/lib/python2.7/site-packages/ipalib/plugable.py", line 425, in __do_if_not_done
    getattr(self, name)()
  File "local/lib/python2.7/site-packages/ipalib/plugable.py", line 618, in load_plugins
    for package in self.packages:
  File "local/lib/python2.7/site-packages/ipalib/__init__.py", line 949, in packages
    ipaclient.remote_plugins.get_package(self),
  File "local/lib/python2.7/site-packages/ipaclient/remote_plugins/__init__.py", line 120, in get_package
    server_info = ServerInfo(api)
  File "local/lib/python2.7/site-packages/ipaclient/remote_plugins/__init__.py", line 26, in __init__
    hostname = DNSName(api.env.server).ToASCII()
AttributeError: 'Env' object has no attribute 'server'
2018-02-26 05:07:51 -05:00
54e9096950 Add integration test for #36534 (#36581) 2018-02-26 09:49:25 +01:00
4c20d16549 DigitalOcean: new module: digital_ocean_account_facts (#36003)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-26 14:11:26 +05:30
d94a1ef4cc VMware: refactor vmware_datastore_facts (#36423)
This fix adds datastore cluster details about datastore in returning
facts. Updated documentation and tests.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-26 13:23:22 +05:30
435649274b VMware: Hardware version support (#36562)
This fix adds support for specifying hardware version for
virtual machine.

Fixes: #35831

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-26 13:21:43 +05:30
44332bda78 fix nxos_vlan aggregate (#36710)
* fix nxos_vlan aggregate

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

* Add test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-26 12:29:49 +05:30
d6912cf40e nxos_linkagg fix (#36706)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-26 11:21:51 +05:30
5a6b893240 Decouple config and state check in vlan and vrf network modules (#36386)
* Decouple config and state check in {network_os }_vlan and { network_os }_vrf modules

Fixes #35567
Fixes #34754

`interfaces` option is used for configuration as well as operational state
check. If interface is configured to given vlan or vrf but if
operational state of interface is disabled it results in module failure.

Fix is to decouple same option usage for config and state.
With this fix `interfaces` is used as config option and a new
option named `associated_interfaces` will be used for intent check
for assigned interfaces.

* Fix CI failures

* Fix review comment

* Fixed integration test failure
2018-02-26 09:23:54 +05:30
215c80f9dc Add meraki 2018-02-26 01:14:07 +01:00
8f6eea50db More improvements to ACI module docs (#36689)
* More improvements to ACI module docs

* Asorted improvements

* Found 2 more

* Improvements to aci_rest documentation
2018-02-25 19:13:16 +01:00
984bface14 Remove $team_ansible refs covered by $team_windows 2018-02-25 18:58:33 +01:00
141d638e59 Typo in github handle :-/ 2018-02-25 16:47:38 +01:00
4ff0317f3e Improve module doc parameter list (#36688)
This PR includes:
- Indentation of Jinja constructs
- Put parameter name in bold
- Title-case table headers
- Show 'required' when parameter is required (not yes/no)
- Left-align all values
2018-02-25 16:40:27 +01:00
07e8fb5dbb Windows: Clean up documentation (#36684)
This PR includes:
- Further cleanup of BOTMETA.yml
- Cleanup of author github handles
- Use of proper booleans
- One-line license statement
- Copyright format statement
- Smaller cleanups
2018-02-25 03:09:54 +01:00
4ab96722cf Clean up $aci_team and Windows stuff
This should get rid of most of the implicit Windows stuff.
2018-02-24 23:19:03 +01:00
97fde8c760 ACI: Asorted fixes to documentation (#36681) 2018-02-24 22:50:54 +01:00
f283edcb19 Temporarily disable subversion test on osx. 2018-02-24 13:46:40 -08:00
7cf08e9986 Improve parameter required values and ref fix (#36680)
This PR includes:
- An improvement to the parameter listing, where instead of yes/no, it
  is indicated with required/optional (easier when scrolling through a
  long list of parameters)
- Ensure that module reference, eg. M(foobar) do not include the module
  document title
2018-02-24 22:36:08 +01:00
e520ff2e99 docsite: Improve previous fix for smartphone/tablet (#36678) 2018-02-24 21:45:25 +01:00
5da948f792 Fix rendering docsite on smartphone/tablets (#36675) 2018-02-24 17:16:40 +01:00
8a040415f9 Fix module references in module docs (#36674) 2018-02-24 17:16:24 +01:00
3016bc7351 Asorted docs fixed (#36672)
This PR includes:
- A fix to untemplated {{ plugin_type }} in docs
- Remove the additional info on how to edit module docs (see #36667)
- Add missing delimiter
2018-02-24 14:06:12 +01:00
ba370b178d docsite: Add 'Edit on GitHub' for module docs (#36667)
This is something I always wanted, a 'Edit on GitHub' button for module
documentation.

I also removed the additional statement in the footer with instructions
on how to edit the module documentation.

PS The links go directly into the GitHub file editor now !
2018-02-24 03:57:37 +01:00
fde4cc6219 guide_aci: Fix a few references (#36666) 2018-02-24 01:47:44 +01:00
665f5b4e9c ACI: Improve module index short_description (#36665) 2018-02-24 01:27:37 +01:00
1abc47c5d3 Fixed indentation error in facts-demo.yml example. (#36645)
* Fixed indentation error in `facts-demo.yml` example.

`content` and `dest` should be indented under the `copy` module.

* Updated indentation of copy module in `facts-demo.yml` example.

Updated indentation of copy module in `facts-demo.yml` to be inline with its name.
2018-02-24 00:38:50 +01:00
7da7ba79bc Add anchors to some guides and all module categories (#36642)
* Add anchors to some guides and all module categories

This is required if we want to use *absolute* :ref: references instead of *relative* :doc: references.

* Update the Cisco ACI Guide reference

* Add `aci_guide` anchor

* Add `network_guide` anchor

* Add category anchor

* Improve readability

* Fix small typo
2018-02-23 17:10:47 -06:00
2a0c7c4331 Fix documentation of validate_certificates option in aws doc_fragment.
Unignore sanity test failures for AWS modules caused by this common
fragment.
2018-02-23 13:21:44 -08:00
ea1f5e59d3 Notify acozine & gundalow on Network Docs (#36655)
Now we have a docs directory notify and add labels on any network docs
PRs
2018-02-23 20:17:19 +00:00
2f13ddbd69 debug should have item (#36534)
* debug should have item

* item should only be present when var
2018-02-23 15:12:14 -05:00
ef40e5e3b2 protect against plugins using verify incorrectly
assume false on any errors
2018-02-23 15:11:01 -05:00
076ea07bb5 Add instructions for creating backport PRs (#36593)
* Add instructions for creating backport PRs

* Update development_process.rst

simpler workflow

* Update development_process.rst

added origin note

* A few adjustments to clarity, use backport instead of cherry pick in branch name

* Address formatting issue

* fetch isn't a flag

* Fix rst formatting
2018-02-23 09:51:36 -06:00
8a41233202 tower cred: update kind options in documentation 2018-02-23 10:49:07 -05:00
cd6855275e tower cred: filter user name lookup by the proper key 2018-02-23 10:49:07 -05:00
9cb4b70e27 tower cred: implement credential /api/v1/ kind compatability 2018-02-23 10:49:07 -05:00
640749d54f Fix credentials for Tower API V2 2018-02-23 10:49:07 -05:00
53cfd70b7d Adds k8s_raw, openshift_raw tests (#36228) 2018-02-23 10:13:09 -05:00
a1241d99ee Updated examples aci_contract_subject_to_filter.py (#36626)
Changed examples to reference the correct module name. Previously the examples used "aci_subject_filter_binding".
2018-02-23 13:00:26 +01:00
07927f52ae filesystem: fix documentation (#36556) 2018-02-23 10:59:38 +00:00
62f237f21e fix erroneous example in inventory (#36625)
After initializing a list in both Python2/Python3 with below elements,
I've tested the indexing and realised that the examples provided in the
documentation are erroneous.

As a result, update the examples with correct values in order to avoid
any future confusion.

Resolves:
Related:
Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2018-02-23 10:46:31 +00:00
a79a5439c8 yum: fix yum version comparison (#36573) 2018-02-23 08:55:11 +01:00
a7db945ac6 aci example minor fix testing actual real life scenario examples (#36613) 2018-02-23 03:04:40 +01:00
68a97ca558 added additional examples for aci modules (#36612)
* added additional examples for aci modules

* small fix on aci_fabric_node

* removing jina2 for clarity
2018-02-23 02:39:58 +01:00
d212bcf1e7 ec2_group:documentation explicit a behaviour for sg rules (#36586) 2018-02-23 09:24:25 +10:00
a7062b7587 Start of tests for modify_module, specifically to ensure proper shebang replacement on old style modules (#36602) 2018-02-22 16:27:53 -06:00
4a8b4bb8a8 Bump OpenShift client req to 0.4.3. Fixes openshift_scale. (#36601) 2018-02-22 16:31:47 -05:00
51a010a696 Network Getting started docs (#36337)
* first draft of getting started guide
2018-02-22 20:43:04 +00:00
b96ab46566 Initial commit for Pure Storage FlashBlade module (#32467) 2018-02-22 15:33:48 -05:00
73fd593d45 aws_ec2 inv plugin: remove extra call to verify_file (#36588)
* Remove extra call to verify_file

* Allow next inventory plugin to be tried if the file isn't verified
2018-02-22 12:10:47 -05:00
5b5cba5e50 Update more code-smell tests. (#36570)
* Enhance use-compat-six code-smell test.
* Enhance use-argspec-type-path code-smell test.
* Enhance replace-urlopen code-smell test.
* Enhance boilerplate code-smell test.
* Enhance no-underscore-variable code-smell test.
2018-02-22 08:08:29 -08:00
0e0d6cf4f2 Update zabbix_maintenance.py (#36123)
clarify that removal happens by name - while expected, it's good to be explicit
2018-02-22 10:46:04 -05:00
d31d981aa5 Updated vmware URL for guest_ids (#36511) 2018-02-22 12:17:11 +05:30
891f4f3b2d Upgrade more code-smell tests. (#36560)
* Enhance no-dict-* code-smell tests.
* Enhance no-basestring code-smell test.
* Enhance no-get-exception code-smell test.
* Enhance empty-init code-smell test.
* Enhance required-and-default-attribute test.
* Remove unused code-smell test.
2018-02-21 20:09:13 -08:00
a4df4d33ac Fix types when evaluating interpreter (#36541)
* Fix types when evaluating interpreter. Fixes #36536
* Rename variables that contain bytes to b_*
* Get rid of to_text() and to_bytes() calls that do nothing (because the
  data is already the proper type)
2018-02-21 18:03:16 -08:00
ef4f8851dc win_feature: better error handling to make it easier to debug issues (#36491)
* win_feature: better error handling to make it easier to debug issues

* removed ignroed pslint rules that are no longer needed
2018-02-22 11:33:48 +10:00
3abaa43b1c efs: improve documentation about the update of an efs (#36473) 2018-02-22 10:30:50 +10:00
a655bdb72e Add missing copyright notice
I did a large part of the unzip implementation and gtar functionality.
2018-02-22 01:23:53 +01:00
430088c6f0 aci_interface_policy_leaf_policy_group: Fix test (#36551) 2018-02-21 23:48:10 +01:00
723daf3e3a Check for regexp match when using insertbefore or insertafter (#36474)
Add tests to cover this scenario
Fixes #36156
2018-02-21 17:03:38 -05:00
afdd748f4c changed cisco mail to normail hotmail (#36546) 2018-02-21 23:01:26 +01:00
4d4553bbb0 [cloud] catch NoCredentialsError in boto3_conn (#36537) 2018-02-21 16:39:01 -05:00
53125d37d1 add aci_static_binding_to_epg integration tests (#36542) 2018-02-21 21:45:38 +01:00
31bd214682 minor fix to exit_json for aci_static_binding_to_epg.py (#36540)
* minor fix to exit_json for aci_static_binding_to_epg.py

* The aci.exit_json() call doesn't need arguments
2018-02-21 21:17:41 +01:00
a77b89e7b5 [cloud] ec2_group: fix check mode when using tags (#36503)
Fixes #36412
2018-02-21 14:48:51 -05:00
51ba115dea aci_domain_to_encap_pool: Remove integration tests (#36535) 2018-02-21 20:33:23 +01:00
03a6d72633 Revert "remove query/q (#36315)"
This reverts commit b47d2e07e1.

query is a feature for 2.5.  We're not reverting it now.
2018-02-21 10:37:51 -08:00
7435e115e0 ACI: Various changes to module documentation and guide (#36516)
* ACI: Various changes to module documentation and guide

This PR includes:
- We moved the object class information to the notes
- Add version information to guide chapters
- Add generic note to modules with reference to ACI guide
- Reference known issues in aci_rest documentation
- Remove module_utils function docs from modules
- Indicate which parameters are not required for querying all objects
- Added missing RETURN information

* Fix copyright strings

* Remove aci_domain_to_encap_pool.py for v2.5

* More updates

* PEP8 fix

* Improve listings of parameters/return values
2018-02-21 19:35:59 +01:00
7ce1d49c55 Add new purefa_pgsnap module
Supplies the ability to create and destroy FlashArray
protection groups.
2018-02-21 10:01:29 -08:00
508a9c20dc Notify cyberark-bizdev for cyberark plugin and module tickets. 2018-02-21 09:11:54 -08:00
10fefc7156 Re-use logic from StrategyBase._load_included_file in StrategyModule.run for free and linear (#36470)
This improves include_role performance and recursion limits
2018-02-21 09:53:15 -06:00
7a55fe99ef find.py module: Added depth: option to specify how many level deep to… (#36205)
* find.py module: Added depth: option to specify how many level deep to traverse directories.

* find.py module: depth: added correct version_added value.

* find.py module: depth: Default value is None.
2018-02-21 10:51:26 -05:00
b47d2e07e1 remove query/q (#36315)
* remove query/q

remove and fixed tests for removed func

* paren fix
2018-02-21 10:42:54 -05:00
5d0ed38e3a Fixup VMware module docs issues (#36409)
Fix various argspec vs documentation issue
2018-02-21 15:20:42 +00:00
9fced4f0a9 Add integration test for #36430 (#36432) 2018-02-21 16:16:02 +01:00
d1f76939e5 Do not cache the loop item label so that it will update with each item 2018-02-21 10:02:03 -05:00
ca59a4ede4 Better handling of absent AWS SES identity notification information. (#36354)
* Better handling of absent AWS SES identity notification information.

Fixes #36065

aws_ses_identity module now handles the cases where information about
the notification setup for the identity isn't returned by the AWS api.

This seems to happen in an edge case, believed to be eventual
consistency on registering new identities. So this case is treated
as if has been no notification setup for the identity yet.

Also fix 2 flake8 warnings in the module, a missing newline and unused
import.

* Increase the Boto Retries on SES APIs to deal with throttling.

This should address the unstable integration test failing due to
parallel runs in shippable hitting AWS throttling.

* Add retries loading SES details for inclusion in successful response.

There seems to be an eventual consistency behaviour with identity
registration. It's possible to still get no identity back after
registration.

This can cause failures in the shippable builds. This should fix that by
creating a retry of retrieving the identity information after
registration.

A similar retry loop has been added to notification attributes to ensure
this doesn't suffer from the same failure.

* Add missing sleep in get_notification_attributes to avoid busy loop.
2018-02-21 09:33:33 -05:00
5e7ee9df0a Add note to use script module rather than inline here documents (#32863)
* Add example on how to use a here document with shell module

* Remove here doc example and add note to use script module instead
2018-02-21 09:12:09 -05:00
710db04ebd [ec2_vpc_net_facts] Fix UnsupportedOperation for regions other than u… (#35302)
* [ec2_vpc_net_facts] Fix UnsupportedOperation for regions other than us-east-1

* Make fix more Pythonic

* Fix the exception handling for the module
2018-02-21 09:11:36 -05:00
713828804d nxos_vrf fix (#36494)
* nxos_vrf fix

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

* Address review

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-21 19:33:33 +05:30
e224039586 Fixes #12353 #20977 adds new option to galaxy cli to preserve scm meta (#34642) 2018-02-21 08:34:44 -05:00
f7d79d4789 [cloud] Retry WAF actions on WAFStaleDataException (#36405)
Add a util to run functions with AWSRetry to retry on WAFStaleDataExceptions and update ChangeToken for each attempt
2018-02-21 08:14:17 -05:00
9598978e12 fix nxos_pim module doc (#36505)
* fix nxos_pim module doc

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

* address review
2018-02-21 18:42:37 +05:30
52f2057472 aws ssm parameter lookup - change to return Nones for missing variables (#36456)
* aws ssm parameter lookup - change to return Nones for missing variables

* aws ssm parameter lookup - fix error case message to dump response

* aws ssm parameter lookup - fix integration test cases
2018-02-21 06:50:00 -05:00
b6d4fa1c96 Wait for VM state to reach poweredoff when state: shutdownguest (#31669)
This change adds the optional wait_for_state_change argument to the
vmware_guest, vmware_guest_powerstate module, which allows for module
completion to be blocked when using the shutdownguest state until the
VM has reached the poweredoff state.

Fixes: #28498

Signed-off-by: Jim Gu <heming.gu@mercurygate.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-21 17:14:12 +05:30
df8a5d7a4f fetch: set fail_on_missing: True as default as per docs (#36469)
* fetch: set fail_on_missing: True as default as per docs

* Updated docs for fetch to say behaviour was changed in 2.5 and updated tests
2018-02-21 18:10:23 +10:00
d5858bbcbe fail module when config is invalid and jsonrpc doesn't return error (#36482)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-21 12:36:10 +05:30
abb956d9eb vApp properties support (#32579)
* Adding support for vApp properties.
* vm specification updated only if changes have to be applied. I.e. subsequent updates with the same data will not trigger changed state
* Auxiliary variables renamed, hope this makes the code more readable
* Integration tests changed - re-adding the same properties test not implemented, but tested on real vCenter deployment
* fixing documentation "version_added" for the feature
* Addressing reviewers comments #2:
* documentation updated with the only meaningful value for "option" attribute - "remove"
* Fixed improperly handled case when user requested "add" operation for existent property
* vApp configuration is updated only with properties that contains changes, not with all properties requested by user
2018-02-21 11:59:13 +05:30
f207897f32 fixed conditional error message (#36476) 2018-02-21 11:44:18 +05:30
77b903bd85 VMware: Add missing state param in argument spec (#36339)
This fix adds missing argument parameter called 'state'
and its documentation.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-21 11:32:47 +05:30
f87ec440e7 Fix PEP 8 issue. 2018-02-20 21:20:32 -08:00
ef5e97ef5a aci_static_binding_to_epg fixes (#36478)
* aci_static_binding_to_epg fixes (documentation and logic for interface_mode)

* additional fixes after review
2018-02-21 00:09:53 -05:00
47a92386c9 fix nxos_bgp_neighbor_af issues (#36472) 2018-02-21 10:20:24 +05:30
ef7d574920 Fix nxos_banner module for unstructured output (#36411)
* Fix nxos_banner module for unstructured output

* Refactor and bug fixes

* Fix pep8 error
2018-02-21 09:51:41 +05:30
2bffcfa63b Add force option to systemd module (#35925)
* Add force option to systemd module

* Use multi-line YAML syntax in examples

* Add version_added for new option
2018-02-20 20:47:29 -05:00
5635c50f9b aci_iplpg: Various fixes to integration tests/module (#36460) 2018-02-21 00:20:38 +01:00
6402a3e504 cs_user: fix return user_api_secret for ACS v4.10 and later (#36447) 2018-02-20 23:08:19 +01:00
1720a210e9 aci_spvpg: Various fixes to integration tests/modules (#36458)
* aci_spvpg: Various fixes to integration tests/modules

This PR includes:
- A fix in module_utils aci.py
- Various fixes in integration tests

* Fix typo
2018-02-20 22:49:55 +01:00
2b6ac4561b Add support for enhanced code-smell tests. (#36332)
* Add support for enhanced code-smell tests:

- Path selection handled by ansible-test.
- Optional path filtering based on extension.
- Optional path filtering based on prefixes.
- Optional lint friendly output.

* Enhance no-assert code-smell test.
* Enhance no-tests-as-filters code-smell test.
2018-02-20 13:37:23 -08:00
ce80485ecd [Doc] Update Conditional Imports (#35492)
* [Doc] Update Conditional Imports

facter/ohai is not needed for the ansible internal facts
also fix that os_family for centos is redhat

* Copy edit.
2018-02-20 12:12:12 -08:00
75ab070c63 Update vault.rst (#36328)
hunter2 not hunter42. http://bash.org/?244321
2018-02-20 12:11:32 -08:00
7143cf54bc added aci_vpc_protection_group integration test (#36448)
added aci_switch_policy_vpc_protection_group integration test
2018-02-20 20:42:08 +01:00
a9b58b84d8 Fix path handling in validate-modules sanity test. 2018-02-20 11:02:42 -08:00
fdbd1297cf catch all cases of no inventory when asked to fail
fixes #36034
2018-02-20 11:59:39 -05:00
3d06ce245a fix vyos_l3_interface adding multiple addresses to interface (#36377)
* fix vyos_l3_interface adding multiple addresses to interface

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

* add test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-20 20:54:27 +05:30
66c38dd6c3 Change to longer interval jittered backoffs for efs facts (#36266)
* Change to longer interval jittered backoffs for security group fact gathering

* Add the ECS throttling error code to the list of things to retry on
2018-02-20 10:17:31 -05:00
4a6d837879 added aci_fabric_node integration test (#36422)
* added aci_fabric_node integration test

* Update main.yml
2018-02-20 15:06:41 +01:00
e9c57e732f Add AWSRetry when describing VPCs to help stabilize integration tests (#36264)
* Add AWSRetry when describing VPCs to help stabilize integration tests

* Add retry on create_tags because it is possible to reach this API call before the VPC is finished creating
2018-02-20 08:56:34 -05:00
a79378fccb remove extra fields from debug output
fixes #35493

updated tests
2018-02-20 08:46:05 -05:00
6af5693dc2 hide uneeded fields for callbacks (#36259)
* hide uneeded fields for callbacks

fix selective instead of pushing uneeded fields to the methods

* piipii
2018-02-20 08:41:18 -05:00
c119d54e4a now get_url defaults to module temp dir (#36218)
* now get_url and other modules default to module temp dir

also fixed 'bare' exception

* allow modules to work with older versions

* updated docs per feedback
2018-02-20 08:40:45 -05:00
0bbea9a579 vyos_config IndexError in sanitize_config (#36375)
* Bug in del(list) logic. Say you have a list of 4 elements a[0-3]
and you have to remove index 1 and 3, if you remove index 1 first
then list is cut short a[0-2] and does not have index 3

Fix: Remove indexes in reverse sorted order e.g. 3 and 1 in above
example so that order of indexes remain preserved even after deleting

fix is to remove indexes in reverse sorted order

* Add test cases for failed case
2018-02-20 18:29:34 +05:30
000387ac23 Fix default value of gpgcheck in doc (PR #36267) 2018-02-20 13:47:12 +01:00
2ce1009c04 Fix portage mod usage of jobs and load-average opt
In short, it enables portage module to emit emerge
command with --jobs and --load-average options
with and without argument.

To emit emerge with such CLI argument without
a value, the user must set the corresponding
module option to 0.

By default, if these arguments are missing from
playbook they are omitted.

Misc changes:

* Use to_native to ensure crosspython compat

* Adjust jobs and LA options to accept 0 as reset

* Add docstring to emerge_packages

* Explicitly note in doc that False will work as 0

PR  #36355 by @webknjaz
2018-02-20 13:04:10 +01:00
78e900cd7f Fix ansible-test --redact option with delegation. 2018-02-19 21:58:02 -08:00
80d19e6af3 fix nxos_bgp_neighbor issues (#36318) 2018-02-20 10:08:17 +05:30
cac6c19a63 aci_encap_pool: Fix vxlan integration tests (#36418)
Missing cleanup would cause subsequent runs to fail when interrupted.
2018-02-20 04:45:09 +01:00
6534e6a450 ACI: Add missing examples to module docs (#36417)
This PR includes:
- A cleanup of documentation examples for ACI modules
- A small fix in aci_rest integration test
2018-02-20 03:27:17 +01:00
fb9af72b48 aci_aep: Add missing integration tests (#36414)
This PR includes:
- Add missing aci_aep integration tests
- Fix small aci_rest issue
2018-02-20 03:04:17 +01:00
3a62eb5e03 Add option to hide sensitive ansible-test output.
This option is enabled automatically on Shippable.
2018-02-19 16:35:31 -08:00
b39534201f [cloud] If inventory file isn't able to be parsed by aws_ec2, raise an AnsibleParserError (#36387)
* If inventory file isn't able to be parsed by aws_ec2, return an empty dict instead of None

* Raise an AnsibleParserError instead

* remove extra lines

* aws_ec2 inventory plugin - fix path matching logic
2018-02-19 17:12:56 -05:00
e3192fb3a4 Use pycrypto backend, rather than python-cryptography, on Ubuntu Precise 2018-02-19 13:39:32 -08:00
edaeb69a35 Fix the script and patch plugins tempfile ownership
Unified tmp accidentally removed the containing tmpdir from the list of
files to fix the permissions on when we're becoming a different
unprivileged user.  This resulted in a visible bug for script but not
for patch.  This is because patch also uploads the module to the same
temporary directory and the uploaded module also ends up calling
fixup_perms2() which includes the temporary directory.  So by the time
patch needs to access the temporary patch file, the directory is
appropriately set.

script's breakage was visible because script does not upload a module
(it's akin to raw in this way).  Therefore, we only call fixup_perms2()
once in script and so leaving out the tmpdir in script means that the
containing directory never has its permissions set appropriately.

Fixing both because it does not cause an extra round trip for patch so
any speedup would be minimal and it's better to fix the perms as close
as possible to where we know we need it.  Otherwise, changes to
seemingly unrelated code later could end up breaking it.

Fixes #36398
2018-02-19 13:07:58 -08:00
3ce5261272 mail: Fix cannot concatenate 'str' and 'int' objects
Fix an error in callback plugin when exceptions are being returned on failure.
2018-02-19 20:39:25 +01:00
5bc9bb9fbb Support ansible-test --truncate with delegation. 2018-02-19 11:07:43 -08:00
4a5809f111 Update zabbix_host.py (#36127)
fix tls documentation; minor style fixes
2018-02-19 11:25:38 -05:00
b57cc7cf31 Update network debug troubleshooting guide (#36288)
* Update network debug troubleshooting guide

Fix #35914

Command timeout and connection timeout error messages
are dsiplayed in log file instead on console.
Update the same in troubleshooting guide.

* Update example error

* Fix CI issues

* Fix more CI failures

* More fixes

* Fix review comments

* Fix more review comments

* Copy edit
2018-02-19 20:40:25 +05:30
32dc936c20 aci_rest: Remove test data from validation test (#36381)
Oops
2018-02-19 13:27:42 +01:00
79d00adc52 aci_rest: Fix error handling and improve documentation (#36295)
This PR includes:
- A fix for a recently introduced issue wrt. error handling
- Added integration tests for provoked errors
- Influence standard return values using aci library for aci_rest
- Add proxy support documentation
- Documentation update related to #34175
2018-02-19 12:01:14 +01:00
cd9d554186 Letsencrypt authz deactivation (#36362)
* Allow to deactivate authz objects. Currently only after success.

* Making sure cleanup is done even when module fails (except if fetch_url() fails).

* Make deactivate_authzs eat exceptions so that all authzs are deactivated in case of errors.
2018-02-19 05:29:31 -05:00
99627ab99d eos_vlan: Modified logic to allow for more than 6 interfaces to be assigned to … (#35568)
* Modified logic to allow for more than 6 interfaces to be assigned to a vlan

* arista output to json.  removing logic for string size.
2018-02-19 11:22:41 +01:00
542d27eee4 VMware: Make a common API for hostsystem params (#36314)
This fix adds a common API for getting host system managed object
from either cluster name or host system.

Fixes: #36010

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-19 14:00:09 +05:30
4d18586fc9 VMware: Refactor vmware_guest_tools_wait (#36098)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-19 13:53:38 +05:30
b34ab6a0c4 hashi_vault: fix typo (#36368) 2018-02-19 08:34:05 +01:00
eb7f4460c8 Set hostname to 'switch' on nxos_system (#36373)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-19 10:57:16 +05:30
736d6406c0 fix nxos_config json pipeline error (#36236)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-19 10:11:43 +05:30
a5654bd63c nxos_system test fix inventory_hostname_short (#36359)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-18 10:32:44 +05:30
591695932e Fix bug in DigitalOcean module_util (#36352) 2018-02-18 07:47:26 +05:30
5242914ae5 Fix digital ocean issues (#36347)
Remove module from ignore lists and some documentation fix in
digital_ocean_block_storage and digital_ocean module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-17 22:48:52 +05:30
d74d416beb Refactor DigitalOcean modules (#35934)
- Updated documentation fragment
- Updated Argument spec
- Use common REST class for API calls

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-17 22:00:53 +05:30
3a097063d9 Drop duplicate imports from apt_repository module (#36320)
* Drop duplicate imports from apt_repository module
* Drop json import from apt_repository module
2018-02-17 16:33:12 +05:30
6e096cb0c9 Remove kickstart_image_required check (#36319) 2018-02-17 10:20:31 +05:30
e24c547a3a Fixes for the N3500 platform that uses the A8 image (#36261)
* fix nxos_l3_interface tests as n35 doesn't support ipv6

* add terminal dont-ask to nxos_feature and nxos_lldp

* put interfaces in L2 mode for N35

* fix nxos_feature unit-tests
2018-02-17 10:16:03 +05:30
5b5d24631a Fix nxos_system tests (#36201)
* Fix nxos_system tests

* Add debug connection plugin info

* Move sanity test under common
2018-02-17 10:14:50 +05:30
ff922ac2ad Import sanity test for main() in Ansible modules. 2018-02-16 11:17:36 -08:00
365630df65 Update ignore to deal with renamed files (#36323) 2018-02-16 19:07:36 +00:00
f77a390131 Depreciate aos (#36029)
* Deprecate Apstra's aos_* modules

These modules don't work with AOS 2.1 or higher.
They will be replaced non-upstreamed modules

* Correct list
2018-02-16 18:26:07 +00:00
3eff279dd7 updates to module testing (#36043)
* updates to module testing

gives those using internal modules an alternative

* Copy edit
2018-02-16 10:04:10 -08:00
ac169f5ffd Fix structured output bug (#36193) 2018-02-16 21:34:26 +05:30
3a5263a92f facts: fix device uuid's on el6 (#36128)
* facts: fix device uuid's on el6

Fixes #36077
2018-02-16 10:52:51 -05:00
f2818caa61 Fix None stringification call to send_command (#36254)
send_command already performs the to_bytes safely on prompts (checking
for None).  Without this check the literal 'None' became a subprompt trigger!

Fixes #35662
2018-02-16 10:37:01 -05:00
6a3fd92654 Improved language around in_vpc parameter. (#36137) 2018-02-16 13:14:58 +00:00
a7c2f6d092 re enabled tests that were fixed in ansible/ansible-modules-core#5008 (#36257) 2018-02-16 08:10:14 -05:00
f8b85bdbf3 int("255.255.255.0" does not work, fixes issue #33867 (#36271) 2018-02-16 05:49:31 -05:00
9018c63e56 Improved language around XML description. (#36263)
* Improved language around XML description.

* Moved details on second line
2018-02-16 11:15:17 +01:00
d2150795ba Truncate some long messages sent to a TTY.
Can be overridden with the --truncate option.
2018-02-16 02:01:18 -08:00
80b55e3742 Add missing validate-modules ignore entries. 2018-02-16 01:40:45 -08:00
d2ac7ace01 Add information on the various package states (#35882) 2018-02-16 14:22:49 +05:30
1f363a6a7c updates to porting guide (#36219)
* updates to porting guide

(cherry picked from commit 7a6d6870d4633ae38a14cc799521b5fc1c0320fd)

* Edits to correct spelling, grammar, and clarify wording.

* Fixed typo
2018-02-15 23:54:45 -08:00
f59e1a6136 Misc. typos in ovirt_host_networks (#36287)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 02:50:34 -05:00
d86c5aee3c aci_domain_to_encap_pool: Add integration tests (#36217) 2018-02-15 23:47:39 -08:00
3ecf2d5ba2 VMware: New module: vmware_guest_snapshot_facts (#36002)
This module gathers facts about VM's snapshots.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 11:52:03 +05:30
cb52509775 Add eos_command doc with more examples (#36245)
* Add eos_command doc with more examples

*  More examples using cli and eapi transport
*  Example on how to handle json output
*  Example on handling result output in wait_for

* Fix typo
2018-02-16 11:48:12 +05:30
55d117458a VMware: New module: vmware_guest_disk_facts (#36026)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 10:46:35 +05:30
4cc7af7372 docker_login: Hide password from response (#34491)
Fixes: #32869

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 10:41:54 +05:30
a377302d6b VMware: Fix DVPG idempotency issue (#35837)
This fixes, cloning operation where template or existing VM
does not have network or DVPG. Also, adds some strict type checking in
network parameters.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 10:32:27 +05:30
75a34f6668 fix nxos_bgp_af issues (#36147)
* fix nxos_bgp_af issues

* shippable fix

* review comments

* shippable error fix
2018-02-16 09:34:24 +05:30
53a314f767 Fix incorrect docs in ec2_tag per #35738 (#36268) 2018-02-16 13:01:02 +10:00
334e405e6f aci_taboo_contract: Add integration tests and examples (#36276)
This PR includes:
- Missing integration tests
- Missing examples
- Two typo's in other integration tests
2018-02-16 01:59:23 +01:00
e1b5bc049c aci_firmware_source: Add integration tests (#36246)
This PR includes:
- Rename 'protocol' parameter to 'url_protocol'
- Add limited integration tests (as we have no public firmware access)
- Add missing examples
2018-02-16 00:20:41 +01:00
831a9d67d7 Arg spec doc comparison fixes (#36265)
* Ensure we merge doc fragments early, for comparisons

* Perform boolean conversion from arg_spec data too

* Update valdiate-modules ignore.txt due to recent changes
2018-02-15 22:49:11 +00:00
86918db312 Fix Porting Guide links for Ansible 2.5 (#36185)
The current links result in 404 Not Found. Also changed protocol to HTTPS.
2018-02-15 16:40:49 -05:00
810fa7046b Fix ansible-console always asking for vault passwords
ansible-console was calling setup_vault_secrets
twice. Once directly and once via _play_prereqs()

The direct invocation was not setting auto_prompt=False.

However, the direct invocation isn't need at all so
this removes it so only _play_reqs() is used.
That fixes the unrequested vault password
prompting.

Fixes #33027
2018-02-15 15:40:51 -05:00
d212ca11b3 False matches the docs and intentions of the previous developer (#35762) 2018-02-15 15:40:10 -05:00
50adc5409b Add several new doc<->arg_spec checks (#36247)
* Add several new doc<->arg_spec checks. See #18183

* Update ignore.txt for validate-modules
2018-02-15 20:34:40 +00:00
77fa41795e Reduces the unit test time of select bigip modules (#36256)
The modules in this patch include waits that need to happen to ensure
something is correctly configured on a BIG-IP. These waits were
raised as an issue in a recent ansible-testing meeting.

This patch eliminates the waits by mocking time.sleep
2018-02-15 20:14:01 +00:00
fed20b825f Update ios_ping.py to allow for count > 70. (#36142)
* Update ios_ping.py to allow for count > 70.

Find 'Success...' output rather than relying on list index.  Index -1 won't pass unit test.
2018-02-15 12:07:29 -05:00
06f73ad578 Normalize usage of temp and tmp on tmp (#36221)
* Normalize usage of temp and tmp on tmp
* Rename system_tmps system_tmpdirs
* Add ANSIBLE_REMOTE_TMP spelling of environment variables
2018-02-15 09:01:02 -08:00
2678508d42 [cloud] Fix inconsistent case of Allocation_id in NAT Gateway outputs (#36058) 2018-02-15 10:51:16 -05:00
b3ce136256 vars.clean: remove unused method inject_facts (#34838)
* vars.clean: remove unused method inject_facts

Removing this unused method seems better than fixing the typo.

* Fix typo in comments
2018-02-15 07:43:44 -08:00
f67ff4a78e Alter ASA regexes to be byte-strings (#36176) 2018-02-15 10:11:26 -05:00
dae737c8b7 Only template each hostvars var on-demand (fixes #33259) 2018-02-15 10:09:04 -05:00
0f893027c4 Add a module_utils OpenStack Cloud constructor (#20974)
Start using this to construct shade OpenStack Cloud objects in a
consistent manner. This will let us centralize things like dealing with
password arguments and whatnot. It also allows us to introduce the
ability to pass a fully formed config dict directly to the module.

Migrate all OpenStack modules to use openstack_cloud_from_module.

Have it return the shade library since it's responsible for
importing shade and shade is needed for the exceptions.

Only pull specific OpenStack arguments for the constructor

Rather than passing **module.params to the shade constructor, pull out
only the values that make sense. This should prevent the issues with
module parameters stepping on shade parameters.

Replace module.params.pop with module.params.get

We don't need to pop these anymore since the shade constructor is now
using opt-in values.

Using real urls is ungood. Use example.com domains. Also, get rid of the
antiquated port numbers.
2018-02-15 15:20:49 +01:00
577ff4d949 Add stub porting_guide_2.6.rst (#36190)
* Add stub porting_guide_2.6.rst

* Typo fix
2018-02-15 07:29:15 +00:00
1f609f8be3 Cleaned up some scenario guide titles and TOC placement. (#36225) 2018-02-14 23:14:22 -08:00
cffa3caa60 Updating URL to Nuage Python VSPK documentation (#36213)
Fixes ansible/ansible#35766
2018-02-15 11:45:25 +05:30
787114462e Fix nxos_linkagg tests (#36175) 2018-02-15 09:48:18 +05:30
b1263c34e8 Update zabbix.py (#36126)
minor style fixes in module documentation fragment of zabbix
2018-02-15 09:18:57 +05:30
717c7d26b7 Fix line too long 2018-02-14 19:02:56 -08:00
a612137098 Final fix for #35666 Previous PR (#36143) was merged prematurely. 2018-02-14 18:46:13 -08:00
391896ca9d Fixed typo in link. (#36220) 2018-02-14 18:37:03 -08:00
e431d578da aci_encap_pool: Standardize on 'pool_allocation_mode' (#36215) 2018-02-15 02:59:54 +01:00
4528a66d9d Update VERSION to match ansible.release (#36212) 2018-02-14 17:59:01 -08:00
15fe59ef0c * Fix for setting remote_tmp as a subdirectory of a system temp dir (#36143)
Fixes #35666

* Check that system_temps is all absolute paths
2018-02-14 20:34:14 -05:00
9066b17d5d better sudo/su deprecation on config entries (#36074)
* better sudo/su deprecation on config entries

fixes #32130

* typo fixes

* Copy edit

* Fixed more instances
2018-02-14 20:26:10 -05:00
3f5caf659e added support for --testcase flag in ansible-test (#36134)
* added support for --testcase flag in ansible-test

* fixed command format

* added tab completion

* fixed sanity issues

* added documenation for --testcase

* don't autocomplete when multiple modules are selected
2018-02-14 15:40:35 -08:00
dba561efa7 ACI: Avoid using 'previous' with query operations (#36181)
When ACI modules are being used for querying MOs, we should not return
the previous state, as there is no previous state, there's only the
current state.

This impacts a lot of tests that were used to testing the current state
as 'previous'.
2018-02-14 23:07:07 +01:00
0cf70a8970 never tags docs and test (#35964)
* fufilling the promise

* moved changes

* Copy edit
2018-02-14 17:01:36 -05:00
c5dd0d97af Relocate ACI guide and add to TOC (#36208) 2018-02-14 14:00:18 -08:00
032dc1a7c5 Initial OpenShift integration test support. (#36207)
Based on integration tests from chouseknecht for openshift_raw.
2018-02-14 13:39:42 -08:00
97b6e99479 fixes to virtual facts
fixes #36038
2018-02-14 15:54:36 -05:00
3680d65d1d deal with no config for view
fixes #35965
2018-02-14 15:53:40 -05:00
8de4f7cd9f fix loop_control templating (#36124)
* fix loop_control templating

- properly template ALL properites for loop_control
- loop_control inherits from base, it should not, but needs validate/attribute functionality

fixes #24719
2018-02-14 15:52:19 -05:00
b403653bd2 Inv export (#36188)
* add export option

* added 'export mode' to ansible-inventory

this optimizes the output for exporting inventory vs representing the 'ansible view'

fixes #30877

* added group priority when needed
2018-02-14 15:45:15 -05:00
f8d1c97279 win_uri: fix creates/removes option (#36016) 2018-02-15 06:17:23 +10:00
6a4f6a6490 Add additional support code in ansible-test. 2018-02-14 12:16:41 -08:00
09d939fb00 win_domain_controller: optionally add -ReadOnlyReplica if true (#36017) 2018-02-15 06:15:46 +10:00
8fb66c18de win_updates: fix regression when using string cat names (#36015) 2018-02-15 06:14:06 +10:00
7dfa11cd8a Notice in 2.6 remove in Ansible 2.10 (#36191)
Update the list of allowed removed_in for modules
2018-02-14 09:24:18 -08:00
3093285c94 aci_vlan_pool: Improve integration tests (#36173)
This PR includes:
- More elaborate integration tests
- Split static and dynamic VLAN pools in separate files
2018-02-14 16:09:20 +01:00
3e22efa0ba Ensure docs are valid before checking deprecation (#36160) 2018-02-14 14:47:31 +00:00
97573d8b0c Add unit tests for edgeos_command (#35861) 2018-02-14 09:27:03 -05:00
da5cf72236 ACI: Fixes to domain parameters dependencies (#36158)
We identified an incompleteness to parameter dependencies that affects
querying all domain-related objects.

This PR also includes:
- Improvements to integration tests
- Add missing vm_provider types
- Fix examples

This relates to #36131
2018-02-14 13:51:38 +01:00
ef9dac548f File Module docs, adding mode permission example with sticky bit (#36151)
* File Module docs, adding mode permission example with sticky bit
2018-02-14 12:18:13 +00:00
cf9b427add Changing Lenovo Inc to Lenovo and update License file to be consistent. (#36155) 2018-02-14 10:44:05 +00:00
4267d12e61 Fix description for rabbitmq_policy (#36149)
This was copied from rabbitmq_vhost.
2018-02-14 09:41:05 +01:00
08eaf37ca8 Fixed Arista typo in docstring (#36139) 2018-02-14 13:23:06 +05:30
a52a7d2065 adding support for loopback interface (#36141)
* adding support for loopback interface

currently the loopback interface lo is not supported with vyos_l3_interface, this commit fixes that.  Right now there is a limit of loopback interfaces to just lo, if you want more interfaces you need to use a dummy interface https://wiki.vyos.net/wiki/Dummy_interfaces

* fixing spacing as per pep8 test

fixing issues for sanity test

lib/ansible/modules/network/vyos/vyos_l3_interface.py:120:15: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:122:15: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:126:19: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:128:19: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:131:19: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:133:19: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:137:15: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:140:15: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:145:15: E111 indentation is not a multiple of four
lib/ansible/modules/network/vyos/vyos_l3_interface.py:148:15: E111 indentation is not a multiple of four

* ugh, missed on spacing issue

* getting rid of continuation lines, the CI system does not like it
2018-02-14 13:01:48 +05:30
dc902a5022 Fixes broken nested tables in module docs (#36144) 2018-02-13 15:21:10 -08:00
28015d8ae9 ensure cli dir exists before saving files to it 2018-02-13 17:43:26 -05:00
5a0f4f0646 removed gnerated files
@dharmabumstead, probably need a few more of these
2018-02-13 15:47:31 -05:00
43eb97ef92 Fix typo in vars.rst (#35098) 2018-02-13 15:05:11 -05:00
ab2151858e Add notify entries for files & dirs in BOTMETA. 2018-02-13 11:44:07 -08:00
c10080bfba Followup to docs refactor pull request #36067 - fixes gitignore and c… (#36120)
* Followup to docs refactor pull request #36067 - fixes gitignore and cleanup in makefile; removes some generated files; moves a straggler to the appropriate subdirectory.

* Fixed some stragglers

* Removed redundant module entries

* Delete generated RST files.
2018-02-13 10:52:13 -08:00
7897558b95 aci_aep_to_domain: Fix query all objects (#36131)
This PR includes:
- A fix to the module where domain_type without domain caused havoc
- A fix to the integration tests when querying all binding objects
- Improvements to integration tests
2018-02-13 19:07:23 +01:00
01bd9759e3 [WIP] Add ios smoke tests (#35972)
* added basic ios_smoke files

* added smoke tests for network.common.config

* added tests for network.common.utils

* added remainder of test cases
2018-02-13 11:53:50 -05:00
8743b20c8e skip aws inventory test if no boto 2018-02-13 11:04:37 -05:00
527fc492b9 Acquire displayed messages from forked process (#36064)
Also restore verbosity value from loaded `play_context`
2018-02-13 10:59:37 -05:00
69be2c169f Upgrade to openshift client 0.4.0 (#35127) 2018-02-13 10:34:24 -05:00
76ff3e9efc Prevent reparenting a block with itself (#36075)
* Prevent reparenting a block with itself

* Move __eq__ to Block, to avoid some unexpected problems
2018-02-13 09:30:05 -06:00
373b1dcf59 Core Docs Refactor and Redesign (#36067)
* Docs refactor as outlined in https://github.com/ansible/proposals/issues/79. Moves content into 'guides'; refactors TOC; fixes CSS; design tweaks to layout and CSS; fixes generated plugin, CLI and module docs to fix links accodingly; more.

* Adding extra blank line for shippable
2018-02-13 07:23:55 -08:00
480a9c10c9 Consistant headings (#36112) 2018-02-13 14:43:16 +00:00
6cfd198b13 provide detailed description of module (#36107)
Fix vague description of module.

Resolves:
Related:
Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2018-02-13 14:00:48 +00:00
a875363e35 ACI docs: Add more links to resources and community (#36101)
This PR includes:
- Adding more resources to each section
- Improving wordings
- Add links to the Ansible ACI community pages
2018-02-13 13:54:44 +01:00
e4c04aa0f3 Fix YAML issue (#36103) 2018-02-13 12:46:56 +00:00
5861d3333c Corrected the helm module documentation to the correct default state (installed -> present). (#35950) (#35951) 2018-02-13 13:34:17 +01:00
66743f33fa VMware: re-enable vmware_guest_powerstate tests (#36092)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-13 14:28:40 +05:30
eab1b62cd2 fix nxos_interface_ospf issues (#35988)
* fix nxos_interface_ospf issues

* review comment
2018-02-13 09:27:22 +05:30
218f008dab ACI docs: Add a section about common error messages (#36088)
Since we pass information directly to ACI, we sometimes get error messages back to the user that require some additional information or context.

This PR includes:
- Changes to the default error output so the error is easier to find
  when searching in e.g. Google
- 3 specific error messages that we have encountered and has confused
  our users before
2018-02-13 03:13:08 +01:00
1f80361bf9 Restore azure_rm_sqlserver test in CI. 2018-02-12 16:04:09 -08:00
9f028e9dea aci_domain_to_vlan_pool: Add missing integration tests (#36079) 2018-02-12 23:54:30 +01:00
98a3059f7b aci_aep_to_domain: Add missing integration tests (#36071) 2018-02-12 23:16:35 +01:00
e8b631d4df corrected dump signature 2018-02-12 16:52:04 -05:00
30adc2f124 aci_domain: Add missing integration tests (#36051) 2018-02-12 21:37:25 +01:00
39d9496282 add_host: check if name or hostname arg is provided 2018-02-12 15:24:45 -05:00
5f68892e81 requested status updates/removals of punted items 2018-02-12 10:37:04 -08:00
e8fc269cd3 fix spelling. Seriously, that's it. 2018-02-12 13:17:55 -05:00
487cf0ee8d Improve convert_bool error message
The error message as it was confused me when the value was 'enabled' and
there was also a module parameter named 'enabled'.

    enabled is not a valid boolean.  Valid booleans include: yes, on, 1, true, ...

So by clearly describing it as a value, the confusion would have been
avoided.

    The value 'enabled' is not a valid boolean.  Valid booleans include: yes, on, 1, true, ...
2018-02-12 13:05:38 -05:00
17c0d3eae0 Fix more docs vs argspec (#36048) 2018-02-12 17:42:25 +00:00
404f9260d9 [cloud][aws] Add metrics_collection options to ec2_asg module (#35180)
* Added metrics_collection management to ec2_asg module to switch ASG metrics on and off.

* Fixed typo in documentation of ec2_asg module

* Removed extra blank line in ec2_asg.py

* Docs fixes for ec2_asg module

* Added integration test for ec2_asg metrics flag

* Trying different syntax for ec2_asg test
2018-02-12 10:22:18 -05:00
6a223d5576 Fix vrf parsing in eos_vrf and eos_eapi module (#35791)
* Fix vrf parsing in eos_vrf and eos_eapi module

Fixes #30250

Fix logic to parse vrf when interface value in `show vrf`
command output spans on multiple lines

* Add idempotent test case
2018-02-12 12:33:22 +05:30
7a711cf942 Fix nxos_igmp_interface for diff nxos versions (#35959) 2018-02-12 10:30:38 +05:30
429c63510a VMware: Minor typo in vmware_host_dns_facts (#36018)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-12 10:24:06 +05:30
6cdf91fd35 Fix VyOS check mode (#35977)
* Revert "commented out check tests (#35788)"

This reverts commit 3df2561405.

* `discard_changes()` now uses `exit discard`

instead of just `discard`. Also a slight tweak to avoid a second `exit` after
`exit discard`
2018-02-11 11:40:33 -05:00
d5ae63c0ea Change wording of Going Further section (#35949)
* Change wording of Going Further section

The original wording was confusing with its non-devel branch part.
Made it much clearer for people to understand what to do.

Also removed the git command for creating branches, I believe a
develop should be aware of how basic git commands work.

* Edited for concision and clarity.

* Typo fix

* Typo fix
2018-02-11 00:32:22 -08:00
a9a7d15698 Disable unstable Azure integration tests. 2018-02-10 19:33:02 -08:00
e7b793c8c6 Move requirements into tests. (#35885) 2018-02-10 10:48:44 -08:00
9704668277 Fixed spelling error in runit module (#35948) 2018-02-10 21:13:55 +05:30
52f79fa5a4 VMware: Additional check for RootSnapshot (#36001)
This fix adds an additional check if there is no snapshot available
in VM. `rootSnapshotList` is None, if no snapshot is taken.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-10 21:11:11 +05:30
1d0fd49a33 Rebalance cloud tests into 5 groups. 2018-02-10 00:37:20 -08:00
25ca0863c1 Disable unstable azure_rm_containerinstance test. 2018-02-09 22:54:04 -08:00
15fa18a619 removed to_subnet from list of imports on ios_l3_interface.py as it was not being used (#35969) 2018-02-10 12:06:34 +05:30
2940b9d5bb Removed sort from json dump since response is a mix of strings and integers (#34217) 2018-02-10 07:52:10 +05:30
c119f6e642 Add 'digital_ocean' as group (#21631) 2018-02-10 07:48:03 +05:30
1d419c737d Run each Windows version independently in CI. 2018-02-09 16:38:27 -08:00
26f551d1c3 initial cutover to API profiles (#35538)
* hardcoded API profiles in azure_rm_common
* changed azure_rm_securitygroup module to use api_profiles, dynamic models, kwargs on all SDK methods
* changed azure_rm_containerinstance module to use api_profiles, dynamic models, kwargs on all SDK methods
* fixed polling performance issue in azure_rm_securitygroup (default poll interval was 30s)
2018-02-09 14:26:42 -08:00
fd33dc6cd1 [cloud] Make ec2_vpc_route_table wait for the route to propagate (#35975)
* Stabilize ec2_vpc_route_table

Wait for route table to be present before attempting to use it

Sleep before getting the final state of the route table in case modifications are incomplete

* Conditionally wait if changes were made

* Simplify logic
2018-02-09 16:32:23 -05:00
01ba3a4efc ACI: Fixes to recent change to parameter choices (#35968)
This PR includes:
- Fixes related to the recent merge of #31637 and #34537
- A generic fix for a reference for assignment issue
- Fixes to aci.boolean() in order to catch exception
2018-02-09 21:21:56 +01:00
d76db835ff aci_interface_policy_leaf_policy_group: Fix tests (#35973) 2018-02-09 21:21:41 +01:00
f4d896c716 Tower callback fixes (#35927)
* Fix tower_callback script return code

* Add ec2_key parameter to integration tests
2018-02-09 14:28:52 -05:00
c3523cdd60 Test against a single transport (#35903)
Network integration tests can use tags to run only a specific transport
2018-02-09 16:07:41 +00:00
3693e560dc Provide more debug output on failures (#35961)
This PR includes:
- payload output on failure, when requested
- add additional kwargs to aci.exit_json()

We may want to enable some of this debug output by default on failure ?
2018-02-09 17:06:59 +01:00
80e1e0b017 ACI: Assorted set of fixes to docs (#35780)
* Assorted set of fixes

* Cosmetic changes to lists

* Add more information related to connection throttling

* Changes to TOC

* Document return values

* More improvements

* Fix casing in title
2018-02-09 17:03:39 +01:00
764e78d302 Fix issue with module (#35960) 2018-02-09 16:10:25 +01:00
79b0739ba2 Accept interfaces without address family or method (#34200) 2018-02-09 15:09:09 +00:00
15b0371eb2 Add examples and language to better showcase the 'parents' parameter in multiple network modules (#34486)
* Add additional language and examples for 'parents' parameter to clarify its usage.
2018-02-09 13:31:37 +00:00
6cbd7cc5d8 Fix version in lib/ansible/release.py
Including `devel` in the version causes pip failures.
2018-02-09 04:47:31 -08:00
2fece2f148 changelog: add more new modules in 2.5 (#35937) 2018-02-09 09:38:10 +00:00
c7305393a3 fix nxos_evpn_vni issues (#35930) 2018-02-09 13:02:41 +05:30
54e0327e5d added 'local' option to group (#34805)
* added 'local' option to group

fixes #34804'

* fix to version 2.5

fixes #34804'

* fix missing local var
2018-02-09 01:02:35 -05:00
aa09ed1a88 Fix typo in examples in Lookup/password plugin. (#35022) 2018-02-08 21:01:23 -05:00
efacf0dd03 Update CHANGELOG.md 2018-02-08 17:07:31 -08:00
5b96e08d55 stub 2.6 in devel CHANGELOG, update 2.5 info 2018-02-08 16:34:18 -08:00
89ad40b129 Fix for #31477: return 'dest' from copy when file wasn't changed 2018-02-08 16:17:36 -08:00
d73c3abb15 Copy tests: check the result of non-changing copy 2018-02-08 16:17:36 -08:00
7d1eb88ecf Address memory ballooning caused by task caching changes (#35921)
* Exclude parent when copying included task to avoid memory issues. Fixes #35796

* Simplify implicit block squashing to pre-group, instead of post re-parenting
2018-02-08 15:28:07 -08:00
b6dc27249a bump devel to 2.6 2018-02-08 15:24:37 -08:00
14f6b4d766 Remove extra NuGet files from the default image. 2018-02-08 14:04:40 -08:00
79fbe09a4d remove slice filter as it already exists in jinja (#35922) 2018-02-08 16:30:51 -05:00
933bc45cf2 callback: Get handlers with json callback plugin (#35842)
Implement the `v2_playbook_on_handler_task_start()' method in the json
callback plugin to correctly include handlers in the results.

This fixes a bug where the last task in the results returned by
json callback would be wrong if an unconditional handler was triggered,
since the result of that handler would overwrite the result of the last
task.

Signed-off-by: Alex Tsitsimpis <alextsi@arrikto.com>
2018-02-08 16:01:32 -05:00
b7f4b89757 Code style words in docs 2018-02-08 15:58:01 -05:00
b37549f679 openssl_csr: Improved documentation on subject_alt_name possible values 2018-02-08 15:58:01 -05:00
3371a93b9e Adds doc for new slice filter (#35904)
* Adds doc for new slice filter

* Fixes example

* Adds empty line

* Moves documentation to other section and removes bad suggestion
2018-02-08 12:41:25 -05:00
0bd9b3019f caller to preprocess must be None aware (#33653)
also removed unused copy of method

fixes #33650
2018-02-08 11:25:20 -06:00
88f1f40aca expect default value of version param as None (#35790) 2018-02-08 12:10:19 -05:00
03c73e2bbb Rename var lookup to vars and add tests 2018-02-08 08:03:41 -08:00
db29190c28 Allow var lookup plugin to operate on a list of terms
Not sure this has a good use case but it's how nearly all other lookups
work so we should support the common interface.
2018-02-08 08:03:41 -08:00
59faad3a6b Fix var lookup plugin to return a list 2018-02-08 08:03:41 -08:00
33cbbe0b39 Homebrew Cask: Multiple updates (#35759) 2018-02-08 11:00:06 -05:00
abbac1a2ff Revert "Temporarily comment out tests causing CI errors (#35883)"
This reverts commit 157a41c843.

Have a fix for the underlying issue so reenabling the tests
2018-02-08 06:57:09 -08:00
5c085b2436 Fix aysnc failure by forgetting the remote tempdir that async_wrapper will delete on the remote end 2018-02-08 06:57:09 -08:00
d4b31afbc5 Test that transient failure in the middle of running async_status doesn't fail the task 2018-02-08 06:57:09 -08:00
a3b1c94d11 New dimensiondata_vlan module. (#21218)
* Initial (re)implementation of dimensiondata_vlan module.

This module was rewritten because the original implementation was imperative rather than declarative (which is the preferred style, and consistent with our other modules).

Credit for the original module implementation goes to Aimon Bustardo (@aimonb).

* Remove unused imports.

* Improve error message and documentation around expansion of a VLAN's private IPv4 network.

* Split message string over 2 lines.

* Add check_mode support to dimensiondata_vlan module.

ansible/ansible#21218

* Fix errors / warnings reported by Ansible sanity tests.

ansible/ansible#21218

* Remove 'metadata_version' key from documentation.

ansible/ansible#21218

* Return changed=True when changes would be made.

ansible/ansible#21218
2018-02-08 08:42:55 -06:00
0036cff493 [cloud] Add key_name parameter to ec2_instance (#35901) 2018-02-08 09:27:02 -05:00
cef1a666f3 name is not a required parameter (#35434) 2018-02-08 08:47:50 -05:00
80fcfdc0d1 fix nxos_vpc issues (#35868) 2018-02-08 18:50:37 +05:30
6264a55cdc Add aliases for parameters to rhsm_repository module (#35800)
Allow 'enabled' and 'disabled' as synonymns to 'present' and 'absent'.

Minor updates to module docs.
2018-02-08 14:13:47 +01:00
ecdb04119b keycloak_client: expand documentation, add some checking (#35545)
* add protocol mapper dict argument spec, documentation for protocol mappers, and documentation for attributes

* reformat docs to stay in line length limit

* better formatting/highlighting for docs

* ooops
2018-02-08 08:07:54 -05:00
d1f19125a5 openssl_csr: added support for the OCSP Must Staple extension (#35082)
* Added support for the OCSP Must Staple extension.

* Trying to clean up magic constants a bit.
2018-02-08 12:03:28 +00:00
273a3d1d51 Fixes #34913: azure_rm_loadbalance should accpet a list of rules instead of one (#35592)
* azure_rm_loadbalance should accpet a list of rules instead of one

* fix lint

* fix

* fix

* hook up load balancer rules, doc fixes, test updates
2018-02-08 01:32:27 -08:00
8a22b51755 Fix copy for implicit relative paths (#35016)
copy currently fails if you specify a destination without any directory
component.  This is because we take the dirname of the destination for
some processing and no dirname causes issues.

This corrects that by prepending "./" if there is no directory component
in dest.
2018-02-08 00:12:32 -08:00
2a0adaf542 Improve bot messaging on CI failures. 2018-02-07 23:42:08 -08:00
95f202a7e3 Disable hg test on Python 3 again. 2018-02-07 23:33:04 -08:00
2f36b9e5ce basic: allow one or more when param list having choices (#34537)
* basic: allow one or more when param list having choices

* add unit tests

* optimize a bit

* re-add get_exception import

* a number of existing modules expect to be able to get it from basic.py
2018-02-07 22:59:21 -08:00
82c1456781 If the timeout in _poll_async_result has expired, raise the exception (#35878) 2018-02-07 22:57:16 -08:00
0ccef03b43 Add ec2_instance module to CHANGELOG 2018-02-08 01:52:27 -05:00
e71c6d8e17 New module: ec2_instance (#35749)
New module: ec2_instance

Integration tests for ec2_instance
2018-02-08 01:50:41 -05:00
663c410da4 Fixing eos_config save option. Was removed when deprecated. Fixing ot… (#35628)
* Fixing eos_config save option. Was removed when deprecated. Fixing other deprecation documentation. Adding unit tests.

* Fixing removed_in_version for force.
2018-02-08 11:54:17 +05:30
75a285ded9 Enable hg test on Python 3. (#35884)
* Enable hg test on Python 3.
* Install/uninstall mercurial during test as needed.
2018-02-07 22:20:23 -08:00
157a41c843 Temporarily comment out tests causing CI errors (#35883) 2018-02-08 00:08:36 -05:00
73650cf854 fixing the removed_in_version to 2.6. (#35853) 2018-02-08 09:56:08 +05:30
6037e73c16 Add EdgeOS config module (#35867)
* Add edgeos_config module

* Add edgeos_config module

* Remove debugging statements

* Add future import and correct module name in docs
2018-02-07 21:12:15 -05:00
a9da1c2927 Add EdgeOS facts module (#35871)
* Add edgeos_facts module and unit tests

* Add future import
2018-02-07 21:11:57 -05:00
e10e1d6ddf [ecs_service_facts] replace map with dict for Python3 compatibility (#35355) 2018-02-07 21:05:51 -05:00
927ef22ad6 Fix docs and imports for os_project_access 2018-02-07 20:06:36 -05:00
2bcce99994 PEP8 os_project_access 2018-02-07 19:29:48 -05:00
2855f22e2b Fix spacing in os_project_access docs
Import openstack_module_kwargs
2018-02-07 19:28:42 -05:00
dff5fa3ec2 Fix os_project_access metadata and argspec import 2018-02-07 19:11:20 -05:00
2a6b03459b Fix aws_s3_cors documentation (#35684) 2018-02-07 18:27:47 -05:00
6340d58cd1 add 'never' tag (#34104)
* add 'never' tag

skips a task unless a tag on the task is explicitly targeted

* never also affects untagged, clearer layout
2018-02-07 15:21:55 -08:00
71f46d69d6 First bit of fixing temporary to have one source of truth (#35747)
* First bit of fixing temporary to have one source of truth

* Fix pep8

* Remove explicit make_tmp_path() in copy

The copy action plugin sets TRANSFER_FILES=True so it does not need to
set the temporary directory explicitly; the base class's run() method
will do that for us.

* Fix for calling a module's run when a shell has already created a temp path.

* Remember to inform the rest of the world when tempdir is removed

* New strategy for how to warn on passing tmp

Now we just warn when calling the parent class run() early.  If the
module does a late call to the parent run() and doesn't make use of the
temporary directory, then we don't check for the possibility that the
user mistakenly is sending tmp in.  If we truly deprecate this (rather
than ignoring it forever) then we might want to switch back to checking
for someone passing a value in as tmp.

* Remove tmp parameter from _execute_module as well

* Port all action plugins to not send tmp explicitly

This is now handled inside of _execute_module via the
_connection._shell.tempdir attribute.

Also update warnings and docs to tell people to set the attribute
instead of using _execute_module's tmp parameter.

* Always set local tempdir variable
2018-02-07 15:11:36 -08:00
7225839bef [git] Fix switching branch of shallow clone (#18728)
* [git] Fix fetching branch of shallow clone

* Use absolute file:// paths to make sure git uses shallow clones

* Improve tests

* Fix sanity errors
* Match style according to other (depth) tests

* Improve tests

Now they will fail without the fix of this PR
2018-02-07 18:07:02 -05:00
098eac076d Merge branch 'ioggstream-os-project-access' into devel
* ioggstream-os-project-access:
  fix version_added in modules/cloud/openstack/os_project_access.py for merge
  Module granting project_access to various resources
2018-02-07 17:05:33 -06:00
6791990992 fix version_added in modules/cloud/openstack/os_project_access.py for merge
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-02-07 17:05:27 -06:00
13ec1d874d Merge branch 'os-project-access' of https://github.com/ioggstream/ansible into ioggstream-os-project-access
* 'os-project-access' of https://github.com/ioggstream/ansible:
  Module granting project_access to various resources
2018-02-07 17:04:38 -06:00
e24bd29e02 Add ec2_vpc_vpn to CHANGELOG 2018-02-07 17:40:12 -05:00
920eaafde2 [cloud] New Module ec2_vpc_vpn: Facilitate VPN TunnelOptions (#35210)
AWS (and Boto3) supports VPN TunnelOption keys to be specified for VPNs.  Specifically (at least at the moment), the options for 'TunnelInsideCidr' (str) and 'PreSharedKey' (str) are particularly noteworthy.  One or both may be specified within a 'dict' object (max 2 dicts).  AWS defaults shall apply in absence of said parameters.
2018-02-07 17:39:12 -05:00
1e04cababd add DragonFlyBSD support to modules/system/{user,group} 2018-02-07 17:18:49 -05:00
3b0d864683 fix keep remote files 2018-02-07 16:58:27 -05:00
dfcae9fc8e Remove potentially confusing provider from module documentation (#35851) 2018-02-07 16:33:11 -05:00
07221d777a Better document connection: local (#34462)
* Better document connection: local

* Attempt at clear wording.

* Fixed spacing
2018-02-07 16:17:57 -05:00
297eab5073 move away from bad inline var defs
partial fix for #35714
2018-02-07 16:17:01 -05:00
8ba8d1a131 remove new tmp var for localhost
this was causing issues with keep remote files as the 'local cleanup' would trump the setting.
it will revert back to using the 'remote path' setti.ng for 'localhost' actions.

fixes #35724
2018-02-07 16:16:10 -05:00
a7461179cf Fix lookup plugins documentation (nios, conjur_variable) (#35847)
* conjur_variable lookup plugin doc: fix YAML
* nios lookup plugin doc: fix a typo
2018-02-07 13:14:51 -08:00
ee64dbfec5 new module cloudfrontwatchlogs_log_group to create cloudwatch log group (#32272)
* new module to create cloudwatch log group

* Add new module cloudfrontwatchlogs_log_group to the changelog.
2018-02-07 15:52:28 -05:00
c7d9a1594d ACI_EPG_TO_DOMAIN: Add note about Openstack VMMs (#34845) 2018-02-07 21:38:48 +01:00
76a6c59e35 Pathatt encap (#35803)
* ACI_STATIC_BINDING: Rename 'encap' parameters

* Capitilize 'c' in docstring

* replicate name change in 'required_if'
2018-02-07 21:37:27 +01:00
f20b9dab72 Add cloudwatchlogs_log_group_facts module (#35314)
* Add cloudwatchlogs_log_group_facts module

* pep8

* Add new module cloudwatchlogs_log_group_facts to CHANGELOG
2018-02-07 15:04:36 -05:00
45ef6bdd40 Roll boto3_conn tests into ec2_asg (#35854)
* Roll boto3_conn tests into ec2_asg.
2018-02-07 14:24:40 -05:00
301e8b8fe8 Include licenses in the tarball (#35855) 2018-02-07 10:35:45 -08:00
3381ff3ac9 New module: manage 1&1 public ip (cloud/oneandone/oneandone_public_ip) (#35079)
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.

* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.

* Addressed ansible-test sanity pep8 and validate-modules errors.

* Added oneandone_public_ip cloud module for oneandone cloud provider. Removed extra modules to adhere to one module per PR.
2018-02-07 12:15:27 -06:00
248c1e8b9f Update changelog (#35848) 2018-02-07 23:10:35 +05:30
531d7f81b6 add manpage install target
(cherry picked from commit 8e8a29f20a5b250947e00613033775ddd952430f)
(cherry picked from commit f572703efe65b8efedf3792d342ee3c09d9ba735)
2018-02-07 12:35:37 -05:00
02a7e9fb88 remove runtime msg also 2018-02-07 12:35:56 -05:00
4dcc5588f6 undeprecate include
defering deprecation until we are comfortable that the new actions
cover most of the ground users need.
2018-02-07 12:35:56 -05:00
dcd1c40e66 ovirt: Require Python SDK 4.2.4 for Ansible 2.5 (#35841) 2018-02-07 11:49:25 -05:00
7d4a2de66a Improve ovirt_vms, ovirt_hosts and ovirt_storage_domains (#35782)
* ovirt_vms: Add graphics consoles

* ovirt_hosts: Fix kdump integration check

* ovirt_storage_domains: Support multiple targets for block storages

* ovirt_vms: add cloud_init_persist parameter

* ovirt_vms: Change IO threads to int

* ovirt_vms: Fix update check

* ovirt_vms: Remove choices of OS, to not enforce it
2018-02-07 11:48:00 -05:00
51c4412de2 Fix the example - a cluster is a required propery (#35836) 2018-02-07 11:47:17 -05:00
fae21f6aad service: Add support for DragonFly BSD
For now create a subclass of the FreeBsd class
2018-02-07 11:23:10 -05:00
4319947e60 Remove jinja native types from roadmap (#35444) 2018-02-07 17:00:16 +01:00
9bbf97632c [WIP] Add new network module for EdgeOS (#33109)
* Add edgeos network module using network_cli

* Add documentation and some sanity test fixes

* Update copyright and documentation
2018-02-07 10:36:26 -05:00
e2c0865800 redhat_subscription: do not use defaults from the conf file (#33763)
* redhat_subscription: do not read defaults from the rhsm.conf file, let subman provide those.

* Only pass options specified by user to the config
2018-02-07 10:18:58 -05:00
6e74aa7d4f Update CHANGELOG.md 2018-02-07 10:18:05 -05:00
2e848b68ba New module: manage 1&1 private network (cloud/oneandone/oneandone_private_network) (#35076)
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.

* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.

* Addressed ansible-test sanity pep8 and validate-modules errors.

* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.

* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.

* Addressed ansible-test sanity pep8 and validate-modules errors.

* Added oneandone_private_network cloud module for oneandone cloud provider. Removed extra modules to adhere to one module per PR.

* Updated check mode scenario for remove members, using proper wait_for method in remove_network, renamed private_network_id argument to private_network.

* Fixing validate-modules issue - Documented datacenter.

* Added oneandone_private_network cloud module for oneandone cloud provider. Removed extra modules to adhere to one module per PR.
2018-02-07 08:30:26 -06:00
17626dd300 New module: manage 1&1 load balancer (cloud/oneandone/oneandone_load_balancer) (#35067)
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.

* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.

* Addressed ansible-test sanity pep8 and validate-modules errors.

* Removed extra modules to adhere to one module per PR.
2018-02-07 08:30:17 -06:00
aa541f662b New module: manage 1&1 firewall policy (cloud/oneandone/oneandone_firewall_policy) (#35066)
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.

* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.

* Addressed ansible-test sanity pep8 and validate-modules errors.

* Removed extra modules to adhere to one module per PR.
2018-02-07 08:30:01 -06:00
f91f6e469f Add elb_target to CHANGELOG 2018-02-07 07:46:34 -05:00
Rob
9451212855 [cloud] New AWS module - elb_target (#26483)
* New module - elb_target

* Work to add deregister functionality

* Add jurajseffer work on waiting for status change

* List the set of statuses as a choices list

* default target_status_timeout is 60

* Add 'unavailable' as a target status choice per API docs

* Add support to remove targets that are in unused state

* add support for availability zone selection

Fix deregistering targets from used target groups

Fix waiting for unused state for targets that have started deregistering
2018-02-07 07:45:35 -05:00
fcd09e2f02 New aws_waf_web_acl module (#33212)
* Add aws_waf_web_acl rule

* Add new aws_waf_web_acl to CHANGELOG
2018-02-07 07:06:15 -05:00
1a8ed08e6c changelog: add new modules (#35712)
all new modules to 0c5650ee1b
2018-02-07 13:04:20 +01:00
2efd6bcaac Remove deadcode since diff is never used (#35147)
Flake8 keep warning me about that
2018-02-07 05:03:22 -05:00
a0178b79f1 win_uri: fixes (#35487)
* win_uri: moved away from Invoke-WebRequest and fixed multiple issues

* fixes from review
2018-02-07 20:58:47 +11:00
63fdc3f08f Fix jinja2>=2.9 nested include vars (#35099)
This fixes a bug when parent's local vars where not available in nested
includes. The bug can only be seen with jinja>=2.9 which changes
how the variable scopes work.

Fixes #34886
2018-02-07 10:58:29 +01:00
9f9bfd819f Add etcd3 to botmeta (#35824)
The etcd3 module should have a corresponding entry in BOTMETA.
2018-02-07 10:18:00 +01:00
0c5650ee1b Pathatt connection (#35806)
* add interfacce_type to absent required if...not sure how this would work without it

* move fex requirement to required_if

* Fix incorrect documentation about port_channels
2018-02-07 09:08:53 +01:00
a8e14a35de always remove interface after testing (#35822)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-07 12:48:02 +05:30
95188ed35c Fixes repeated calls to create an API object (#35816)
This patch fixes repeated attempts that the module would make to
re-create an API object. The change stores a copy for later lookup
instead. This prevents uncontrolled tokens from being created.
2018-02-06 22:16:26 -08:00
e62c1cd050 Az mod keyvault ops (#33606)
* keyvault_operations module init + template

* Created KeyVault Secrets Module. No Tests

* Passing 2.7/3.x sanity tests

* added intergration tests for keyvault secrets noop

* integration test pass/need keyvault module

* Added az env cleanup to intergration tests

* Updated auth to 0.3.6 ver

* fixed typo in integration tests

* Added check_mode

* Added tags

* Updated tags test, sanity + integration passed

* checked mode

* updated tests

* fixing sanity

* fix copyright
2018-02-06 20:40:15 -08:00
11382fac7a Az mod keyvault key (#33607)
* key module init

* Create/Delete pass sanity

* Integration tests passed

* Added check_mode

* Updated to support tags

* updated key tests

* fixed sanity

* added things that went missing during rebase

* fixed sanity

* fixed doc

* fix copyright
2018-02-06 20:40:00 -08:00
c9e0ce1d7d fix nxos_vpc_interface peer_link idempotence (#35737)
* fix peer_link idempotence

* review comment
2018-02-07 08:35:43 +05:30
8a2bda0e06 When tempdir fails to be created, we have nothng to remove
This commit should get us a better error traceback when things do go
wrong.

References #35613
2018-02-06 17:29:20 -08:00
54882d4715 dimensiondata: fix broken import (#35634)
* Fix broken import

* Remove never reached statements

exit_json and fail_json methods call sys.exit, subsequent statements
can not be executed.
2018-02-07 00:44:42 +01:00
417d11eeb9 ACI_STATIC_BINDING: Update paths paramater (#35807)
* ACI_STATIC_BINDING: Update paths paramater

* Fix small issue
2018-02-07 00:40:17 +01:00
86242e6871 Enable wildcard import pylint (#35786)
* Wildcard imports should be taken care of.  Enable the pylint check for them
* Remove wildcard import code-smell test as we're now checking via pylint
* Add unused-wildcard-import as ignored in our compat code.

These three files use wildcard imports so that they can export
symbols in a compatible location.  The real code lives elsewhere.
So disable the pylint tests for the relevant sections of code.
2018-02-06 15:17:49 -08:00
d31ded47fb Aws ssm multiple fixes (#35569)
* aws ssm parameter lookup test case - fails demonstrating no exception when parameter missing

* aws ssm parameter lookup - fail in case parameter doesn't exist

* aws ssm parameter lookup test case - failing case for nice return from path lookup

* aws ssm parameter lookup - convert incoming taglist to a key-value dictionary

* aws ssm parameter lookup - pep8 / style clean up

* aws_ssm lookup plugin rewrite for more standard interface

* aws_ssm module and lookup - introduce integration test and fix:

* aws_ssm module and lookup - error case integraton test and many PEP8 and other cleanups

* aws ssm parameter lookup - Various fixes in response to review + recursive fix & test

* aws ssm parameter lookup - more in response to review - shertel/abadger

* aws ssm parameter lookup unit test - move to mocker according to abadger

* aws ssm parameter lookup - integrate with new documentation fragment

* aws ssm parameter lookup - accept either aws_profile or boto_profile

* aws ssm parameter lookup - eliminate lookup document fragment until env vars are fixed later
2018-02-06 17:41:46 -05:00
49eb0c49ea Pathatt mode (#35804)
* ACI_STATIC_BINDING: Update parameter to use more standard network lingo

* Add 'mode' as an alias
2018-02-06 23:20:06 +01:00
44650d5e3a Fix typo (#35810) 2018-02-06 23:10:19 +01:00
238760045e New module: manage 1&1 monitoring policy (cloud/oneandone/oneandone_monitoring_policy) (#35068)
* Added server_type parameter - defaults to K8S

* Changed server_type default value to cloud.

* Added server_type entry to documentation and updated server_type choice K8S to k8s_node

* Added support for overriding the default ONEANDONE_API_URL, and custom wait_timeout period for wait_for methods.

* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.

* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.

* Addressed ansible-test sanity pep8 and validate-modules errors.

* Removed extra modules to adhere to one module per PR.

* Fixed a typo
2018-02-06 17:06:54 -05:00
f46f6c8dec Temp install of setuptools for import coverage. (#35752) 2018-02-06 14:03:23 -08:00
c20beeef37 Apply regex to dir name only (#35744) 2018-02-06 16:39:57 -05:00
1d068d4af9 Update network section in 2.5 porting guide (#35643)
* Update 2.5 porting guide with network module_utils move
2018-02-06 15:35:59 -06:00
038b281da2 lineinfile creating underlying directory manage permission denied exception (#35794) 2018-02-06 14:03:20 -06:00
e46ae45b66 new panos_match_rule module (#35202)
* new panos_match_rule module
2018-02-06 19:57:19 +00:00
e93e76266c hostname parameter should be host_name (#35798)
the hostname parameter is wrong.  It will throw an error: "Unsupported parameters for (vyos_system) module: hostname Supported parameters include: domain_name, domain_search, host, host_name, name_server, password, port, provider, ssh_keyfile, state, timeout, username"  It is supposed to be host_name.  Only the example for documentation seems to be wrong in the module.
2018-02-06 12:52:19 -07:00
b1a8f3b3d3 Netscaler various fixes (#34800)
* Add default lb vserver option in netscaler_cs_vserver
Add documentation for ssl_certkey option in netscaler_cs_vserver

* Add options for gracefully disabling netscaler_server

* Add "state" suboption for netscaler_servicegroup servicemembers
Fix servicemember modification algorithm in netscaler_servicegroup
Fix monitorbindings modification algorithm in netscaler_servicegroup
2018-02-06 19:11:44 +00:00
3df2561405 commented out check tests (#35788) 2018-02-06 13:26:44 -05:00
7d721c1ec5 Add gcp_dns_managed_zone to CHANGELOG 2018-02-06 11:51:07 -05:00
9706abf685 [cloud] New GCP module: DNS Managed Zones (gcp_dns_managed_zone.py) (#35014) 2018-02-06 11:50:16 -05:00
a5b80464df Fix packaging/os modules for wildcard imports and get_exception 2018-02-06 08:44:49 -08:00
5c50720325 Changing ENOS action plugin license from BSD to GPL (#34888)
* Changing BSD to GPL

* Updating License Information

* Updating Copyright year to 2017

* Changed copy right info
2018-02-06 21:47:56 +05:30
1119709b56 Remove get_exception from modules
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-06 07:49:24 -08:00
fb2c0181c5 Fixes: #20986 blockinfile create undelying directory when create=true (#27961) 2018-02-06 09:48:15 -06:00
14841e453a Fix config option descriptions (#35638)
* Fix config option descriptions

* Better describe ANSIBLE_PRIVATE_ROLE_VARS
2018-02-06 09:59:47 -05:00
98f804ecb4 nxos_facts: svi support ipv4 (#35222)
* nxos_facts: svi support ipv4

* nxos_facts: copy paste error

* https://app.shippable.com/github/ansible/ansible/runs/51845/1/tests

* E111 indentation is not a multiple of four

* Update nxos_facts.py
2018-02-06 19:40:12 +05:30
48005da645 There is no master branch in this project (#35773)
Since there is no master branch, best not to mention it in the issue
template to avoid confusion.
2018-02-06 13:37:04 +00:00
dea860aff6 added aci_switch_policy_vpc_protection_group module (#35769)
* added aci_switch_policy_vpc_protection_group module

* Small change wrt. new interface
2018-02-06 12:37:46 +01:00
5278948e63 adding aci_interface_policy_leaf_policy_group integration tests (#35486)
* adding aci_interface_policy_leaf_policy_group integration tests

* Added more ACI options for testing
2018-02-06 12:36:16 +01:00
4ac92c97a3 VMware: Detect SDRS for datastore cluster (#35644)
This fix adds a fallback mechanism where Storage Datacluster
is not enabled with SDRS. If user has Storage Datacluster without SDRS
then we will not get any datastore recommendation. This will fallback to
normal datastore selection method.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-06 06:34:53 -05:00
Kai
f30a08d049 Add vfat support for the filesystem module (#23527)
* Add fat filesystem support

fatresize is temporarily disabled

* Refactor Filesystem.get_dev_size

For more sharing with vFAT class

* Fix filesystem tests on some OSs

I think this is due to older mke2fs on those systems.

* Fix vFAT command on FreeBSD

newfs doesn't seem to work on image files

* Refactor filesystem.grow()

Split out grow_cmd generation and Device operations

* Use swap as unsupported filesystem

Except FreeBSD, which doesn't have mkswap

* Be consistent about str(dev) vs dev.path

Prefer str(dev), this works transparently with '%s' formatting.

* Enable vfat resize, only test fatresize >= 1.0.4

Lower versions have a segfault bug.

* Only install fatresize where available

FreeBSD, OpenSUSE, RHEL and CentOS < 7 don't ship it.
2018-02-06 11:56:43 +01:00
67c217398c Add initial ACI guide (#35364)
* Add initial ACI guide

* Implement all review suggestions
2018-02-06 11:44:32 +01:00
56f640d874 influxdb_user: implement user password change (#35471)
* Added tests on user removing

* Implemented password changing

* Fix after review

* Added zhhuta changes
2018-02-06 11:01:51 +01:00
138de603d9 Fix the oVirt high_performance VM type description. 2018-02-06 03:38:12 -05:00
56ce2773c5 Adds the oVirt High Performance (high_performance) VM type. 2018-02-06 03:38:12 -05:00
358e63232f Minor updates to nxos_nxapi tests (#35750)
* Minor updates to nxos_nxapi tests

* Fixed duplicate yaml key issue

* Make rubocop happy
2018-02-06 12:52:42 +05:30
6bd4803c80 Fixing syntax for mail callback doc (#35379) 2018-02-05 23:14:08 -08:00
df5fc7af67 Fix ios enable password regex in terminal plugin (#35741)
Fixes #33993

On some ios devices the enable password prompt does not
end with a space, add a fix to handle this scenario.
2018-02-06 12:10:32 +05:30
575e9e9294 FreeIPA: Add Env variable as module parameter (#35391)
This fix adds environment variable fallback method to read
argument parameters if user has not specified.

Fixes: #35368

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-06 00:00:16 -05:00
6bd0fbb63c Remove deprecated get_exception API
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:39:56 -05:00
caefe31125 Fix typo in azure_rm_subnet (#35731)
Signed-off-by: Sylvain Rabot <s.rabot@lectra.com>
2018-02-06 09:40:05 +05:30
1f30ecef02 add support for configuring smtpport in callback_mail 2018-02-05 22:58:38 -05:00
7c998027c0 Add the option to use config file instead of enviroment variables (#32497)
and some error handling for the requests
2018-02-05 22:19:56 -05:00
e9b0a4ccb4 Add support for defining index var for task loops 2018-02-05 22:14:05 -05:00
7be8079bad Add configurable blacklist filtering for python logger 2018-02-05 22:12:16 -05:00
635036fb62 VMware: Add new module : vmware_host_firewall_manager (#35596)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-06 08:29:56 +05:30
636ef65099 Fix panos_object docs so they generate properly (#35756)
Change description field to a list rather than folder scalar.

Cleanup formatting and line breaks in README.
2018-02-05 18:49:02 -07:00
86c62e228d [new module] azure_rm_keyvault (#35150)
* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* updates to azure_rm_keyvault

* fix update bugs, add update test
2018-02-05 16:08:22 -08:00
cee5d420de Add examples for OpenBSD hosts. (#35691)
* Add examples for OpenBSD hosts.

* Incorporate changes recommended based on feedback from my pull request.
2018-02-05 18:21:45 -05:00
5cce0249f3 Fixes #35629 (#35668) 2018-02-05 15:47:14 -06:00
754dd89d86 new module panos_op.py (#34428)
* new module panos_op.py

* pep8 changes
2018-02-05 14:44:10 -07:00
24b8f36f1e exo_dns_record: remove limitation for multiple records only for A type (#35173) 2018-02-05 22:40:02 +01:00
57d5b8642a Add examples to YAMLSyntax; fix minor issues and improve wording (#35703)
* Add examples to YAMLSyntax; fix minor issues and improve wording

I added proper titles to "Flow Collections" and "Block Scalars", because these
are official YAML Terms, so people can find better help when having issues.

I changed the "ignored newlines" to "folded newlines" because I think ignoring
gives a wrong impression, especially since empty lines (more than one newline)
are not ignored and have a special meaning.

I added an example how to enforce a newline in a folded block scalar.

I fixed the list of characters that are allowed/not allowed in plain and
double quoted scalars.

I added the #yaml channel to the IRC link.

I added links to the YAML Specs. For completeness, I also included YAML 1.2,
although PyYAML and libyaml currently implement 1.1.

* Improve wording

* Add three more characters to forbidden first characters
2018-02-05 13:32:06 -08:00
dd9b2c0774 make v2_playbook_on_notify method signatures consistent
This was causing an exception in the TaskQueueManager when a third
party handler plugin was processed that inherited or explicitly
called the callback method from super because the method signature
was incorrect in callback/__init__ and it processed the arguments as
incorrect data types as a side effect.

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-02-05 15:43:20 -05:00
c487969abf VMware: refactor vmware_cfg_backup (#35695)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 14:42:49 -05:00
c33b02f71a VMware: add new module vmware_vmkernel_facts (#35535)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:50:48 +05:30
e9e8151c6d VMware: add new module vmware_host_dns_facts (#35708)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:42:47 +05:30
e3b6b40d88 Match recent Dockerfile change in httptester playbook file, to extend ca cert lifetime (#35734) 2018-02-05 11:44:41 -06:00
904bd34111 VMware: add new module : vmware_host_lockdown (#35715)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:09:04 +05:30
f95adcce8e fix new EC2 C5 instance virtualization_type identification (#35063)
* fix new EC2 C5 instance virtualization_type identification

Fixes #35051

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-02-05 12:15:53 -05:00
bda2f42f97 Detect OpenStack guests on RDO based installs, Newton and newer. (#35452)
The product string (used as the DMI product name) changed from
"OpenStack Nova" to "OpenStack Compute" between Mitaka and Newton
in the OpenStack RDO packaging.
2018-02-05 12:13:52 -05:00
defff8ceb4 VMware: add new module : vcenter_folder (#35608)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 22:31:58 +05:30
8428f13bc1 VMware: add new module vmware_host_firewall_facts (#35467)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 22:24:28 +05:30
68de5791a3 VMware: vmware_guest_file_operation refactor (#35560)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 11:51:08 -05:00
02111bc6c8 VMware: Fix regression in vmware_portgroup (#35700)
This fix corrects the regression introduced by refactor commit in
vmware_portgroup module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 11:19:02 -05:00
df3265a811 Extend httptester CA cert lifetime. 2018-02-05 08:17:29 -08:00
975f4def78 Tags on includes only affect the include. FIxes #35729 (#35732) 2018-02-05 09:53:56 -06:00
3bc1805c10 Support High performance VM in oVirt (#35573)
* ovirt_vms: add cpu_mode

* ovirt_vms: add placement_policy

* ovirt_vms: add cpu_pinning

* ovirt_vms: add soundcard_enabled

* ovirt_vms: add smartcard_enabled

* ovirt_vms: add io_threads_enabled

* ovirt_vms: add ballooning_enabled

* ovirt_vms: add rng_device

* ovirt_vms: add custom_properties

* ovirt_vms: add memory_max

* ovirt_vms: Fix formatting

* ovirt_vms: add watchdog
2018-02-05 09:57:30 -05:00
f0ea2b60e1 Fix: global name 'HAS_IPADDRESS' is not defined. 2018-02-05 06:41:12 -08:00
5c2783c161 Update example syntax in playbooks_tests.rst. (#35688) 2018-02-05 14:14:15 +00:00
f1d0279921 Update example syntax in test_strategies.rst, (#35689) 2018-02-05 14:13:00 +00:00
b30f3b9f4d fix eos_config second-level indent idempotece (#35588)
* fix eos_config second-level indent idempotece

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

* address ganeshrn's comment - update doc

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-05 18:39:47 +05:30
875c1343a9 Document the multiline prompt/answer format for ios commands (#35716)
* Document the multiline prompt/answer format for ios commands

Fixes #34468

* Put a note

* Add also docs for vyos
2018-02-05 04:13:43 -08:00
40f7f4babf Remove unused enable_mode import on Junos cliconf plugin (#35722) 2018-02-05 03:07:23 -08:00
acdb3657b7 Add GCE provider for ManageIQ (#35705)
This commit adds support for creating GCE providers on ManageIQ.
2018-02-05 04:43:19 -05:00
c070d74080 VMware: Documentation cleanup - vmware_guest (#35548)
Partially fixes: #35295

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 14:34:00 +05:30
ccdc93ab59 contrib(inventory): fix Scaleway inventory used w/env variable token (#35701)
In order to authenticate with the Scaleway API for the contrib dynamic
inventory Scaleway the environment variable SCALEWAY_TOKEN was read
only if a value was set in the configuration .ini file.

This PR fixes that allowing to read only the environment variable
without needing to set a token in the configuration file.

Closes #35693
2018-02-05 08:32:49 +00:00
0de810fdf7 Fix nxos_bgp tests and prepare_nxos_tests refactor (#35694) 2018-02-05 12:13:30 +05:30
109bc89bbe fix nxos_ospf_vrf issues (#35616) 2018-02-05 10:59:13 +05:30
588cd749ac cs_network: implement support acl (#35706) 2018-02-04 19:23:57 +01:00
02b28d4584 VMware: Refactor vmware_vmkernel module (#35531)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-04 06:08:45 +05:30
367258507a VMware: Provide verbose message about non-existent VM (#35682)
This fix adds a verbose message about non-existent VM when specified
with operation, due to idempotency we can not detect correct state.

Fixes: #27384

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-04 05:23:24 +05:30
4094ba7682 Digitalocean public private ip (#27269)
* When using private networking the ip_address key contains the private ip.
Add the following info to module output when available:
  - private_ipv4_address
  - public_ipv4_address
  - private_ipv6_address
  - public_ipv6_address
2018-02-04 03:45:16 +05:30
c6f397b160 cs_vpc: fix network_domain param ignored (#35690) 2018-02-03 21:21:24 +01:00
196f2f382b removed panos_nat_policy (#34432)
* removed panos_nat_policy

* merge

* removed extra line
2018-02-03 11:35:17 +00:00
fb545b72c3 new module that allows for adding DynamicAddressGroup tags to the firewall (#35201)
* new module that allows for adding dag tags
2018-02-03 11:34:04 +00:00
e1c9c6eded Update example syntax in playbooks_tags.rst. (#35680) 2018-02-03 11:33:02 +00:00
060890f3b2 Update example syntax in playbooks_loops.rst. (#35679) 2018-02-03 11:32:11 +00:00
aeb749e116 Update example syntax in playbooks_lookups.rst. (#35678) 2018-02-03 11:31:12 +00:00
1b7e5d19a2 Update example syntax in playbooks_intro.rst. (#35677) 2018-02-03 11:30:54 +00:00
0a5ff792e4 Update example syntax in playbooks_filters.rst. (#35676) 2018-02-03 11:30:24 +00:00
6179bd378c Update example syntax in playbooks_error_handling.rst. (#35675) 2018-02-03 11:29:58 +00:00
3fe6de475b Update example syntax in playbooks_delegation.rst. (#35674) 2018-02-03 11:29:40 +00:00
203c8f4334 Update example syntax in playbooks_conditionals.rst (#35673) 2018-02-03 11:29:22 +00:00
6c1a63dd14 Update example syntax (#35670)
* Update examples in guide_rolling_upgrade.rst.

* Update examples playbooks_best_practices.rst.

* Update examples in playbooks_checkmode.rst.
2018-02-03 11:28:22 +00:00
5a198e1e6a Add minor conditional checks to nxos_bgp sanity test (#35476)
* Add minor conditional checks to nxos_bgp sanity test

* Make ansibot happy
2018-02-03 10:37:10 +05:30
767f32c2b2 added aci_static_binding_to_epg module (#35581)
* added aci_static_binding_to_epg module

* fixing pep8 issues

* fixed documentation yaml ':' error

* fix aliases error

* small documentation fixes suggested in PR
2018-02-03 00:49:29 +01:00
e5687a1592 added aci_fabric_node module (#35586) 2018-02-03 00:49:12 +01:00
bee765fa6b ACI: Change RETURN output as discussed (#35617)
* ACI: Change result output as discussed

* Update all modules to use new aci.exit_json()

* Update output_level spec and docs

* Fix integration tests

* Small PEP8 fix

* Asorted fixes to tests and aci_rest

* More test fixes and support for ANSIBLE_DEBUG

* Fix another PEP8 issues

* Move response handling inside ACI module

* Reform of ACI error handling and error output

* Diff multiline json output

* Fix a few more tests

* Revert aci_bd tests

* Small correction

* UI change: existing->current, original->previous

* UI change: config->sent

* Update all modules with RETURN values

* Fix a few more tests

* Improve docstring and add 'raw' return value

* Fix thinko

* Fix sanity/pep8 issues

* Rewrite unit tests to comply with new design
2018-02-03 00:41:56 +01:00
685dd5e8b4 Disable failing aws_waf_web_acl tests. 2018-02-02 15:21:14 -08:00
415ed50876 Add aws_waf_rule to CHANGELOG 2018-02-02 17:55:15 -05:00
4e30eff651 [cloud][aws] New module: aws_waf_rule module (#33124)
Add a new module for managing AWS WAF rules

Preceded by aws_waf_condition and to be succeeded by aws_waf_web_acl
2018-02-02 17:54:27 -05:00
69cd705634 Add vyos smoke integration tests. (#35456)
* added preliminary vyos smoke tests

* added comments, determined current tests are sufficient

* add tests for check mode in module_utils.network.vyos

* removed vyos_smoke from shippable

* added comment explaining why AWS/Shippable tests won't work
2018-02-02 16:04:19 -05:00
7917e3c988 Fix syntax error so route table tests always try to clean up (#35663)
* Always try to clean up after route table tests

* Wait for a new VPC a chance to become available before attempting to get its current state
2018-02-02 15:38:47 -05:00
4faad64579 [cloud][aws] New module: cloudfront_invalidation (#35601)
* Remove redundant default for target_paths

* Make invalidation requests idempotent

* Remove redundant exception handling around boto3_conn

* Add cloudfront_invalidation to the changelog
2018-02-02 15:09:55 -05:00
36bd24f121 aci_epg: Add support for Preferred Group Membership (#35265)
* aci_epg: Add support for Preferred Group Membership

* ACI defaults to 'no'

* Add 'version_added'

* Make use of aci.boolean()
2018-02-02 19:23:19 +01:00
7b76da2d4c Update some examples to use proper YAML syntax. (#35640)
* Update some examples to use proper YAML syntax.

* Make the requested changes so this builds properly.

Also fix emphasis line numbers to match what was being emphasized before
the change.
2018-02-02 18:20:03 +00:00
3dfede5642 ACI: Implement aci.boolean() to return an ACI boolean (#35610)
* ACI: Implement aci.boolean() to return an ACI boolean

A boolean value in ACI is not always standardized to yes/no.
Sometimes we have active/inactive, or enabled/disabled
Whereas the interface we want is a true YAML boolean.

We did not modify enabled/disabled values at this time.
I first want to determine if this implementation is acceptable.

* Support enabled/disabled as well, with deprecation messages

* Fix typo

* Fix PEP8 issue

* Ensure the aci object exists before using it

* Add comment to ensure this gets fixed in v2.9

* Fix typo
2018-02-02 18:54:48 +01:00
2646ea9b86 yum_repository: Python 3.7 error have been fixed
See 232dc7110c
2018-02-02 09:43:58 -08:00
d608eb9530 Check that AnsibleUndefinedVariable doesn't occur when an unused variable references an undefined variable (#35571)
* Check that AnsibleUndefinedVariable doesn't occur

* AnsibleUndefinedVariable exc.: don't modify type
2018-02-02 09:25:13 -08:00
c37b997abc Update BOTMETA for VMware maintainers (#35609) 2018-02-02 11:20:52 -05:00
24c6de7c49 Use value of delegated transport for var lookup (#35658) 2018-02-02 17:17:19 +01:00
c3199dca6c Add any_errors_fatal in nested failed block test (#35499) 2018-02-02 16:25:55 +01:00
a4b7df70c7 nxos_vlan ValueError fix (#35559)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-02 20:51:34 +05:30
e8755175d7 Fix paramiko connections to hosts with uppercase characters (#35555) 2018-02-02 10:08:40 -05:00
f3337e1fba ios test changes (#35510)
* Fix over-byte

* Update ios tests to call `provider`

To continue to support testing `connection: local`

* Fix command dict handling in ios_user

* Clean up unit tests, too
2018-02-02 09:50:15 -05:00
d7d9e40dd1 VMware: Deprecate vsphere_guest module (#35648)
This change deprecates vsphere_guest in favor of vmware_guest and other
related modules.

The major reasons behind deprecation are -

- Pysphere - Unofficial Python bindings of vCenter deprecated in the year 2013.
- VMware provides official Python bindings for vCenter, which is used in vmware_guest.
- vcsim - simulator used in integration testing of vmware module does not support PySphere
  APIs, which makes it more difficult to test vsphere_guest.

Please see [deprecation plan](https://github.com/ansible/community/wiki/VMware%3A-vsphere_guest_deprecation)

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-02 20:03:57 +05:30
fd72e4aef2 Make an aws_credentials documentation fragment for plugins using environment vars (#35578) 2018-02-02 08:50:11 -05:00
4ec16867fd Fix loop/with typo in loops doc (#35652) 2018-02-02 13:33:13 +00:00
dc4a41a4af change testfiles for nxos_file_copy (#35641)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-02-02 12:54:53 +00:00
785e888ea0 doc: fix loop examples (#34991) 2018-02-02 13:52:28 +01:00
fe57285f9a vmware: Add new module 'vmware_datastore_host' (#35004)
* vmware: Add new module 'vmware_datastore_host'

Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-02 18:16:10 +05:30
82e6a91c3f new module panos_query_rules (#35203)
* new module
2018-02-02 12:38:27 +00:00
9ddf8b8ee5 remove panos_security_policy (#34433)
* remove panos_security_policy

* added depreciation notice

* - deprecation notice

* properly document deprecated module

* merge changes

* merge changes

* parser expects srt for deprecations attributes
2018-02-02 12:35:02 +00:00
e59d3dd524 Update playbooks_best_practices.rst (#35627)
* Update playbooks_best_practices.rst

If deploying to the first 10 hosts in Boston it should be "-limit boston[0:9]" and the next 10 should be "-limit boston[10:19]". The doc as written would skip the first host (boston[0]) and try to deploy to a host that doesn't exist (boston[20])

* Typo fix
2018-02-02 12:21:21 +00:00
ddbe52d0f4 Simplify auth logic (#35647) 2018-02-02 12:58:04 +01:00
57870379d4 Include new module openssl_dhparam in changelog (#32620) (#35650) 2018-02-02 11:40:49 +00:00
0c012703c1 Update developing inventory script docs. (#35639)
* Update developing inventory script docs.

* Copy edit.
2018-02-02 02:03:17 -08:00
25a83a4ac8 Make vmware_guest always get a resource pool (#34995) 2018-02-02 14:44:15 +05:30
f04d40640e Fixing name from aruba to ios. (#35630) 2018-02-02 09:57:49 +05:30
1717444f18 Missing facts in SunOS module 2018-02-01 16:10:33 -08:00
905fe855e4 remove restart_if_needed argument (#35626)
* remove restart_if_needed argument

* fix sanity check error
2018-02-01 18:22:43 -05:00
b5a1643e3d Add new aws_waf_condition module (#33110) 2018-02-01 18:16:27 -05:00
f8f2b6d61d Fix lineinfile to insert line when pattern exists elsewhere in the file. (#33393)
* Insert lines before or after when the regexp exists elsewhere in the file

* Correct filter syntax in lineinfile integration test

* Use multi-line YAML syntax on lineinfile tests

Unify indentation

* Add lineinfile tests for same line matched to different regexps

* Remove debug statement from test
2018-02-01 16:45:26 -05:00
4a48fdba1d Update code smell blacklists (#35621)
Update blacklist for get_exception, boilerplate, and no-wildcard.

f5, lenovo, and junos have updated their code.
2018-02-01 12:24:07 -08:00
ee209e5f6f Fix idempotence for deleting ElasticBeanstalk applications (#35614) 2018-02-01 14:08:59 -05:00
b9571eb4bf Integration tests for rabbitmq_user module (#35421) 2018-02-01 10:25:04 -08:00
b9c5147be2 Move import sanity test files into own directory. (#35593) 2018-02-01 09:52:31 -08:00
e8d8c5b19c New module: manage Amazon CloudFront origin access identities (cloud/amazon/cloudfront_origin_access_identity) (#35540) 2018-02-01 11:32:33 -05:00
9ea5e8b37c Check if data_xml object in present in NCElement object (#35604)
If ncclient return NCElement object call data_xml() on response
else call xml()
2018-02-01 21:38:49 +05:30
7dbcf752c8 Add ability to select to prefer IPv4 addresses for ansible_ssh_host (#35584)
Currently Cloudforms can return a mix of IPv4 and IPv6 addresses in the
ipaddresses field and this mix comes in a "random" order (that is the
first entry may be IPv4 sometimes but IPv6 other times). If you wish to
always use IPv4 for the ansible_ssh_host value then this is problematic.

This change adds a new prefer_ipv4 flag which will look for the first
IPv4 address in the ipaddresses list and uses that instead of just the
first entry.
2018-02-01 10:33:51 -05:00
fe067040d1 Removing temporary files when not proxing inside urls utils (#35583) 2018-02-01 10:27:45 -05:00
684e953b50 * adds commit replace with config file for iosxr (#35564)
* * adds commit replace with config file for iosxr
* fixes dci failure in iosxr_logging

* * review comment changes
2018-02-01 14:15:32 +00:00
2479b6d635 added force option to zabbix_hostmacro to allow control of overwriting (#35516)
* added force option to hostmacro to allow control of overwriting existing macro

* wording changes as suggested by eikef in PR 35516

* further wording changes from eikef

* added 'version_added: 2.5' to the documenation for the force option
2018-02-01 03:37:11 -05:00
ea70b49b11 Fix pip integration test. 2018-01-31 23:26:16 -08:00
fef684d457 fixing mysql and postgresql test failures (#35587) 2018-02-01 17:00:05 +10:00
abbc1ed4e6 Remove EOL openSUSE Leap 42.2 from CI. 2018-01-31 21:50:21 -08:00
12b8b8dcf2 aci_aaa_user: Manage AAA users on ACI fabrics (#35543)
* aci_aaa_user: Manage AAA users on ACI fabrics

* Fix module documentation

* Ensure we allow to not set accountStatus and expires

* Added aaa_password_lifetime and aaa_password_update_required support

* Improvements to integration tests in light of issue 35544

* Fix ACI ISO 8601 formatted string

* Add HAS_DATEUTIL
2018-02-01 00:45:32 +01:00
512d6f6ac6 Add 2.4.3 to releases.txt 2018-01-31 14:56:54 -08:00
e8cfe05e37 Test behaviour of loop keyword plus lookup plugins
We introduced the new loop keyword as a replacement for with without
adding tests that it behaved as we expected.  This test asserts that
behaviour.

Incidentally, it also shows how to use parameters with lookups and loops
now.
2018-01-31 13:55:49 -08:00
715b930fc8 Correct message about what files to double check for release 2018-01-31 13:32:08 -08:00
adf76b7d3f Reflect new process for network integration tests (#35577)
With `ansible-test network-integration` we don't need the top level yaml files
except NXOS and Dell (for now)
2018-01-31 14:56:28 -06:00
b5abc69125 Update version in the versions.yml file
(cherry picked from commit c8941cb103)
2018-01-31 12:35:29 -08:00
0b4debad53 Update the release doc with ansible-2.4.3 2018-01-31 12:30:11 -08:00
3b30297817 New Ansible module for Virtual Data Optimizer (#32267)
Add an Ansible module for VDO (Virtual Data Optimizer), a
device-mapper module that provides deduplication, compression,
and thin provisioning.  This module provides the ability to create,
remove, and modify parameters on storage volumes created by VDO.
2018-01-31 15:22:01 -05:00
556bb7ab00 [cloud] Log more exception info to fix sts_assume_role integration tests (#35570) 2018-01-31 13:18:09 -05:00
9dad5d6b7f creates structure for network docs (#35514) 2018-01-31 10:01:55 -08:00
9d3ba7e36a VMware: Add basic vmware module related guide (#35128)
* VMware: Add basic vmware module related guide

This fix adds page tries to consolidate various information related
to vmware modules and debugging related information.

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

* Copy edits

* Added module reference

* Edits

* Fixing invalid characters
2018-01-31 09:57:05 -08:00
9728857e01 Remove network-test-runner (#35556)
Not been used for a while, replaced by DCI
2018-01-31 16:27:52 +00:00
a6d9bccd6f Changing ENOS cliconf plugin license from BSD to GPL (#34889)
* Changing BSD to GPL
2018-01-31 11:18:24 -05:00
2d565d14ed Add pslint sanity test settings.
Globally ignore rule: PSUseShouldProcessForStateChangingFunctions
2018-01-31 06:31:05 -08:00
9c2c2f1534 ios_facts: consistently use type of string not str (#35104)
The return documentation for ios_facts used an inconsistent mix
of str and string to denote a string data type.

This patch modifies all to be "string".
2018-01-31 09:28:38 -05:00
862c439223 Contrib infoblox exattrs Fixes #35409 (#35410)
* *FIX: re-create the exattrs dict into the hostvars[name] dict

* *FIX: remove unwanted files

* Fixes #35409: put an str instead of variable
2018-01-31 09:17:34 -05:00
9001a8794f FIX: multiple nested tasks include levels (#35165)
* Test for include_tasks & include_role bug

Related to ansible/ansible:#21890

* Fix nested include_tasks called from role

This fixes the path of included files when you want
to call include_task inside a role's task file and this
role is itself called from multiple level of playbook include_tasks

Related to ansible/ansible:#21890
This fixes ansible/ansible:#35109
2018-01-31 07:35:06 -06:00
984edacd2a New module: keycloak_clienttemplate (#33419)
* keycloak_clienttemplate

* BOTMETA maintainership for identity/keycloak namespace

* fix superfluous blank line

* catch ValueError when trying to decode JSON

* further documentation for protocol mappers and some checks

* whitespace fixes, YAML fixes

* remove state: dump, update argument_spec and documentation with suboptions

* add documentation for realm option

* document aliases for auth_keycloak_url, auth_username, and auth_password (i.e. url, username, and password)

* remove bearer_only, consent_required, standard_flow_enabled, implicit_flow_enabled, direct_access_grants_enabled, service_accounts_enabled, public_client, and frontchannel_logout from module options.
2018-01-31 13:12:53 +00:00
9aadd8704a Handle multiple sub prompts for network_cli connection (#35361)
* Handle multiple sub prompts for network_cli connection

Fixes #35349

*  Check if the same prompt is repeated in consecutive window
   if it is repeated it indicates there is problem with answer
   provided
*  In that case report error to user

* Fix CI failure

* Fixes #35349

*  Add prompt_retry count to control max number of times
   to expect the same prompt before it error's out

*  Make required changes in ios and eos terminal plugin to handle
   wrong enable password correctly and return proper error
   message to user.

*  Check if the same prompt is repeated in consecutive window
   if it is repeated it indicates there is the problem with an answer
   provided

*  In that case report error to user
2018-01-31 18:33:23 +05:30
63639abb01 [cloud] Improve ipv6 and EC2 classic support in ec2_group integration tests (#32976)
* ec2_group: fix ipv6 tests to use an explicit VPC

* otherwise would fail on old AWS accounts supporting EC2-classic

* ec2_group: fix tests to use an explicit VPC

* Only run some tests if there is a default vpc associated with the account
2018-01-31 08:00:54 -05:00
19ac188e86 ovirt_storage_domains: docs: override_luns parameter is applicable also to fcp (#35506) 2018-01-31 07:47:37 -05:00
f4c68868ee ovirt_auth: Fix checking of auth paramters (#35512) 2018-01-31 07:47:25 -05:00
766f7c0577 Fixing Bug for Embedded Switches in Parsing data (#35541) 2018-01-31 12:05:43 +00:00
06734f27c6 Network Doc status (#35475)
Plus remove trailing whitespace
2018-01-31 09:04:06 +00:00
4e7e7042cc Changing order of load and loadfp (#34793)
* Changing order of load and loadfp

* Removing exception as per Ganesh Review comments
2018-01-31 14:04:43 +05:30
2c482847ce letsencrypt: fix account key detection for keys created by openssl_privatekey (#35534)
* Fixing key detection if key was generated with openssl_privatekey.

* Fixing error formatting.
2018-01-31 02:24:08 -05:00
311918828f Fix double prompt issue in network_cli (#35439)
Fixes #33993

In current implementation while trying to fetch the
current cli prompt terminal plugin executes `\r` on remote host.

This causes if command execution results in a prompt for
example executing `enable` command results in `Password:` prompt
there by executing `\r` on password prompt which is not intended.

To fix it while fetching current prompt from terminal plugin use `get_prompt()`
api in network_cli that returns the latest matched prompt instead of
unnecessary executing `\r` on remote host.
2018-01-31 11:43:08 +05:30
dc35baa8db fix nxos_pim_interface issues (#35405)
* fix nxos_pim_interface issues

* add absent test for pim_interface
2018-01-31 10:51:11 +05:30
e497509e51 Update guide_azure.rst to include note about running ansible from within azure (#35441)
* Update guide_azure.rst

Add one more option to run Ansible in Azure

* Minor edit
2018-01-30 17:31:10 -08:00
fec85a42a6 timezone module: Enhanced update command for Debian/Ubuntu (#34390)
* timezone module: Symlink to /etc/localtime before dpkg-reconfigure in Debian/Ubuntu

* timezone module: Symlink rather than hard link
2018-01-30 18:34:45 -05:00
ac7e62ec08 open_iscsi fails to login when discovery returns multiple portals #29309 (#35262) 2018-01-31 00:03:35 +01:00
62b87bc925 change .encode to to_bytes (#35522)
ignore backup dir in test integration targets folder
2018-01-31 08:58:03 +10:00
c24e092865 Add jenkins_job_facts module (#35346)
* Add jenkins_job_facts module

* Fix docs

* Fix connection error handling

* Add support for filtering by color

* Miscellaneous code cleanup

* Spell out "underscore" in comment

* Update required state in docs
2018-01-30 23:42:33 +01:00
2ebb611b50 Changing letsencrypt module to use ACME v2 protocol (update) (#35283)
* Adding warnings.

* Forgot choices for acme_version in code.

* Removed 'errors' support again.

* For DNS challenges, also return complete record to simplify wildcard generation (see #35283).

* Also returning order URI and account URI. This is mainly for debugging purposes.

* Adding more clear separation between the two calls. Avoids problems where code during second call thinks it is during first call and doesn't stop with error, but doesn't obtain a new certificate either.

* Added validate_certs parameter.

* Actively discouraging from setting validate_certs to false.

* Fixing DNS challenge example.

* Adding new output challenge_data_dns, which simplifies DNS challenges.
2018-01-30 17:39:58 -05:00
8621a80a82 Add aws_batch_job_queue and aws_batch_job_definition to CHANGELOG 2018-01-30 17:31:10 -05:00
05f765bda0 New module: aws_batch_job_definition 2018-01-30 17:28:45 -05:00
8578b3c1c5 [cloud] new module aws_batch_job_queue: support for AWS Batch Job Queues (#26701)
1. Removed redundant default values in argument_spec
2. Enclosed non standard python libraries in Try Except ImportError block
3. Added region as a mandatory element in argument_spec
4. Updated the typo in api_params while accessing job queue. Changed it from job_queue to jobQueue
5. Updated the set_api_params() method to use snake_dict_to_camel_dict()
6. Updated the ANSIBLE_METADATA version from 1.0 to 1.1
7. Updated the version_added in Documentation from 2.4 to 2.5
8. Initialized response value to None
9. Updated the RETUN documentation
10. Updated the return from manage_state() method to not embed batch_job_queue_action in ansible_facts
11. Updated the module.exit_json()  in main() to convert any keys back to snake_dict format using camel_dict_to_snake_dict to maintain consistency throughout the module
12. Changed the filename from batch_job_queue.py to aws_batch_job_queue.py
2018-01-30 17:22:06 -05:00
287f3a609e Fixes #35468: ADD max_results to the nios api (#35473)
* Fixes #35468: ADD max_results to the nios api

* Fixes #35468: fix nios unittest

* Fixes #35468: document the module docs fragments for nios
2018-01-30 22:21:45 +00:00
c282e4e00f Replace LooseVersion comparison with int/float comparison. Fixes #35435 (#35519) 2018-01-30 15:27:22 -06:00
fda09a75d3 elasticache: default zone to None - fixes #31779 (#31785)
* elasticache: default zone to None.

* Only add PreferredAvailabilityZone to kwargs if self.zone is not None
2018-01-30 16:12:22 -05:00
c02b1f586f Add new AWS modules aws_elasticbeanstalk_app and aws_ses_identity (#35518) 2018-01-30 16:08:57 -05:00
2c4f52d404 [cloud] iam_role: allow retention of existing policies (#28513)
* module_iam_role: add_remove_policies_option

* Update 24080 with requested changes.

* Fix whitespace and rename the option remove_unlisted_policies to purge_policies.

Update version_added

* Fix exception handling in iam_role module

* Fix line length
2018-01-30 15:13:45 -05:00
234a877ea5 Netact cm command2 (#34873) 2018-01-30 19:00:29 +00:00
f659cc5963 Guard against assignments that are not ast.Name in docs parsing (#35513) 2018-01-30 12:56:16 -06:00
ef34eb1a7d Fix junos integration test failures (#35508)
* More integration testcase fixes for junos_facts
2018-01-31 00:07:01 +05:30
eb14eac1c6 Add aws_batch_compute_environment to CHANGELOG 2018-01-30 13:35:26 -05:00
9e68ac9d86 Initial support for AWS Batch Compute Environment (#26699)
* Add AWS Batch Compute Environment module

* Move common code for AWS batch modules in module_utils/aws/batch
2018-01-30 13:24:38 -05:00
58d54799b8 exposes rpc method to plugin (#35507)
The rpc method should be exposed to the modules over the connection rpc
mechanism.  This fix will expose the rpc method to call generalized rpc
endpoints on remote devices
2018-01-30 12:27:48 -05:00
bf5770dec4 Fix virt role detection for kvm if no other match (#35403)
This fixes an indention bug introduced in
45a9f96774
that was causing the virtualization_role to be set to 'host'
for many cases incorrectly.

Fixes https://github.com/ansible/ansible/pull/21621
(the issue mentioned in the pr)
2018-01-30 11:42:13 -05:00
6cc5e4c9df galaxy remove incorrect check for role path before extraction (#35259)
* galaxy remove incorrect check for role path before extraction

Fixes #35217

Currently lib/ansible/galaxy/role.py checks roles_path and will
ignore paths that don't currently exist which it should not because
the path will attempt to be created by the role extraction process
(which is valid and expected behavior) and if unable to write at the
time of role extraction into the role_path, that error will be
handled properly at that point in the process.

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

* add test case for galaxy install with rolefile and rolepath

Verify we don't regress GitHub Issue #35217

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

* fix the integration test

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

* double quote for shellcheck glob warning

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

* fix galaxy install tests to not need remote resources

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

* make shellcheck sanity tests happy

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

* prep git global conf for running the galaxy install tests in docker

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

* move ansible-galaxy tests into their own target, make git conf non-global

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

* fix up tests based on feedback

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

* remove extra newline from aliases file

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-01-30 10:40:25 -06:00
4a79112e5c Fix ios_facts return values (#35239)
* Revert model and serialnum to older version

* Add stacked versions of model and serialnum as separate facts

* Add unit test to check stacked output

* Alter model regex to address #34768
2018-01-30 11:17:14 -05:00
f5022de5d6 Add support for primary and secondary redundancy types. Require cdn name for user-defined names. (#35505) 2018-01-30 16:50:16 +01:00
3d614bfe84 Clarify lookup plugin TypeError recovery
Change the code and comments around recovering from a TypeError in
handling the return value from lookup plugins to make it clearer what
we're recovering from.
2018-01-30 07:21:36 -08:00
3729cc57d0 Add porting guide note about include inheritance change (#35199)
* Add porting guide note about include inheritance change. Fixes #35096

* Also make note of using import_* when possible

* Edited for clarity.
2018-01-30 09:09:41 -06:00
a23c95023b Module deprecation: docs, scheme and tests (#34100)
Enforce module deprecation.
After module has reached the end of it's deprecation cycle we will replace it with a docs stub.

* Replace deprecated modules with docs-only sub
* Use of deprecated past deprecation cycle gives meaningful message (see examples below)
* Enforce documentation.deprecation dict via `schema.py`
* Update `ansible-doc` and web docs to display documentation.deprecation
* Document that structure in `dev_guide`
* Ensure that all modules starting with `_` have a `deprecation:` block
* Ensure `deprecation:` block is only used on modules that start with `_`
* `removed_in` A string which represents when this module needs **deleting**
* CHANGELOG.md and porting_guide_2.5.rst list removed modules as well as alternatives
* CHANGELOG.md links to porting guide index

To ensure that meaningful messages are given to the user if they try to use a module at the end of it's deprecation cycle we enforce the module to contain:
```python
if __name__ == '__main__':
    removed_module()
```
2018-01-30 12:23:52 +00:00
7c83f006c0 Fix triggering parent's always with run_once set (#35464) 2018-01-30 13:16:19 +01:00
2293252e52 bug-35431 fixed removing encryption from user on subsequent runs of the task (#35433) 2018-01-30 11:26:54 +05:30
4956bfd4c4 english corrections (#35307) 2018-01-29 21:09:56 -08:00
2f7d207d7a fixes error in dict_merge when merging list value (#35461) 2018-01-29 21:45:35 -05:00
359ff19484 Temporarily disable influxdb_user test.
The test interferes with the `uri` test.
2018-01-29 18:22:04 -08:00
3b0dcf7f29 Test Windows 2012+ using Azure by default. 2018-01-29 17:17:06 -08:00
7fa09390b0 Elasticbeanstalk app (#31079)
* New AWS elasticbeanstalk app module

* Integration tests for elasticbeanstalk_app
2018-01-29 18:38:32 -05:00
5814f9effa Add win_product_facts 2018-01-30 00:12:02 +01:00
10f3a47eab Use static password for win_owner test. (#35482)
This will provide consistent results across test runs and
should avoid previously seen issues with password complexity
failures.
2018-01-30 09:04:40 +10:00
becb31f34c nmcli: Allow setting ipv4.dhcp-client-id parameter (#34268)
Signed-off-by: Orion Poplawski <orion@cora.nwra.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 17:02:46 -06:00
8dc0048698 Add AWS Direct Connect VIF (aws_direct_connect_virtual_interface) to CHANGELOG 2018-01-29 17:25:56 -05:00
6dda001a8c [cloud] new module - AWS Direct Connect virtual interface (#33211)
* Add an AWS Direct Connect virtual interface module

Fix DirectConnectError exception wrapper to be compatible with fail_json_aws()

* Fix documentation and handle BotoCoreErrors as well

* Add the aws and ec2 documentation fragments
2018-01-29 17:23:03 -05:00
e98e757ec4 Fix win_regedit module and tests. (#35478) 2018-01-30 07:57:03 +10:00
4da19f2d6b Added code-smell check to verify filenames are allowed with Windows (#35436) 2018-01-29 13:46:02 -08:00
fed4217fd7 [cloud] ec2_eni: Add a purge option for secondary ip addresses - fixes #26575 (#26596)
* add purge option for secondary ip addresses and fix changed to reflect when addresses are modified

* Improve option documentation and make the secondary_private_ip_addresses option required if purging secondary private ip addresses.

* ec2_eni: update version_added to 2.5 for purge_secondary_private_ip_addresses option.
2018-01-29 16:31:21 -05:00
b20ba105c2 intg tests for 'any_errors_fatal' (#25813)
* start adding intg tests for any_errors_fatal

* updates

* show captured output

flip conditional for on_includes

* cleanup/ci poke

* fix typos

* Add 'EXPECTED FAILURE' to tasks names for expected failures
2018-01-29 15:47:13 -05:00
923174a856 Infoblox should be run locally (#35390)
* Infoblox should be run locally

* use connection: local
2018-01-29 20:38:36 +00:00
d16bc1c3f4 New aws_ses_identity module to manage AWS Simple Email Service Identity (#31140)
* Add aws_ses_identity module

* Update CI alias, add BotoCoreError exception handling.

* Add SES and SNS permissions to hacking/aws_config to run aws_ses_identity integration tests
2018-01-29 15:35:49 -05:00
bbdddffa1e Fix junos_facts integration test failure (#35469)
Hostname is not always configured on remote host
Instead add a assert statement to check if netconf
is configured for junos_facts.
2018-01-29 23:35:43 +05:30
8606bfde4f VMware: vmware_guest template find (#35088)
This fix adds logic to find unique virtual machine template using name.

Fixes: #26669

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 21:39:50 +05:30
2b0ad2c88a ovirt_vms: Add high_availability_priority to ovirt_vms (#35289) 2018-01-29 08:18:38 -05:00
e39156196c ovirt: Fix vms BIOS boot_menu attr compare (#35454) 2018-01-29 08:17:57 -05:00
cb96f8a250 VMware: refactor vmware_dvs_host (#35440)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 07:56:39 -05:00
d178df8f01 Fix edit_config multiline commands on IOS (#35375)
* Fix edit_config multiline commands on IOS

The current code for multiline commands in IOS is broken: If you
pass a dict containing a command, prompt and answer it is seen
later as unicode string, but if you do a json.loads it fails
as the keys/values are enclosed in single quotes but JSON requires
double quotes.

Fixes #23539

* Fix pep8

* Use ast literal_eval

It's safe to use, as it is just for types and wont execute arbitrary code.
2018-01-29 12:03:25 +01:00
5f1254697d New module etcd3 (#35053)
This module uses etcd3 python library to do k/v manipulation on
an etcd3 cluster using version3 api.
2018-01-29 11:49:30 +01:00
3b76db5239 Add new VMware modules in changelog (#35438)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 10:52:04 +01:00
aa736c6944 VMware: add new module: vmware_host_acceptance (#35040)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 14:30:57 +05:30
aac6d282e5 VMware: Add new module - vmware_vm_vm_drs_rule (#34177)
This adds a new module called vmware_vm_vm_drs_rule. This module add
affinity/antiaffinity rule for VM-VM in given cluster.

Fixes: #32109

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 09:36:57 +05:30
8549482482 VMware: add new module: vmware_host_package_facts (#35036)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 09:21:34 +05:30
1baa9b4d90 Use TEMP variable instead of hardcoded path (#35380)
The script fails if a Temp directory is not present in the system drive (e.g. C:\Temp).
This can be solved by using the TEMP environment variable instead.
2018-01-29 11:47:06 +10:00
3605c19377 VMware: return facts depending upon type of VM (#35419)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-28 16:29:40 -05:00
9ee079f34d further fixes to rename only where required (#35432) 2018-01-29 07:02:31 +10:00
d902bd39a3 renamed test file to allow checkouts on Windows (#35430)
* renamed test file to allow checkouts on Windows

* used different name pattern to fix sanity issues
2018-01-29 06:22:05 +10:00
857d0fd62e VMware: add new module: vmware_host_vmnic_facts (#34984)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-28 21:34:45 +05:30
19da03c485 Add random password generation logic in host_add (#30380)
Fix adds ipa host_add functionality of generating random
passwords for host enrollement. This fix also preserves the
idempotency of host_add and host_mod IPA APIs.

Fixes: #30328

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-28 09:42:58 -05:00
85091e7a8e Add runasusercategory and runasgroupcategory parameters for ipa_sudo_rule module (#30421)
* Add runasusercategory and runasgroupcategory parameters

* Add "version_added" to docstring

* Remove redundant "required=False" argument specifications
2018-01-28 01:10:27 -05:00
ee2a8ff324 Fix small typo in documentation 2018-01-28 03:43:43 +01:00
96dda702f7 cloud:ovirt:ovirt_vms.py: Added 'quota_id','sso', 'boot_menu', 'usb_support', 'serial_console' fields to ovirt_vms module (#34048)
* Added 'quota_id','sso', 'boot_menu', 'usb_support', 'serial_console' fields to ovirt_vms module

* always run ansible-test first

* always run ansible-test first 2

* suggested changes applied
2018-01-27 15:18:09 -05:00
c2d3b9cbd5 refactors nios api shared code to handle provider better (#35393)
* refactors nios api shared code to handle provider better

This change refactors the shared code to be easily shared between
modules, plugins and dynamic inventory scripts.  All parts now implement
the provider arguments uniformly.

This also provides a centralized fix to suppress urllib3 warnings coming
from the requests library implemented by infoblox_client

* fix up pep8 errors

* fix missing var name
2018-01-27 08:03:06 -05:00
1f1402ea68 Integration tests for influxdb_user module (#35315)
* Added integration tests for influxdb_user
* Tests for idempotency checking and check mode
2018-01-27 18:24:34 +05:30
47d8d8c36e Fix yum integration tests (#35177)
* use tests instead of filters

* Don't check 'rc', use success/failed tests

- yum module use 'fail_json' which set 'failed'
- 'rc' is for backward compatibility:
  bbd6b8bb42/lib/ansible/executor/task_executor.py (L571)
- besides yum module doesn't document any return values

* Allow to run tests twice in a row

ansible-test is executed with '--retry-on-error' switch, then tests must
be able to executed twice in a row.

Error was:
TASK [yum : install group] ***
ok: [testhost] => {
    "attempts": 1,
    "changed": false,
    "failed": false,
    "invocation": { [...] },
    "msg": "",
    "rc": 0,
    "results": []
}

TASK [yum : verify installation of the group] ***
fatal: [testhost]: FAILED! => {
    "assertion": "yum_result.changed",
    "attempts": 1,
    "changed": false,
    "evaluated_to": false,
    "failed": true
}
2018-01-27 12:35:18 +01:00
eeeea1406b zabbix_host: add interface definition error checking / defaults (#35366)
* add checking of interfaces, providing defaults or errors if required keys are not defined

* fix so that iteration of interfaces only happens if defined
2018-01-27 05:06:13 -05:00
04d88755d5 fix win_user_right test for Azure (#35415) 2018-01-27 19:33:22 +10:00
763ecec1b3 Add boilderplate to remove a module but keep documentation. 2018-01-26 15:20:36 -08:00
5f3b546180 [cloud][AWS] permit tagging of lambda functions (#24889)
* permit tagging of lambda functions

Signed-off-by: fernandoalex <jfernandoalex@gmail.com>

* changed iteritems for items and test for identity to is not

* fixed task name in example

* module object was not being passed to the function

Module object was not being passed to the funtions whitch was causing error in the error handling.

* Use compare_aws_tags

Check for attribute and fail if botocore needs to be updated

Update version_added

* Fix examples

* pep8

* Remove unnecessary var

Handle BotoCoreError
2018-01-26 16:24:38 -05:00
c96bad461f VMware: Fix dvs idempotency issue (#35389)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-26 16:23:47 -05:00
56196e66bf [cloud] Improve results from ecs_taskdefinition_facts (#34337)
ecs_taskdefinition_facts should not populate ansible_facts with
so much information.

Better to just return the contents of the dict directly.

Reduce line lengths, use AnsibleAWSModule, don't reimplement
camel_dict_to_snake_dict.
2018-01-26 16:13:22 -05:00
2fac647955 [cloud] ec2_asg should wait for ASG to delete (#35327)
`wait_for_instances: no` means do not wait for instances to become
InService/Healthy before terminating them. It does not mean don't
wait for the ASG to delete.

Not waiting for the ASG to delete can cause problems when recreating it.
Ensure that waiting for the ASG to delete respects `wait_timeout`.
2018-01-26 16:12:21 -05:00
346063795d Add identity_api_version opt in OpenStack modules (#26103)
Fix #26092 : OpenStack modules does not work with identity v3
2018-01-26 15:08:13 -06:00
afc4d3c203 Small documentation fix in vault.rst (#35384) 2018-01-26 13:06:40 -08:00
6dcb41b40f rabbitmq_policy: fix IndexError when no policies exist yet (#33556)
If the list of existing policies is empty, an IndexError would be raised
since stdout was blank.
2018-01-26 22:00:53 +01:00
b1a6f1f47b remove simplesteph from module maintainers (#35407) 2018-01-26 15:33:56 -05:00
1454cafd14 [cloud] snake_case hostvars in aws_ec2 inventory plugin (#35306)
* snake_case hostvars in aws_ec2 inventory plugin for improved compatibility with AWS modules

* Format tags with boto3_tag_list_to_ansible_dict
2018-01-26 15:10:45 -05:00
13cbe115e1 Add new module iam_user to CHANGELOG 2018-01-26 14:56:27 -05:00
4af454ed4e [cloud] New AWS module iam_user with check mode support (#27588)
Add `iam_user` module that supports check mode

Based entirely on `iam_group` with check mode support added.
Does not support management of groups, so as not to interfere with the
`iam_group` module.

* Update the copyright

* Remove e.message from exception handling since it is not available on python 3
2018-01-26 14:55:42 -05:00
a5d22e3781 Add aws_az_facts to CHANGELOG 2018-01-26 14:53:29 -05:00
73176d2a1d [cloud] New module aws_az_facts (#20690)
New aws_az_facts module to be able to get facts from AWS availability zones
2018-01-26 14:52:42 -05:00
94bb2e3a08 Add aws_region_facts to CHANGELOG 2018-01-26 14:49:48 -05:00
c3a5c075c8 [cloud] New module aws_region_facts (#20689)
* New aws_region_facts module to be able to get facts from AWS regions

* Fix copyright

Handle BotoCoreError too

Remove exception handling around around boto3_conn

Fix docs

Fix version_added

* Update metadata_version

Fix return doc
2018-01-26 14:48:50 -05:00
60d2a8b6a1 Fortinet FortiManager Scripting Module (#34518)
* Adding new code for new module and new module_utils with the pip pyfmg package

* Changed login and logout functionality and renamed mod_utils file as well as cleaned up PEP8 syntax

* Removing extra Ansible parameters and fixing more syntax issues

* Fixing more syntax issues and comparing against previous FTNT script module

* Changing import location to pass syntax checks

* Fixing pylint errors

* Removing test files

* Add unit tests and enabling a login session check within main in order to throw error if network connection exception

* Fixing syntax issues for adding unit tests

* Changing case for pip package requirements

* adding comments

* adding version restriction on pip package for testing

* adding version restriction on pip package for testing

* More comments

* Fixing documentation errors and add the ability to skip a test if it isn't present

* Fixing Pep8 error with whitespace (tab) in the row
2018-01-26 18:40:12 +00:00
d32c4ab62e Fix task description of thinpool examples (#35402) 2018-01-26 18:36:10 +00:00
34d6f5168f Add -F to usermod -p to force user password update (#26258)
If changing root password, usermod will fail with error "Login root is currently in use\n".  -F avoids this
2018-01-26 12:30:32 -06:00
ea2b89c7ae Added +1 to the end in random filter so that it was inclusive (#27215) 2018-01-26 11:36:44 -06:00
101e983f07 Remove incorrect assumption on exception constructors (#35271)
Do not assume that all exception constructors accept a single string
argument. For example UnicodeError's __init__ takes 5 parameters:
encoding, object, start, end, reason.

Also, if e.message is present but empty, fall back on stringifying
the exception occurrence.

Fixes #35270
2018-01-26 11:07:58 -06:00
7404dc6767 Recursively remove args with omit as as their value, to match suboptions in argument_spec (#35299)
* Recursively remove args with omit as as their value, to match suboptions in argument_spec

* Add test for the new remove_omit function
2018-01-26 11:07:04 -06:00
1a4efca83c fix when using vrf option (#35118)
ping did not include "vrf" keyword in command and would fail.
2018-01-26 22:22:23 +05:30
44171b70c2 [ec2] return instances sorted by id (#35359) 2018-01-26 10:51:17 -06:00
de2427beaf Add transfer checksum verification in copy module (#35367)
* Add transfer checksum verification in copy module, to ensure that the file was transferred to the remote successfully. Fixes #35029

* Guard on no checksum

* Add version_added
2018-01-26 10:48:08 -06:00
e8633b7a22 Added VLAN configuration. (#35343)
Fixes GH 22147

Signed-off-by: Amol Kahat <akahat@redhat.com>
2018-01-26 10:21:59 -06:00
1f1e5c11a9 ios_command: Whitelist some commands starting with configure (#35363)
* Whitelist some commands starting with `configure`

* Add tests for conditional `configure` rejection
2018-01-26 10:55:50 -05:00
4fa02d581d Remove 'attempts' from non-looped tasks (#35316)
* Remove 'attempts' from non-looped tasks

* Use self._task.until to determine if we're in a loop

* Undo recent changes to Windows tests
2018-01-26 09:06:03 -06:00
f910d5d16d Add ec2_vpc_egress_igw to CHANGELOG 2018-01-26 09:23:08 -05:00
892fc41190 [cloud] New module: Amazon Egress-Only Internet Gateway (ec2_vpc_egress_igw) (#23941)
* New module: ec2_vpc_egress_igw

* minor pep8 fix and doc update

* add test dir and files

* add tests for gateway module

* fix up return documentation per review

* remove HAS_BOTO3 stuff as it is handled in AnsibleAWSModule per review

* fix an error with failure message and add custom handler for non-existent vpc ID

* add additional tests and update tests per review

* ignore errors on clean up tasks

* update module copyright to newer format

* fix exception handling since BotoCoreError doesnt have response attribute

* actually fix exception handling this time so it works with Py3 as well
2018-01-26 09:22:30 -05:00
f849dc9cad add extattrs as an option when using nios lookup (#35371) 2018-01-26 06:33:44 -05:00
0fb916c35e more Azure test fixes for Windows (#35386) 2018-01-26 20:44:40 +10:00
d2d825ccd3 Add ManageIQ OpenStack provider (#34932)
Adds the capability to create OpenStack providers. Because one
of the parameters, keystone_v3_domain_id, is not currently
exposed, it is added as an alias of azure_tenant_id which currently
maps to uid_ems. Work is in progress to fix this.

ManageIQ/manageiq#16802
ManageIQ/manageiq-api#279
ManageIQ/manageiq-providers-openstack#196
2018-01-26 04:56:06 -05:00
1c8a872648 win_disk_facts: Prefix facts with ansible_ and use raw values (#35326)
* win_disk_facts: Prefix facts with ansible_

* Return raw values in bytes rather than formatted strings

* Fix Fail-Json message

* Improve examples
2018-01-26 19:46:53 +10:00
466e1b289b Add thin pool / volume managment to lvol (#19312)
* add functionality to create thin pool / volume on Linux LVM to lvol module

add `thinpool' parameter.
change `lv' parameter to not required.

To create thin poll, specify `thinpool'(, `vg' and `size') parameter and omit `lv' parameter.
It will create thin pool, nameed by `thinpool' parameter.

To create thin volume, specify both `thinpool' and `lv' parameter (also `vg' and `size' paramter is need).
It will create thin volume on `thinpool' pool, named by `lv' parameter.

Thin volume and pool can delete whith 'state=absent' parameter.
Thin volume is resizable like normal volume.
Thin pool can extend, but not reduce. This limitation is in Linux's LVM.

* Add thin volume support

- Based on f816618

- Indicate that either lv or thinpool are required parameters using
AnsibleModule's required_one_of.

- Resolve conflict with snapshot functionality

* Fix typo in documentation

* Fix and simplify logical volume check

* Rebase fixes

* Convert examples to native YAML syntax

* Fix failure with snapshot creation

* Properly fail when trying to snapshot a thinpool volume

* Don't fail when no size given for thin volume snapshot

Fixes ansible/ansible-modules-extras#2478

* Convert old style required property sneaked in through rebase

* Fix 'too many leading #' syntax check
2018-01-26 08:49:51 +00:00
e2af5dfae0 Module to generate Diffie-Hellman parameters (#32620)
* Module to generate Diffie-Hellman parameters

Implements #32577

* Add integration tests for openssl_dhparam

* Slightly refactor check to prevent unnecessary regeneration

* Fix code smell in tests

Highly annoying to have to do this again and again and again as the rules change during the game

* Using module.run_command() and module.atomic_move() from a tempfile.

* Remove underscore variable

Ansible prefers dummy
2018-01-26 08:08:29 +00:00
0db98d7d71 NPM integration tests: use ansible-ci-files 2018-01-25 23:06:29 -08:00
a69445e218 Allowing to write intermediate certificate into file. (#34328)
* Allowing to write intermediate certificate into file.

* Fixing merge errors introduced in 25b1db5 (#34916).
2018-01-26 01:48:13 -05:00
573daf6280 Use ansible-ci-files for rpm_key test downloads. 2018-01-25 22:01:38 -08:00
1719267779 Sort arguments and return values in module docs
Comparing the old module docs, with the devel docs the
options/arguments/parameters are no longer sorted.

Also, both in the old module docs and the devel docs the result values
are not sorted where they probably should.
2018-01-25 18:34:27 -08:00
ea7d29e262 azure windows: changed pagefile to dynamically get the path (#35376) 2018-01-25 16:58:49 -08:00
b1d14d5b06 Fix failing zypper_repository integration test. 2018-01-25 15:29:23 -08:00
73f3b36fb1 Fix modules index delimiter and improve readability (#35187)
* Fix modules index delimiter and improve readability

* Hopefully fixes the links correctly :-/

* Anoteher attempt at this madness
2018-01-25 23:28:57 +01:00
3fadc5d614 Formatting and broken links (#35226) 2018-01-25 13:06:03 -08:00
3f556f2e37 adds infoblox dynamic inventory script (#35328)
* adds infoblox dynamic inventory script

* fix up issues from sanity testing

* fix pep8 issues
2018-01-25 14:29:11 -05:00
88c48d1437 ovirt: Support to search entity with additional parameters (#35285) 2018-01-25 14:19:25 -05:00
7abdab6c9e Convert ansible-test compile into a sanity test. 2018-01-25 09:45:36 -08:00
0ce8d389a4 azure_rm_dnsrecordset: fix broken import and minor updates (#34983)
* fix broken import

Error was:
lib/ansible/modules/cloud/azure/azure_rm_dnsrecordset.py:223:0: NameError: name 'ARecord' is not defined

* doc: use formatting functions

* remove unused dict
2018-01-25 09:39:49 -08:00
417accf88d Skip parameters that are being deprecated (#35319)
* Skip parameters that are being deprecated

So in most cases when parameters are deprecated, you may not want to
advertise them in the documentation. One reason for this is because
these parameters were not introduced within Ansible but predate
upstreaming them.

So this change avoids reporting parameters that are not documented and
are deprecated. It's only a small subset of the existing E322 errors.

* Add support for E323 with these changes

* Unsure about the other issues now

* Add better error message with E321

* Restore some erroneously remove files

* Readd false positives to ignore.txt
2018-01-25 11:10:49 -06:00
ed082af8c9 improved test coveraage for vyos_config (#35298) 2018-01-25 12:04:42 -05:00
f8a89f120f update nxos_interface doc (#35350)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-25 20:02:02 +05:30
e75055923b Changing behavior of new fullchain argument. (#34916) 2018-01-25 08:32:45 -05:00
cff4a2d26e fix *os_config module backward diff (#35332)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-25 18:49:20 +05:30
2f46f8f944 Added support for new Ansible Infra (network_cli plugin, cliconf, module utils cleanup and test) for dellos10 Support t (#34915)
* Support for network_cli plugin and tests

* Fixed ansible-test * issues

* Fixed Pylint warning

* Fixed the sanity test errors

* Fix YAMLlinter issue - removed blank spaces

* Fixed Python 3 failures

* Fixed the PEP8 issue

* Fix sanity --test validate-modules

* Reverted the changes to the doc fragments
2018-01-25 12:37:27 +00:00
1f544ed6cc VMware: Add new module : vmware_drs_rule_facts (#35337)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-25 16:38:07 +05:30
2a9ec6bdbf fix Windows tests with hardcoded Administrator account (#35339)
* Admin account is not always called Administrator (eg Azure)
* this fixes some, but not all issues related to the Administrator account on non-English Windows as well (still numerous references to "Administrators" and other en-US Windows group names)
2018-01-25 02:56:58 -08:00
3e7671879f git ignore module_doc build outputs 2018-01-25 01:22:35 -08:00
b50ab8eebd Letsencrypt: cleaning up tempfile code (2) (#35278)
* Cleaning up another tempfile opening.

* Avoid exception.
2018-01-25 03:58:24 -05:00
5959b93248 Removing underscore variables in letsencrypt module (#35282)
* Changing all _ variables to dummy (except one which will go away in #35278).

* dummy? -> dummy
2018-01-25 17:18:38 +10:00
c216473c82 Fix ios integration test failures (#35333) 2018-01-25 12:26:17 +05:30
dd949c5b65 * adds missing params in a task (#35330) 2018-01-25 09:06:57 +05:30
bec4dcd66c subnet should in the virtual network resource group (#35038) 2018-01-25 12:53:28 +10:00
e0010f15e4 Add pslint sanity test. (#35303)
* Add pslint sanity test.

* Fix `no-smart-quotes` sanity test.

* Add docs for `pslint` sanity test.
2018-01-24 17:22:14 -08:00
7c201fc9bc delete subnet should be idempotent (#35037) 2018-01-25 10:59:14 +10:00
e9e85625aa Disable failing azure_rm_postgresql* tests. 2018-01-24 14:26:52 -08:00
d462a425f2 Remove all config from interface if absent on eos_l2_interface (#35318)
If the module is set to absent, read all possible configurations and remove them.
i.e. not just do a 'no switchport', as leaving around other options make
the logic handling harder.
If the user wants to remove switchport, remove all config for the interface
and finally push a 'no switchport'.
Also, I needed to map all possible params from interface regardless if state
is absent or present, so I can later detect what I need to remove in case of absent.
2018-01-24 23:16:33 +01:00
90cd87f950 Fix debug logs failing with persistent connection (#33049)
* Fix debug logs failing with persistent connection

Fixes #33047

*  As debug logs are written on stdout, it interrupts
   the communication between ansible-connection(background)
   process and main process. To avoid this add a string similar
   to exactly identify the response string.

*  Remove unwanted code in ansible-connection

*  Fix review comments

* Fix spurious log emitted on ansible-connection stdout issue

*  ansible-connection which runs as a background process sends a
   json string (contains response received from remote device)
   to foreground ansible-playbook process over stdout.

*  If in case debug flag is enabled the connection_loader api
   invoked from ansible-connection `ssh = connection_loader.get('ssh', class_only=True)`
   results in emitting debug logs on stdout. This  spurious log
   interfere with the actual response and results in failure while
   reading json string in ansible-playbook process

* To avoid this save stdout of ansible-connection and redirect it string
  buffer to accumulate all the logs emitted by core API's

* Add these logs in `result['messages']` which is send a json string after reinstating saved stdout

*  Remove unwanted code in ansible-connection

* Fix review comment
2018-01-25 02:48:45 +05:30
bbedb9aac4 Disable failing azure_rm_mysqlserver test. 2018-01-24 13:09:39 -08:00
8ea0bfe9a3 Miscellaneous test fixes. (#35301)
* Add missing pylint test for invalid path.
* Fix syntax in integration test.
* Use Write-Output in win_script test script.
* Fix pylint in explain mode.
2018-01-24 10:22:04 -08:00
d7f71ce6ae Support for Services in the IPA module (#35175)
* adding support to manage ipa services
* IPA Services does not have a description
* fixes from code review
* Cosmetic changes (indentation) + documentation
2018-01-24 23:08:42 +05:30
ebe925405c Disable failing azure_rm_mysqldatabase test. 2018-01-24 09:31:52 -08:00
636c5eda23 Changing BSD to GPL (#34909)
* Update License Information
2018-01-24 11:55:33 -05:00
cc65636a10 Add PSScriptAnalyzer to default container. 2018-01-24 08:36:28 -08:00
b4fa68555d adds support for using connection=netconf (#33400)
* adds support for using connection=netconf

This change updates the module to provide support for using
connection=netconf instead of connection=local.  If connection=netconf
is used, then the various connection arguments will be silently ignored.

* adds netconf plugin default

This adds a default implementation for netconf plugins if the network_os
is not specified.  The default plugin will implement only the standard
netconf rpcs

* fix up pep8 issues
2018-01-24 21:48:41 +05:30
bd09e67438 More bug fixes before 2.5 (#35260)
This patch includes more fixes for bugs that were identified in
the upcoming 2.5 release.
2018-01-24 08:15:37 -08:00
c643a5d628 * removes the console logging from cli run before netconf run is (#35290)
started
2018-01-24 21:41:17 +05:30
1ac04ba52e Don't skip an inventory source just because it has a comma (#35002)
* Don't skip an inventory source just because it has a comma, make sure it's also doesn't exist as a path. Fixes #34931

* Add integration test for inventory path with commas
2018-01-24 09:44:55 -06:00
005a8278c6 influxdb: fix 'database_name' not optional (#35280)
follup up of 168fb07cba
2018-01-24 16:25:12 +01:00
5a8c73ad1b Adding enos_config.py action plugin to create backup properly (#34789)
* Adding enos_config.py action plugin to create backup properly

* Changing BSD to GPL

* Changing License file to GPL

* Updating enos_config.py

* Updated copy right year to 2017
2018-01-24 15:22:44 +00:00
3b669b8700 Clarify AWS autoscaling group documentation for load balancers (#35250)
Specified that `target_group_arns` is for application load balancers and `load_balancers` is for classic load balancers.
2018-01-24 10:18:08 -05:00
01ae1790d2 Add ManageIQ alerts module (#32136)
* Add ManageIQ alert policies module

* rename manageiq_alert_policies to manageiq_alerts

* manageiq_alerts: address review feedback
2018-01-24 07:35:39 -07:00
3b98a2981c Fix enable subprompt (#34723)
* Look for password prompts at the beginning of the line only

* Adds secondary checks for the supplied sub-prompts

Handles the case for enable prompts where enable_pass may be incorrect
and the deivce is still prompting for the password
2018-01-24 07:24:22 -07:00
56eeaf1b2f Changes to enable network_cli and netconf on iosxr integration tests. (#35269)
* * Changes to enable network_cli and netconf on modules.
* limits connection local for single TC per playbook.

* * adds a note on why only 1 TC is executed with connection: local
2018-01-24 19:46:27 +05:30
f49a782099 Fix terminal prompt re in ios and iosxr to match newline (#34585) 2018-01-24 19:21:04 +05:30
8095815b32 Changing letsencrypt module to use ACME v2 protocol (#34541)
* Adding support for ACME v2 protocol to Let's Encrypt module.

* Retry if nonce is invalid. (https://github.com/letsencrypt/Pebble#invalid-anti-replay-nonce-errors)

* Add support for errors list (also see letsencrypt/boulder#3339).
2018-01-24 08:38:36 -05:00
21169b2228 adds two new infoblox lookup plugins (#35189)
* adds two new infoblox lookup plugins

* nios - lookup plugin to return nios objects to the playbook
* nios_next_ip - lookup plugin to return the next avaiable ip address

* adds some additional examples to nios lookup

* fix up pep8 failures

* updates in response to review comments
2018-01-24 13:28:21 +00:00
0f17d74f0f tempfile.mkstemp() actually returns a file descriptor which should be closed. (#35263) 2018-01-24 12:06:10 +00:00
798cd41b34 Update README.md (#35241)
Added a dash between "zero" and "downtime" on line 8 to match formatting previously used in the same line.
2018-01-24 11:37:43 +00:00
6d67abdeb0 spelling (#35258) 2018-01-24 11:36:40 +00:00
0582521f96 NSO: handle types for leaf-lists in nso_config (ValueBuilder) (#34986)
Fixes: #34985
2018-01-24 11:21:17 +00:00
b7f815ba89 nso_config handle data.not_found in exists for nested lists (#35267)
Recent NSO can return data.not_found error on exists when parent list
entries does not exist. Handle this and return as false.

Fixes: #35264
2018-01-24 11:21:05 +00:00
b8e8fb48a8 Add OpenStack Director provider (#35043)
Adds the ability to create an OpenStack Director provider in
ManageIQ.
2018-01-24 03:15:40 -05:00
669a86174f Update docs for telnet module (#35257) 2018-01-24 07:33:47 +00:00
0b30c42902 fix pim rp_address issues (#35248) 2018-01-24 11:48:49 +05:30
7fac5cd7d2 Support for creation and modification of bridge and bridge slaves for nmcli (#34071)
Fixes: #31737
2018-01-24 11:00:09 +05:30
b2ea28f1ad [new module] azure_rm_sqldatabase (#34611)
* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase

* updates to azure_rm_sqldatabase
2018-01-24 15:17:31 +10:00
fd4fdbf01f ios_logging handling platform difference (#35232)
* ios_logging handling platform difference

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

* fix unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-24 10:39:31 +05:30
6f67d68f5a azure_rm_networkinterface: support the multiple ip configuration (#32882)
* support the mutilple ip configuration

* Update azure_rm_networkinterface.py

* add test

* fix spell

* make the virtual network name more flexiable

* add test

* fix

* fix lint

* add test

* fix parameter

* deprecate the flatten ip configuration

* fix lint

* fix encoding

* fix mirror

* fix

* load model from common
2018-01-24 14:57:08 +10:00
e970ae102c ecs_ecr: Fix AWS ECR repository creation (#34798)
* ecs_ecr: Remove registry ID from create repository call

[Boto3 documentation][1] specifies 'repositoryName' as the only expected
argument. The `**build_kwargs(registry_id)` part also adds 'registryId' which,
when executed, fails with: 'Unknown parameter in input: “registryId”, must be
one of: repositoryName'.

[AWS API documentation][2] also lists only the 'repositoryName' parameter. I.e.
this is not a problem with the boto3 library.

The default registry ID for the account that's making the request will be used
when creating the rpository. This means that if the `registry_id` specified by
the user is different from the default registry ID, then the policy changes
following the repository creation would fail, because the repository will have
been created in one repository but subsequent calls try to modify it in
another. Added a safeguard against this scenario.

[1]: https://boto3.readthedocs.io/en/latest/reference/services/ecr.html#ECR.Client.create_repository
[2]: https://docs.aws.amazon.com/AmazonECR/latest/APIReference/API_CreateRepository.html

* Fix concurrent ECR integration tests

If the `ecr_name` is the same in multiple concurrent test runs, then they can
interfere with one another causing both to fail. The `resource_prefix` is
guaranteed to be unique for different jobs running in CI an so avoids this
issue while also making it easier to identify the test which created the
resource.
2018-01-24 10:42:41 +10:00
ff2ad89081 Fix aws_account_attribute lookup credentials bug for access keys (#35242) 2018-01-23 18:55:56 -05:00
33c4351a35 Add authorize and provider params to eos_l2_interface tests (#35249)
Otherwise this fail for connection local
2018-01-23 22:45:17 +01:00
542cd37f6e ovirt_disk: Fix fail state condition of disk creation (#35093) 2018-01-23 15:31:57 -05:00
eacb4d0a4a Add become on eos_l2_interface tests (#35245) 2018-01-23 21:30:03 +01:00
8e965c5986 New module to setup WAF profile. (#34363)
* New module to setup WAF profile.

* Update copyright notice.

* updated required fields
2018-01-23 20:22:54 +00:00
69132007c0 Revert "Move requirements into tests. (#35197)"
This reverts commit 4f6017dc16.
2018-01-23 10:54:25 -08:00
eae23d2dbd Skip coverage on routine CI runs. 2018-01-23 10:38:38 -08:00
cdf8f29e70 Add hash making inventory caches unique to inventory script ran (#34742) 2018-01-23 13:10:22 -05:00
4f6017dc16 Move requirements into tests. (#35197) 2018-01-23 10:08:16 -08:00
060001b08d Remove deprecated code (#34828)
* Remove compat code for to_unicode, to_str and to_bytes

Code was marked as deprecated and to be removed after 2.4

* Remove is_encrypted and is_encrypted_file

Code was marked as deprecated after 2.4 release.
2018-01-23 12:02:09 -06:00
ec80f8ad80 Add identifier option to apache2_module (#33748)
* Add identifier option to apache2_module

There is a convention connecting the name passed to a2enmod and the one
appearing in apache2ctl -M. Not all modules follow this convention and
we have added a growing list of implicit conversions.
As a better long-term solution this adds an "identifier" option to be
able to set both strings explicitly.

* Run debian-specific tests only there

* Improve cleanup after apache2 tests

This is a follow-up/extension of https://github.com/ansible/ansible/pull/33630

* Add example for the new identifier option

* Put all debian tests in a block
2018-01-23 18:56:59 +01:00
ad8ee4e60f Removes a bogus key from fixtures (#35236) 2018-01-23 09:33:44 -08:00
181085821b Clarify when and how to enable ANSIBLE_DEBUG (#35220) 2018-01-23 17:10:17 +00:00
0d06d7caa0 New module to setup cluster cloud details settings for clouds like Az… (#34366)
* New module to setup cluster cloud details settings for clouds like Azure.

* Update copyright notice.
2018-01-23 17:09:46 +00:00
5c7f203c33 Add test for fix using loop_control with delegate_to (#33809) 2018-01-23 17:52:23 +01:00
b2dcc9c587 Better error message when file lookup fails (#30894)
* Alert user which debug level will show them useful details
2018-01-23 10:48:35 -06:00
a8b9d7f8be iam_role: fix docs, managed_policy not required (#35229) 2018-01-23 11:28:39 -05:00
ef6b478d2a add rstrip and lstrip bool flags to file lookup plugin (#31738) 2018-01-23 10:14:19 -06:00
7c8e365dff Conjur Lookup Plugin (#34280)
* Imported lookup plugin from Role

* Plugin cleanup, including:
* Use existing Python YAML parsing
* Remove environment variables as connection options
* Added initial debugging information

* Reworked the lookup plugin using the Python Request library.  As it's available through Ansible, it makes communication with Conjur much more straight forward.

* Removed un-used libraries

* Fixed linting issues

* Standardized output on `format` and insure it works for 2.6, 2.7, and 3.x.

* Use quote_plus from the six library for improved python 2/3 behavior.

* Refactored identity & configuration to prefer user's file. This also includes a refactor to remove an un-needed dictionary merge method.

* Removed `requests` in favor of `ansible.module_utils.urls`.

* Refactored netrc loading to warn if host is not present.

* Tests and a refactor to support easier testing.

* Added reference to website

* Fixed two linting errors

* Fixed an extra line found by linting

* Updated file write to use binary to insure config files are written correctly

* Resolved linting issues

* Refactored config & identity loading to take advantage of plugin options

* Cleanup a bunch of small items caught by linting

* Removed extra line caught by linting

* Swapped in pytest and added some tests with mocked network responses

* Pushing to see if this approach works better...

* Refactored be open_url mocking based on feedback

* Fixed a couple linting issues & refactored mocking into each method to attempt to resolve a failing test

* Use a generic MagicMock for python 2.6

* Fixes doc typo

require -> required

* Use `type: path` in identity_file and config_file

Also removes `expanduser` calls below (which will now be called automatically on
paths.)

* Defines maintainers for conjur_variable plugin

* BOTMETA.yml:
** defines $team_cyberark_conjur as maintainers of Conjur Variable plugin
** adds myself and @jvanderhoof to that team

* Adds URLs to relevant documentation for Conjur Variable lookup plugin

* Clarifies "the server," "the machine" -> "controlling host"

The machine identity used is that of the Ansible controlling host, not any
server being provisioned or instructed. This documentation change aims to make
that relationship clear.

* Adds response code to exception message on authentication failure

* Enhances exception messages to specify the controlling host

These error messages are less likely to confuse a user as to which machine is
associated with the files, identities, and configurations being described.

* Adds ANSIBLE_METADATA for Conjur variable lookup plugin
2018-01-23 10:04:57 -06:00
9c9e692165 Ucs vlans and integration tests (#35071)
* UCS VLANs module and integration tests

* UCS VLANs and integration tests
2018-01-23 16:32:32 +01:00
013190c27b VMware: Add support for datastore cluster (#35230)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-23 10:25:38 -05:00
ca31e59b79 VMware: Add teaming policy for DVS Portgroup. (#35215)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-23 09:51:50 -05:00
75130b4a4d Support domainname in docker_containers (#32292) 2018-01-23 08:24:37 -06:00
30ed29ed46 Implement the reduce_on_network method to filter a list of IP addresses on a given range. (#34929) (#34930) 2018-01-23 08:14:56 -06:00
a1639abd71 Fix Digital Ocean inventory script pagination handling (#35153) 2018-01-23 19:29:50 +05:30
19ff2f4e8c Ansible 2.5 feature support for dellos9 (#34880)
* Add ansible-2.5 support for dellos9

* Fix ansible-test issues and update copyright

* fix ansible-test errors in dellos9_config

* fix izip attribute error in python3

* fix python3 dict.keys() issue

* Remove waitfor aliases in dellos9_command
2018-01-23 13:59:27 +00:00
9f84a12adf ovirt_vms: Add cpu_threads parameters (#35221) 2018-01-23 08:46:37 -05:00
7aa0c929bf Ucs lan connectivity and integration tests (#35137)
* UCS LAN Connectivity Policies and integration tests

* Docs updated

* UCS LAN Connectivity Policy and integration tests

* Fix use of description in docs and argument_spec so validate-modules passes
2018-01-23 14:45:44 +01:00
9945d9a720 Ucs vnic template and integration tests (#35136)
* UCS vNIC templates and integration tests

* docs updated

* UCS vNIC template and integration test

* Update docs and argument_spec for description, mtu, and target.
2018-01-23 14:45:31 +01:00
3116585ae4 Ignore previous acl.py maintainer and also remove myself from docker* modules (#35216) 2018-01-23 10:08:16 +01:00
9e48cf875f Azure: added auth_source to override the source of the credentials (#35213)
* Azure: added auth_source to override the source of the credentials

* removed broken cli auth and fix some review changes

* missed some more cli auth stuff that isn't required

* Added cli auth back in

* Added docs around cli auth

* fix azure CLI auth issues

* tweak error messages
* fix auto fallback to cli
* fix import issues when azure-cli not installed
2018-01-22 23:38:05 -08:00
8c7bd8beb4 Set the tempdir on the shell mock object so that it is json serializable 2018-01-22 23:36:34 -08:00
32eef49062 Make AnsibleActionDone a private exception
We're going to remove this in the future so mark it private so people
are less likely to use it.
2018-01-22 23:36:34 -08:00
ca8e4c806a Pass tempdir via module args instead of the environment 2018-01-22 23:36:34 -08:00
06dc840b51 implement gather_subset on Windows setup (#35212) 2018-01-22 21:10:25 -08:00
ba9b5ca048 doc update (#35214)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-23 09:51:11 +05:30
4083c8e048 Fix nxos terminal plugin regex to support certain commands (#35186)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-23 09:04:13 +05:30
c0df05c028 github_release: Fix state returned from module (#33735)
This fix corrects the module state returned by github_module.
Now,
* When the release already exists, state is "ok"
* When the release is created, state is "changed"

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-23 08:37:41 +05:30
b151f5d942 Move module_set_locale and module_lang back to global
These config settings are being deprecated so we don't want people to
think they need to implement them for their new shell plugin.
2018-01-22 18:38:15 -08:00
62bc714dae Move setting for world-readable-tempfiles back to global config.
The code that depends on this is all in the action plugins so we should
leave it there until we either move that action plugin code over
(fixup_perms2) or we give action plugins the ability to register new
config.
2018-01-22 18:38:15 -08:00
5c2f3e3b8c Update ROADMAP_2_5.rst 2018-01-23 07:09:20 +05:30
64df1a7566 aci_aaa_user_certificate: Rename user parameter to aaa_user (#35207) 2018-01-23 02:23:06 +01:00
f94fe61b6b Documentation and changelog for the plugin_filtering config option 2018-01-22 17:13:41 -08:00
340a7be7c3 Implement plugin filtering 2018-01-22 16:54:53 -08:00
14c3b4d8e5 Move yaml loading functions from DataLoader into a utility module. 2018-01-22 16:54:53 -08:00
2a4b3ef0c1 win_product_facts: New module to get Windows product information (#35206)
* win_setup: Add Product ID and Product Key in facts

So this is actually a very nice way to get product key information from
systems collected centrally.

Especially with systems that have been upgraded from Windows 7 or
Windows 8 to Windows 10 may not have a valid Windows 10 product
license key printed anywhere, it was a digital license.

If you ever have to reinstall the system, you may recover the system
from the recovery partition, or the original media, but cannot upgrade
to Windows 10 for free. By collecting the product key, one can always
reinstall your free Windows upgrade.

My only question is, do we want this to be part of the default facts, as
it may be considered important information. Or should we make a special
**win_product_key_facts** ?

* Add ACPI product key support

* Add integration test

* Remove Get-ProductKey function, move inline
2018-01-23 10:44:55 +10:00
4a1cc661c4 add inventory caching & use in virtualbox inventory plugin (#34510)
* Inventory caching

* Add inventory caching for virtualbox

* Don't populate cache for virtualbox with stdout, use a dict of inventory instead

* Fix error creating the cache dir if it doesn't exist

* Keep cache default False and set to True in VariableManager __init__

* Check all groups before determining if a host is ungrouped.
2018-01-22 19:33:14 -05:00
Ben
9fdaa86c9f Fixes issue #34956 (#35149) 2018-01-23 10:25:08 +10:00
390f65bd6a [cloud] iam_role: fix docs & default state to present (#35184)
* iam_role: default state to present

* fix yaml
2018-01-22 18:51:11 -05:00
b94198f9de [cloud] New inventory plugin: aws_ec2 (#34416)
aws_ec2 is an inventory plugin intended to replace uses of the `contrib/inventory/ec2.py`
inventory script. 

For advanced grouping, please use the `constructed` inventory plugin.
2018-01-22 18:49:57 -05:00
6e585bdf24 Fact collector ordering deps (#31362)
Add deps/requires for fact collectors

Fact collectors can now set a required_facts
class attribute that will be a set of the names
of fact collectors they require to be run first.

ie, if a collector needs to know the ansible_distribution,
it should set it's required_facts to include 'distribution'

        required_facts = set(['distribution'])

If a collector requires another collector, it gets added
to the selected collector names.

We then topological sort the ordering of the collectors
so that deps work out (ie, 'distribution' will run before
'service_mgr')

required_facts were added to the collectors for:

        - network (requires 'distribution', 'platform')
        - hardware (requires 'platform')
        - service_mgr (requires 'distribution', 'platform')

Fix name references for facts (need 'ansible_' prefix)
is service_mgr

Fixes #30753
2018-01-22 18:23:40 -05:00
5fa29201a7 Port sts_assume_role to boto3 (#32569)
* Ported sts_assume_role to boto3

* Added integration tests
2018-01-22 17:46:08 -05:00
ffe0ddea96 add a vault --encrypt-vault-to specify vault id to use for encrypt (#31067)
Enforce that there can be only one --new-vault-id or
--new-vault-password-file and use this instead of
--encrypt-vault-id

* Add a config option for default vault encrypt id
2018-01-22 17:12:10 -05:00
Rob
866239e01a [cloud] Add support for using IP addresses in target groups (#34266)
* Add support for IP based ELB target groups. Fixes #30962

* Add support for using IP addresses in target groups
2018-01-22 16:47:41 -05:00
de60328d94 add documentation around commonly-used Facts for Conditionals (#34263)
* add documentation around commonly-used Facts for Conditionals

There are a few Facts that are often used for Conditionals, so
documenting them on the Conditionals page with their possible values.

* Edit
2018-01-22 13:37:19 -08:00
7f6feca82f Revert "win_setup: Add Product ID and Product Key in facts" (#35200)
* Revert "win_setup: Add Product ID and Product Key in facts (#34097)"

This reverts commit cf1f7b53df.
2018-01-22 22:32:23 +01:00
dd5256f3df adds restart_if_needed argument to nios_zone (#35191)
* adds restart_if_needed argument to nios_zone

* minor updates to the documentation strings
2018-01-22 21:21:07 +00:00
d6004852a2 ACI: Move to 'host' parameter instead of 'hostname' (#35161)
* ACI: Move to 'host' parameter instead of 'hostname'

* Update host parameter in documentation fragment too
2018-01-22 22:06:56 +01:00
cf1f7b53df win_setup: Add Product ID and Product Key in facts (#34097)
* win_setup: Add Product ID and Product Key in facts

So this is actually a very nice way to get product key information from
systems collected centrally.

Especially with systems that have been upgraded from Windows 7 or
Windows 8 to Windows 10 may not have a valid Windows 10 product
license key printed anywhere, it was a digital license.

If you ever have to reinstall the system, you may recover the system
from the recovery partition, or the original media, but cannot upgrade
to Windows 10 for free. By collecting the product key, one can always
reinstall your free Windows upgrade.

My only question is, do we want this to be part of the default facts, as
it may be considered important information. Or should we make a special
**win_product_key_facts** ?

* Add ACPI product key support
2018-01-22 16:00:45 -05:00
f2f743aef0 Uninstall backports.lzma in archive test.
This avoids breaking other tests which depend on backports
modules, since the backports.lzma module is currently
incompatible with other backports modules.
2018-01-22 12:36:03 -08:00
bcd883ce5e Included ansible_devices for AIX facts/hardware (#31546)
* Included ansible_devices for AIX
2018-01-22 14:37:45 -05:00
87e82be09f added new IBM Power KVM guest recognisation (#35169)
Signed-off-by: Toshaan Bharvani <tab@toshaan.com>
2018-01-22 14:29:44 -05:00
1ac715987b Update iam_group to add check mode support (#27589) 2018-01-22 14:29:22 -05:00
b7f4504a36 Add eos_l2_interface module and integration tests (#35162)
* Add eos_l2_interface module and integration tests

* Address PR review comments

* Fix pylint issues
2018-01-22 20:00:39 +01:00
142cacfec3 [cloud] ECS Service load balancer modification graceful fail (#32876)
It is not possible to modify the load balancer configuration
for ECS Service.

As it is possible to detect this, it's nicer to fail gracefully
than return AWS's less meaningful failure message.

Fix PEP8 compliance
2018-01-22 13:37:09 -05:00
b24d502682 VMware: Refactor vmware_dvs_portgroup (#35193)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-22 13:15:18 -05:00
b4736a8741 Add rhsm_repository module (#28292)
Add rhsm_repository module
2018-01-22 12:42:29 -05:00
c65842b9d8 Add check mode support in vmware_guest (#32858)
This fix adds check mode support in vmware_guest

Fixes: #32439

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-22 21:16:19 +05:30
e8dd01fa5b Add junos_l2_interface module (#35123)
* Add junos_l2_interface module

*  Implementation for junos_l2_interface module
*  Integration test

* Fix CI issues

* Fix review comments
2018-01-22 20:38:07 +05:30
912729b6a7 VMware: Check if VM is poweredoff before destroy (#35151)
This fix checks if VM is poweredoff before it can be destroyed.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-22 20:17:11 +05:30
8d775a332e Add support for Infoblox NIOS (#35097)
* WIP: initial commit

* update documentation in modules

* fix up sanity check issues

* add unit tests for nios api

* fix up sanity check failures

* fix up EXAMPLES in modules

* mock infoblox_client.connector

* remove unsupported assert statement
2018-01-22 14:25:13 +00:00
7228755f00 infoblox (#35179)
Even though this module belongs in net_tools it will be managed by the
network team.
2018-01-22 08:25:06 -05:00
775118aae2 2.5 Plugin Environment support and Testcases for dellos6 modules (#34890)
* Dellos6_2.5_support

* cleanup

* Fix pep8

* fix waitfor

* fix_facts

* fix_assert
2018-01-22 12:34:21 +00:00
2018a61489 archive: Add support for xz (#34110)
* Add support for xz format on archive module

Fixes #34037
Fixes #34119

Signed-off-by: Alberto Murillo <albertomurillosilva@gmail.com>
2018-01-22 07:33:07 -05:00
4d2204882a changelog: add new modules to changelog (#35158) 2018-01-22 12:18:50 +00:00
39aad91c5c ACI: Introduce port parameter (#35168)
* ACI: Introduce port parameter

* Add port parameter to documentation
2018-01-22 12:44:02 +01:00
46e53f90a7 ACI: Rename aci_intf_policy_* to aci_interface_policy_* (#35170)
* ACI: Rename aci_intf_policy_* to aci_interface_policy_*

* Modify documentation accordingly

* Fix validity ignore file
2018-01-22 12:40:15 +01:00
8fdfda76e9 cloudstack: cs_network: implement subdomain_access (#34741) 2018-01-22 12:15:39 +01:00
4bc22be614 Fix for nxos_pim issues (#35103)
* fix nxos_pim issues

* unused line removed

* unused line removed

* remove unnecessary files
2018-01-22 11:30:52 +05:30
d0a257efad aws-describe-subnets-rate-limit (#35044) 2018-01-22 09:14:22 +10:00
d1ce8e9924 vultr: add integration tests (#35157) 2018-01-21 22:54:12 +01:00
8071cc0529 Add support for adding the intermediate cert (#35144)
acme-tiny generate certificate without adding add the LE intermediate
certificate, which make several browsers and curl complain.
2018-01-21 15:39:22 -05:00
bff862b05d Fixes bigip_asm_policy (#35154)
This module had been unable to successfully create policies
on different partitions. This appears to be fixed now
2018-01-21 10:11:27 -08:00
347b5d1e50 write need bytes object on python 3 (#35143)
Otherwise, it fail with:

    Traceback (most recent call last):
      File \"/tmp/ansible_c1zmq3i9/ansible_module_openssl_certificate.py\", line 808, in <module>
        main()
      File \"/tmp/ansible_c1zmq3i9/ansible_module_openssl_certificate.py\", line 787, in main
        certificate.generate(module)
      File \"/tmp/ansible_c1zmq3i9/ansible_module_openssl_certificate.py\", line 692, in generate
        certfile.write(str(crt))
    TypeError: a bytes-like object is required, not 'str'
2018-01-21 06:26:32 -05:00
f23f277e46 Verify that acme-tiny is present (#35145)
* Verify that acme-tiny is present

* Use run_command rather than subprocess for acme-tiny

Besides consistency with the rest of the code base, this also
add 2 bug fixes:
- ansible should no longer show "warning, junk after json" when using the module
- it also verify the return code of acme-tiny, and so fail when the
verification fail. The previous code didn't check rc, so it would continue
with a empty file
2018-01-21 06:26:18 -05:00
fa5adabcbf aci_rest: Additional notes and simplify examples (#35091)
Add additional notes, improve examples
2018-01-21 10:59:08 +01:00
2bd0653488 ACI: Support validate_certs, use_ssl and use_proxy (#35146)
This PR includes:
- validate_certs, use_ssl and use_proxy support for the integration
  tests
2018-01-21 00:38:20 +01:00
4b8e76747e aci_config_snapshot: Fix bug with filter_target (#35141) 2018-01-20 22:49:59 +01:00
192c0dc9d1 ACI: Fix recently introduced bug (#35139)
This fixes #35135
2018-01-20 22:32:45 +01:00
2ad91dd359 ACI: Fix integration tests after error message change (#35138) 2018-01-20 21:40:55 +01:00
08f92a9f0f Fix fact deps when 'filter=ansible_fact' is used. (#33441)
The accumulated collected_facts was being update
with new facts _after_ filtering them. So only
facts that pass the filter would ever be passed
to other fact collectors.

For 'filter=ansible_service_mgr', even though it requires
the platform and distribution facts and even collects them,
they would get filtered out and never passed to the other
collectors that need them (service_mgr for ex).

Fix is just to add the unfiltered facts to collected_facts.

Adds unit tests for fact filter and collected_facts.

Fixes #32286
2018-01-20 15:07:27 -05:00
ec9769c82f Facts distribution clear linux 31501 (#32453)
The search string used to look for Clear Linux
was changed in 45a9f96774 to
be more specific, but was too specific. Now finding
a substring match for 'Clear Linux' in /usr/lib/os-release
is enough to consider a match.

Since the details of the full name in os-release varies
('Clear Linux Software for Intel Architecture',
 'Clear Linux OS for Intel Architecture', etc) the
search string match was failing and would fall back to the
'first word in the release file' method resulting in
ansible_distribution='NAME="Clear'

Also add a meta fact indicating which search string
was matched.

Test case info from:
        https://github.com/ansible/ansible/issues/31501#issuecomment-340861535

Fixes #31501
2018-01-20 15:05:53 -05:00
fc180a378a Support using vault password files that are themselves vault encrypted (#27668)
Extract vault related bits of DataLoader._get_file_contents to DataLoader._decrypt_if_vault_data

When loading vault password files, detect if they are vault encrypted, and if so, try to decrypt with any already known vault secrets.

This implements the 'Allow vault password files to be vault encrypted'  (#31002) feature card from
the 2.5.0 project at https://github.com/ansible/ansible/projects/9

Fixes #31002
2018-01-20 14:56:18 -05:00
ca8982f96c Fixes some bugs and things (#35122)
Removes deprecations and fixes bugs.
2018-01-20 10:40:20 -08:00
a0bb193598 Add K8s inventory plugin (#34920) 2018-01-20 08:50:01 -05:00
04bee050ac VMware: minor correction in documentation. (#35124)
Fixes: #27176

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-20 16:39:55 +05:30
c5a7beecc4 fix integration tests (#35117) 2018-01-20 08:13:31 +01:00
90f0c411e4 Adds module for bigip_device_group_member (#35121)
Module allows for members to be managed in a device group
2018-01-19 20:57:41 -08:00
585d8cf4c7 Adds bigip_ucs_fetch module (#35113)
This module can be used to download UCS files from a BIG-IP
2018-01-19 20:25:47 -08:00
2cd8a3a9a3 ACI: Make network testing work out-of-the-box (#35116) 2018-01-20 02:47:28 +01:00
064aad817d ACI: Add ACI version information to VMM domain docs (#35114) 2018-01-20 01:15:59 +01:00
f9c2c9570d Clean up imports to prevent issues with mutable data being used in modules (#35112)
* Clean up imports to prevent issues with mutable data being used in modules

* Remove un-needed mock
2018-01-19 16:33:16 -06:00
bf1580a333 ios_l2_interface (#35054)
* Fix sending 'None' to device on ios

* Add ios_l2_interface module & tests

* Skip l2 tests on non-l2 images

* Allow test to continue on non-L2 hosts
2018-01-19 17:14:32 -05:00
4d58d16793 Add aws_s3 action plugin to find source files as expected (#35028)
People expect to be able to upload files to s3 using standard
locations for files.

Providing an action plugin that effectively rewrites the `src`
key to the result of finding such a file is a great help.

Tests added, and IAM permissions corrected
2018-01-19 17:11:42 -05:00
d0e6889f93 win_become: another option to support become flags for runas (#34551)
* win_become: another option to support become flags for runas

* removed uneeded entries

* fixed up whitespace issue

* Copy edit
2018-01-19 13:58:10 -08:00
1c22d82c5e consul_io: fixed service availability check (#34293)
service is only up if the node publishing it is also available
2018-01-19 16:33:52 -05:00
a13958d273 added integration tests (#34825) 2018-01-19 21:45:16 +01:00
04f1b140d9 added aci_interface_policy_leaf_policy_group module (#34968)
* added aci_interface_policy_leaf_policy_group module

* fixing documentation errors

* fixed argument_spec function and fixing documentation errors

* added documentation extends..

* removed unnecessary aliases, improved notes, improved examples to show optional description

* fixing sanity checks

* fixed proposed changes by dag

* Fix one more leftover
2018-01-19 21:31:25 +01:00
b3b3c0ec54 Add regex to catch ios error prompt (#35007)
*  Move the error checking from ios_l3_module
   to ios termianl plugin by adding additional
   regex to catch error prompt.
2018-01-19 23:50:02 +05:30
585862e4d0 ACI: Added more VMM providers, doc improvements (#34879)
* Added more VMM providers, doc improvements

This fixes #34211 and others

* Add all VMM providers to other domain-related modules
2018-01-19 18:04:30 +01:00
10a8c6bc25 Integration tests for import/include (#33418)
* First pass at include_role tests

* Reorganize test structure

Do all import and include tests in a single target.

* Build out more tests and test with linear and free strategy for each type

* import_role tests

* Set target host for play test

* Basic import_playbook tests

* Basic import/include_tasks tests

* Add recursion test

* import_playbook tests

* Add import_playbook group_vars test

Issue #33177

* Additional group_var tests for import_playbook

* Enable recursion test

* More work on import_tasks

* Run all tests via run.sh, improve conditional tests, add never tag

Add never tag to certain failining tests and explicitly skip it for now until #34104 is merged. Some tasks need to remain commented out because they cause the entire play to fail and aren't skippable by tags because they are syntax and/or variable checks.

Improve test for whether or not a role was run based on a conditional. Since the [import|include]_role does not register a variable, use a variable that is set inside a role as a canary test for whether or not the role was run.

* Use a fail task rather than trigger a failure via bogus command

This should resolve the "unstable" test results.

* Import tag tests

Fix bug it tests where validate tasks weren't run on tag tests.
Add tests for task import/include with tags.

* Remove test for playbook group_var inheritance
2018-01-19 08:23:48 -08:00
2697c0e237 junos scp module (#31950)
* junos_scp module

This module transfers files via SCP from or to remote devices running Junos.

* fix version

* add return documentation

* updated return documentation

* docu, renamed args and exceptions
+ update docu
+ rename arg download to remote_src (simitlar to copy module)
+ exception handling for transfer errors

* add tests

* add test_junos_scp_all

* update to reorganized module utils

* fix unit tests
2018-01-19 11:07:47 -05:00
cea681a5c0 npm module compatible with npm5 (#26582)
* npm module compatible with npm5

Uses the `--long` flag in `npm list` to get the `missing` key back.

* npm: add integration tests

* npm: test the module with npm 4 as well

* Remove debug tasks, use variables

* Use tests instead of filters

* Adds xcambar as a maintainer of the npm module
2018-01-19 15:47:43 +01:00
386c6b4051 influxdb: add login aliases (#34599)
influxdb_user module has user_name, user_password which may confuse with existing
login arg username and password. Added aliases prefixed ith login_ to
help distinguish.
2018-01-19 14:54:42 +01:00
719feef2e0 * Fix DCI issues and changes to action plugin & utils (#35083)
* * Fix DCI issues and changes to action plugin & utils

* * Additional check to handle cli only modules for platforms that
support netconf
2018-01-19 16:22:31 +05:30
784853da35 Accepting SANs marked as critical (fixes #32767). (#35057) 2018-01-19 04:14:33 -05:00
39a7e0a975 Extending documentation (#35077)
- Adding Let's Encrypt production ACME directory URL
- Marking examples as one big example with several alternatives for the first step
- Adding another example which uses aliases for options, and uses DNS-01 challenges
2018-01-19 03:42:44 -05:00
1a8bbcf146 vultr: new module vr_dns_record (#34423) 2018-01-19 09:34:23 +01:00
87f2893481 VMware: Get virtual machine object using property (#33525)
This fixes get_vm method to use propertyCollector which
can efficiently find the virtual machine from given VMware
infrastructure using only name.

* VMware: Refactor vmware_guest module
* Add nested paths of datacenter
* Add tchernomax suggestions

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-19 09:50:20 +05:30
9106284c1c copy tests: only create recursive symlink in tests (#35073) 2018-01-19 11:42:20 +10:00
e5c6708d39 win_updates: added blacklist and whitelist filtering of updates (#34907)
* win_updates: added blacklist and whitelist filtering of updates

* fixed sanity issue with docs

* fix docs typos
2018-01-18 16:29:46 -08:00
beb0fd9b8b win_iis_webbinding: Fix bug with ipaddress * returning multiple bindings (#34721)
* win_iis_webbinding: Fix bug with ipaddress * returning multiple bindings
instead of only the ones defined as *. Address possible future issues around
hostheader * by just disallowing it. Resolves 25473. Added new test for
this case.

Removed all validation for https binding collisions due to difficulty in
validating all cases in which they could or could not collide. As a
result, also removed return values relating to certificate data.

Updated testing and docs appropriately

* win_iis_webbinding: added break to remove binding loops
2018-01-19 10:00:35 +10:00
389f4ef1fb template: change to pass along the correct template path (#35027)
* template: change to pass along the correct template path

* standardise tmp path behaviour

* removed if condition as it should not be needed
2018-01-19 09:51:42 +10:00
676ce74cbf apk: Fix package dependency bugs (#34419)
Fixes: #34325, #35062
2018-01-18 17:20:14 -05:00
a451613dd1 Make sure we don't try to inspect DOCUMENTATION, if the plugin doesn't have any (#35017) 2018-01-18 15:30:40 -06:00
3a4b69096f Clarifying documentation about account key being different from certificate's private key. (#35059) 2018-01-18 16:08:34 -05:00
3742ff9230 Fix CaptureStd in validate-modules to work on both py3 and py2 (#35060) 2018-01-18 14:50:31 -06:00
d8329e530c failed, skipped, and unreachable all seem to be needed for various callbacks. Fixes #34716 (#34724) 2018-01-18 14:42:40 -06:00
0a86287a92 Handle facts for HP-UX 9000/785 architecture (#33333)
This fix adds support for HP-UX '9000/785' architecture.

Fixes: #31976

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-18 13:26:42 -05:00
2fd5a99989 ACI: Fix validate-module tests E322 and E323 (#35052) 2018-01-18 19:18:43 +01:00
29c1d5cb5d Ensure that the become password is written on py3 in the ssh connection plugin. Fixes #34727 2018-01-18 09:32:22 -08:00
fb18338cdc Change documentation for path: in openssl_csr to match reality (#35045) 2018-01-18 09:43:05 -05:00
9b07746ff1 New module: monitoring/grafana_datasource (#29006)
* Add monitoring/grafana_datasource module

added ds type mysql and postgres + check of parameters

* Added option max_concurrent_shard_requests for es_version >= 5.6
2018-01-18 14:02:21 +00:00
a2b00e9b52 openssl_certificate: Ensure issuer field is set (#34982)
Ensure the Issuer field of the certificate is set when using the
selfsigned backend.

Fixes: https://github.com/ansible/ansible/issues/34963
2018-01-18 13:35:05 +00:00
cf88bfdbbf VMware: Refactor vmware_maintenancemode module (#35000)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-18 04:40:16 -05:00
8a6d699198 Enable nxapi nxos_banner test (#35033)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-18 11:50:15 +05:30
f806a58a5e Idempotency test for enabled mode nxos_udld_interface (#35031)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-18 10:40:01 +05:30
bf2ce55ca6 VMware: Add new module: vmware_host_config_manager (#34627)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-18 10:00:22 +05:30
943730b70c Update pamd.py to allow module path with slashes (#32197) 2018-01-18 09:57:12 +05:30
630ae01f91 win_wait_for: fix tests after attempts change (#35026) 2018-01-18 14:15:54 +10:00
f0134079e3 win_script: work when argument exceeds stdin buffer size (#33855)
* win_script: work when argument exceeds stdin buffer size

* Added test for large argument being passed
2018-01-18 11:28:33 +10:00
e6d01ff7e3 fix for ec2 module terminating instances outside of inventory -- Fixes #19427 (#26621)
* Proposed fix for issue 19427

* Use string_types and to_text for evaluation, if not on empty dict.

* if int, to_text and continue on
2018-01-17 20:15:10 -05:00
5a9562a101 Add option to toggle describe_image_attribute lookups (#34977) 2018-01-18 10:20:10 +10:00
20824b8f3d Simplify Windows versions in ansible-test. 2018-01-17 16:16:15 -08:00
8cc0e74448 Adds better error handling to f5 api connections (#35020)
Previously, the failure of the API connection would result
in a stack trace. This patch makes the failure capable of exiting
with fail_json
2018-01-17 16:14:35 -08:00
3371b5eb03 restore format arg to azure_rm_common errmsg 2018-01-17 16:10:17 -08:00
3e56883c44 zap extra format args from azure_rm_common errmsg 2018-01-17 16:00:45 -08:00
68ccd5fc00 fix minimum client version checking (#35018)
* bump minimum client versions to match requirements file
* improve prescriptive error messaging to match current recommendations
2018-01-17 15:26:07 -08:00
ea1361a927 modules/na_cdot_lun: properly compare LUN size (#34846)
current_size is returned from the API as string, while self.size
(the requested size) is an integer. This caused the comparison
to always be False, and a resize request to always be sent.
2018-01-17 16:32:54 -05:00
9a32f5c889 Add missing extends_documentation_fragment (#35013)
NXOS modules need more work, though that will all be in
module_docs_fragments/nxos.py
2018-01-17 16:31:53 -05:00
3c400c5899 ANSIBLE_METADATA doesn't support YAML currently, change 315 to invalid data type (#35009) 2018-01-17 14:15:22 -06:00
b20df1be02 Make template action respect local_tmp. Fixes #34941 (#35005) 2018-01-17 14:14:46 -06:00
8edd1cf182 changed to enable windows temp path override (#34967) 2018-01-18 05:54:10 +10:00
5b52bfad6d azure_rm inventory should add "ansible_connection: winrm" in host_vars for windows hosts - fixes #34689 (#34691)
* fix for https://github.com/ansible/ansible/issues/34689
azure_rm inventory should add "ansible_connection: winrm" in host_vars for windows hosts

* add ansible_connection: winrm - fix for https://github.com/ansible/ansible/issues/34689
2018-01-18 05:49:50 +10:00
f9f6080630 Improve handling of ansible-doc sanity errors. 2018-01-17 11:41:01 -08:00
e726c7ecf7 disable host_key_checking in virtualmachine test 2018-01-17 11:12:16 -08:00
e130b3eed2 added aci_switch_leaf_selector integration tests (#34951) 2018-01-17 19:44:35 +01:00
1166e181ec added aci_switch_leaf_policy_profile integration tests (#34952) 2018-01-17 19:44:03 +01:00
e4f294822f [cloud] kinesis stream server side encryption - fixes #30269 (#30689)
* Moved the encryption to its own action method.

* removed silly default value for encryption type.

* Code formatting issues from pull request ANSIBOT.

* changed version_added to  "2.5"
because of new new options available

* changed version_added to  "2.5"
because of new new options available

* changed version_added to  "2.5"
because of new new options available
2018-01-17 13:23:27 -05:00
2cb810544c Address missing extends_documentation_fragment (#35008)
* Address missing extends_documentation_fragment

* Document purge_aliases
2018-01-17 13:17:15 -05:00
66f654cb64 filter ipaddr: add custom delimiter option to ip4_hex(); fix format (#26862) 2018-01-17 12:49:49 -05:00
529404adc4 Removes redundant docs (#35006)
bigip_routedomain included docs that are already part of the f5
documentation fragment. This removes the redundant ones.
2018-01-17 09:42:36 -08:00
acb26758ef Adds better cli detection for bigip_command (#34975)
The new detection includes things like provider spec. The action
plugin for bigip generally was changed, so this is a required change
2018-01-17 09:33:20 -08:00
a352d43824 Compare arg+aliases between docs and argument_spec (#34809)
* compare arg+aliases between docs and argument_spec

* Add some special handling for the network modules provider options that also appear in the top level arg spec

* Fix error code for bigip_hostname

* Address merge conflicts due to changes in f5 modules

* Update validate-modules ignore based off a clean execution

* Address merge conflicts

* Address renamed module

* Address recent changes to modules

* Add ignore for ucs_ip_pool

* Update aci modules to get more reliable documentation comparison, but not mutating the module_utils aci_argument_spec

* Update ignore.txt after recent aci updates

* Add extra guard to ensure we handle provider special only for network modules

* Address additional changes to modules
2018-01-17 10:11:30 -06:00
8d733dbdf0 [cloud] New module cloudfront_distribution (#31284)
* added cloudfont.py, modified cloudfront_facts.py class name and fixed a minor bug

* Improvements to cloudfront_distribution

* Reduce the scope of the cloudfront_distribution module
    * Remove presigning
    * Remove streaming distribution functionality
* Add full test suite for cloudfront distribution
* Meet Ansible AWS guidelines

* Make requested changes

Fix tests

Use built-in waiter

Update copyright
2018-01-17 11:03:23 -05:00
53266e31df Work-around for empty changesets with status FAILED being created (#34933)
* Added check to prevent failed empty changesets from being left behind

* Fixing comments from PR 34933, prevent infinte loop and stricter exception catching
2018-01-17 11:00:28 -05:00
9d4d86237d Logger-process is not considered for pid and state (#34905)
Fixes #34899
2018-01-17 10:50:28 -05:00
74d635ba6b Add missing code to yamllint messages. 2018-01-17 07:34:51 -08:00
a7e27b74c9 Add ability to append suffix to host names for Cloudforms Inventory (#33565)
* Add ability to append suffix to host names for Cloudforms Inventory

Allows for use of a suffix that will be appended to host names returned
from Cloudforms API if that suffix is not present.

For example with a suffix of 'example.org', the following results
would be shown for a particular Cloudforms host name:
someexample -> someexample.example.org
someexample.example.org -> someexample.example.org

The main use-case for this is when Cloudforms has short names rather
than FQDN and there is a desire to to use the FQDN as the name.

* Add example line into Cloudforms INI file

* Clarify that leading fullstop needed

* Add validation to ensure leading fullstop for suffix
2018-01-17 06:36:17 -08:00
217ff4498c ansible-config: add simple tests (#34900)
* Revert "Fix ansible-config with python3 (#34673)"

This reverts commit 2a9daaa45b.

* ansible-config: add simple tests

* Fix ansible-config with python3

* ansible-test: don't quote "unusual" characters
2018-01-17 06:33:33 -08:00
93acd7c651 refactor iosxr_system for cliconf and netconf (#34749)
* * refactor iosxr_system for cliconf and netconf

* * Fix unit tests and sanity issues
2018-01-17 07:29:28 -07:00
0f692f1fe7 iosxr_user refactor for cliconf and netconf (#34892)
* * refactor iosxr_user for cliconf and netconf

(cherry picked from commit 5d0994ef598f1601fca00a0c1eff4ebb05ebbf1b)

* * Purge and units test changes
2018-01-17 07:28:58 -07:00
db61f8f967 Clarify which ping module to use (#34935)
* Clarify which ping module to use

Ensure each of the ping modules link to each other

ping - Requires Python on remote-node
nxos_ping - Only on Cisco NXOS
ios_ping - Only on Cisco IOS
net_ping - For network devices
win_ping - only for Windows
2018-01-17 14:02:06 +00:00
4ba7b005f5 VMware: add new module: vmware_host_ntp (#34730)
This module manages NTP configuration for given ESXi server.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-17 18:53:13 +05:30
082654894a VMware: Add ESXi hostname in fact details (#34981)
Fixes: #33972

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-17 06:57:22 -05:00
80361ce4da Making letsencrypt module work with Python 3. (#34324) 2018-01-17 05:27:12 -05:00
7190b18616 Add missing storage domain properties (#34904)
* Add additional properties to storage domains

* add warn low space for additional storage properties

* Fixing comments

1. Fixing documentation
2. Use default None
3. Remove redundant if condition
4. remove added discard since it was already added

* Apply comments #2

Fix default value to None
Use percentages instead of GB
2018-01-17 04:48:27 -05:00
1d26686b09 Secure letsencrypt account_key_content better (#34979)
* Ensure temp account key file cleanup even when module fails.

* Adding warning to documentation on pitfalls of using account_key_content.
2018-01-17 03:02:06 -05:00
f8d2f0ac44 tests: cs_router: fix tests not desructive anymore (#34957) 2018-01-17 07:16:45 +01:00
3a144b290d fix for nxos_vxlan_vtep_vni issues (#34946)
* fix vxlan_vtep_vni issues

* pep8 errors
2018-01-17 11:07:29 +05:30
1f69b8e55c windows path: fix failing test (#34973) 2018-01-17 15:05:54 +10:00
d7fbc94758 add custom_action support to azure_rm_virtualmachine (#34970)
* Adds custom_data parameter to azure virtual machine resource

Invoke custom_data in an integration test: This invocation of
custom_data should not cause any side effects.

* Bugfix: String encoding now works in both python2 and 3

* Fix pep8 violations

* Use nginx to serve a text file created via custom_data and verify that
that custom_data is working

* fix up azure_rm_virtualmachine custom_data

* tweaks #25924 
* simplify string encoding fun
* don't rely on external packages
2018-01-16 21:05:35 -08:00
e9b52aca64 Minor bigip fixes (#34971)
Updating docs in modules. fixing imports
2018-01-16 21:02:33 -08:00
290b1651ae fix nxos_nxapi test (#34972)
* Remove nxos_nxapi config test as config param is deprecated and removed

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

* fix nxos_nxapi disable test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-17 10:14:20 +05:30
8f80e6a302 VMware: basic files operations networkless (#33261)
This module adds ability manage file operations with vmware guest using vmware tools.
2018-01-17 09:48:12 +05:30
6f9f337a67 standardise the powershell FileUtils (#34969) 2018-01-17 14:16:34 +10:00
944ae47701 Detects errors in bigip_config (#34965)
There are changes that the merge config can fail, but the module
will still report success. This adds a blob of code to start
collecting those failures and bubbling up a module failure
accordingly.
2018-01-16 20:10:36 -08:00
b0625caa5a adding azure_rm_mysqldatabase (#33567)
* adding azure_rm_mysqldatabase

* updates to azure_rm_mysqldatabase

* updates to azure_rm_mysqldatabase

* updates to azure_rm_mysqldatabase

* updates to azure_rm_mysqldatabase

* updates to azure_rm_mysqldatabase

* updates to azure_rm_mysqldatabase

* Updated docs around force_update
2018-01-17 13:17:13 +10:00
eee29be115 adding azure_rm_postgresqldatabase (#33568)
* adding azure_rm_postgresqldatabase

* updates to azure_rm_postgresqldatabase

* updates to azure_rm_postgresqldatabase

* updates to azure_rm_postgresqldatabase

* updates to azure_rm_postgresqldatabase

* updates to azure_rm_postgresqldatabase

* updates to azure_rm_postgresqldatabase

* Updated docs around force_update
2018-01-17 13:16:27 +10:00
8e48793654 Speed up ec2_ami_facts and handle permissions issue (#34385)
* describe_images is very slow if not filtered to owner accounts
  *or* if the Owners parameter is passed (unless the Owners parameter
  is `self`). Convert Owners parameters to `owner-id` and `owner-alias`
  filters where possible. Tests with CLI show that `--owners self` is
  fast, `--owners 123456789012` is slow (with or without owner-id filter).

* describe_image_attributes fails against accounts other than your
  own. Launch permissions are useful information, but not critical.
2018-01-16 21:33:33 -05:00
7d05a86bbc [new module] Add Azure Container Instance support - cloud/azure/azure_rm_containerinstance (#32025)
* first dirty container instance

* added my name ;-)

* more updates

* more updates

* removed unnecessary stuff

* container instance updates

* several fixes

* undo changes in common

* removed unnecessary references, fixed delete

* added / updated parameters

* updated samples & comments

* updated docs, comments, samples and added registry credentials

* added ip address and port

* query existing container instance (but result not used yet)

* some major changes to the module

* more fixes

* added requirement for containerinstance module

* adding integration test

* fixes for pull request

* updated version

* updated version to 2.5

* updated version

* updated integration.cloud.azure.txt as requested by test framework

* removed due to merge reasons

* updated requirements-azure.txt

* undone azure-rm-common

* lf

* properly update test requirements

* first dirty container instance

* container instance updates

* several fixes

* review related updates

* review related fixes

* undo changes in common

* added / updated parameters

* query existing container instance (but result not used yet)

* updated version to 2.5

* updated version

* removed due to merge reasons

* updated requirements-azure.txt

* undone azure-rm-common

* properly update test requirements

* minor fix - sanity

* fix one issue after rebasing

* removed files accidentally added while rebasing

* removed checking for changes

* several fixes

* fixed sanity

* updates as requested by reviewers

* removed ci as it doesn't work

* reenabled ci

* renamed container instance, removed required: false

* removed default: null

* final updates according to the review

* one more fix

* first dirty container instance

* added my name ;-)

* more updates

* more updates

* removed unnecessary stuff

* container instance updates

* several fixes

* undo changes in common

* removed unnecessary references, fixed delete

* added / updated parameters

* updated samples & comments

* updated docs, comments, samples and added registry credentials

* added ip address and port

* query existing container instance (but result not used yet)

* some major changes to the module

* more fixes

* adding integration test

* fixes for pull request

* updated version

* updated version to 2.5

* updated version

* updated integration.cloud.azure.txt as requested by test framework

* removed due to merge reasons

* updated requirements-azure.txt

* undone azure-rm-common

* lf

* properly update test requirements

* review related updates

* first dirty container instance

* container instance updates

* several fixes

* review related fixes

* undo changes in common

* added / updated parameters

* query existing container instance (but result not used yet)

* updated version to 2.5

* updated version

* removed due to merge reasons

* updated requirements-azure.txt

* undone azure-rm-common

* properly update test requirements

* minor fix - sanity

* fix one issue after rebasing

* removed files accidentally added while rebasing

* removed checking for changes

* several fixes

* fixed sanity

* updates as requested by reviewers

* removed ci as it doesn't work

* reenabled ci

* renamed container instance, removed required: false

* removed default: null

* final updates according to the review

* one more fix

* changed location as default from resource group can't handle containers

* updates to container instance

* fixed mistakes during merge

* one more fix

* another mistake

* container instance fixes

* several fixes to container instance

* return value fix

* minor update

* just one api version right now

* fixed api version

* container instance does not suppurt api version

* removed unnecessary try blocks

* removed tags related things

* fixed pep8

* final fixes?

* final updates to the module

* more fixes
2018-01-17 10:05:45 +10:00
5fa1edc15d Track ansible-test cloud and target overhead. (#34902) 2018-01-16 15:52:42 -08:00
17d9ba304e Adds module for bigip device group (#34958)
This module can be used to manage a device group on a bigip
2018-01-16 15:29:37 -08:00
35c3a92c8c Fix ansible-test injector symlinks. (#34942)
* Convert importer.py back to symlink.
* Add missing ansible-* injector symlinks.
2018-01-16 15:12:51 -08:00
227ff61f9d Add module support to yamllint sanity test. (#34964)
* Add module support to yamllint sanity test.
* Fix duplicate keys in module RETURN docs.
* Fix syntax in return_common docs fragment.
* Fix duplicate keys in module EXAMPLES docs.
2018-01-16 15:08:56 -08:00
240024ea4a Fix ec2_vpc_net tags (#34725)
* Fix ec2_vpc_net tags

PR #33105 broke the tags returned by ec2_vpc_net - it was returning the raw boto3 list instead of a dict as expected.

* Add a test for tags
2018-01-16 17:47:58 -05:00
bf69f987f9 added aci_interface_selector_to_switch_policy_leaf_profile integration test (#34903) 2018-01-16 23:05:34 +01:00
ac4b031cc0 ACI: Fix parameters and aliases in documentation (#34959) 2018-01-16 23:03:29 +01:00
3b7136c5ab cs_vpn_connection: fix wrong connection used (#34937)
* cs_vpn_connection: fix wrong connection used

* fix vpn_customer_gateway is required

* fix tests as we have a new required param

* code styling
2018-01-16 22:56:24 +01:00
6351eff74e ACI: Add missing documentation_fragments (#34955) 2018-01-16 22:51:02 +01:00
2a6156a9d8 Fix syntax error in intro_inventory yaml example (#34960) 2018-01-16 15:41:17 -06:00
835dd30d50 Fixes, and updates, bigip action plugin and module utils (#34947)
These fixes make provider work across more things. Adds a timeout
value, and makes the action plugin look similar to other network
action plugins
2018-01-16 13:36:49 -08:00
d43cb0a438 win_security_policy: Add link to the win_user_right module (#34953) 2018-01-17 06:50:47 +10:00
6bed4d6ef3 botmeta: new maintainer for letsencrypt (#34954) 2018-01-16 12:13:34 -08:00
c42c0f0cb3 letsencrypt: Add support for Elliptic Curve account keys (#34852) 2018-01-16 20:49:34 +01:00
8d69eb4488 letsencrypt: fix fullchain is False by default. (#34912) 2018-01-16 20:33:16 +01:00
9cf217a151 allow cert validation to be disabled for Azure modules (#34906)
* `validate` or `ignore` values may be set by module, credential profile, or env. Module has highest precedence, followed by credential profile, then environment, and defaults to `validate` if not otherwise specified.
* fixes #33455
2018-01-16 10:14:08 -08:00
d72587084b Update example uptime script to provide correct type for explicit individual hosts (#34740) 2018-01-16 11:39:15 -06:00
8f1ab70cf2 add lib/ansible/plugins/connection/lxd.py maintainer in BOTMETA.yaml (#34936)
* add lib/ansible/plugins/connection/lxd.py maintainer in BOTMETA.yaml

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

* github nick change for trstringer on team_azure in BOTMETA

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-01-16 16:05:49 +00:00
5044813c4c UCS IP address pool module and integration tests (#34748)
* IP address pool module and integration tests

* Examples corrected and imports moved to beginning of module.

* Revert ucsmsdk import lines to avoid import sanity test failures.

* Add comment around imports for ucsmsdk.
2018-01-16 16:57:52 +01:00
59042d79f5 Update developing_api.rst to use correct inventory format for single explicit host (#34919)
Fix for #34918
2018-01-16 09:57:11 -06:00
576335e53d Add GALAXY_TOKEN config option (#34621)
This change lets user store token in configuration file or environment to
prevent exposing the secret on the command line.
2018-01-16 07:37:50 -08:00
92b3d79283 [cloudtrail] Only pass extra create_trail options if set in module params (#34745)
* Fixes #34700, only passes extra create_trail options when explicitly set
2018-01-16 08:45:01 -05:00
a727930f07 Remove deprecated params from module argspec nxos modules (#34911)
* Remove deprecated param from module argspec nxos modules

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

* fix nxos_vrrp syntaxerror

* Add choices for version _nxos_ip_interface

* remove check_args function

* remove include_defaults
2018-01-16 18:23:58 +05:30
0196b6bb69 ce_engine: Refactor check_ip_addr (#34126)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-16 18:04:37 +05:30
47665ca335 * Fix DCI failure in net_* integration test of iosxr_logging (#34926) 2018-01-16 17:57:11 +05:30
195beebcb4 Module DOCUMENTATION should match argspec (#34895)
* Module DOCUMENTATION should match argspec

Large update of many modules so that DOCUMENTATION option name and
aliases match those defined in the argspec.

Issues identified by https://github.com/ansible/ansible/pull/34809

In addition to many typos and missing aliases, the following notable
changes were made:

* Create `module_docs_fragments/url.py` for `url_argument_spec`
* `dellos*_command` shouldn't have ever had `waitfor` (was incorrectly copied)
* `ce_aaa_server_host.py` `s/raduis_server_type/radius_server_type/g`
* `Junos_lldp` enable should be part of `state`.
2018-01-16 12:18:51 +00:00
c386ae9498 Fix eos_vrf and eos_vlan interfaces param idempotent issue (#34921)
Fixes # 34917

*  Remove spaces from in between interface name
*  Convert interface name to lower case as interface name
   is case insensitive wrt configuring on remote device.
2018-01-16 17:46:14 +05:30
6fe0215c8f Add additional mapping attributes for VM/Template registration (#32835)
* Add VnicProfileMapping to register VM

Add vnic profile mappings to be supported in vm registration

* Add VnicProfileMapping to register template

Add vnic profile mappings to be supported in template registration

* Add reassign bad macs to register VM

Add reassign bad macs to be supported in vm registration.

* Add additional mappings params for VM registration

As part of the effort to support DR with oVirt
the "Register" operation is being added with a new mapping parameter
that describes the configuration of the registration.

The idea of supporting DR site to site in oVirt is to have 2 active
setups using storage replication between the primary setup and the
secondary setup.
Both setups will have active DCs, clusters, and hosts, although those
will not be identical.
The user can define a mapping which will be used to recover its setup.

Each mapping can be used to map any VM's attribute stored in the OVF
with its correlated entity.
For example, there could be a primary setup with a VM configured on cluster A.
We also keep an active secondary setup which only have cluster B.
Cluster B is compatible for that VM and in case of a DR scenario theoretically
the storage domain can be imported to the secondary setup and the use can
register the VM to cluster B.

In that case, we can automate the recovery process by defining a cluster mapping,
so once the entity will be registered its OVF will indicate it belongs to
cluster A but the mapping which will be sent will indicate that cluster B should
be valid for every thing that is configured on cluster A.
The engine should do the switch, and register the VM to cluster B in the secondary site.

Cluster mapping is just one example.
The following list describes the different mappings which were
introduced:
  LUN mapping
  Role mapping
  Permissions mapping
  Affinity group mapping
  Affinity label mapping

Each mapping will be used for its specific OVF's data once the register operation
will take place in the engine.

* Add additional mappings params for Template registration

As part of the effort to support DR with oVirt
the "Register" operation is being added with a new mapping parameter
that describes the configuration of the registration.

The idea of supporting DR site to site in oVirt is to have 2 active
setups using storage replication between the primary setup and the
secondary setup.
Both setups will have active DCs, clusters, and hosts, although those
will not be identical.
The user can define a mapping which will be used to recover its setup.

Each mapping can be used to map any Template's attribute stored in the OVF
with its correlated entity.
For example, there could be a primary setup with a Template configured on cluster A.
We also keep an active secondary setup which only have cluster B.
Cluster B is compatible for that Template and in case of a DR scenario theoretically
the storage domain can be imported to the secondary setup and the use can
register the Template to cluster B.

In that case, we can automate the recovery process by defining a cluster mapping,
so once the entity will be registered its OVF will indicate it belongs to
cluster A but the mapping which will be sent will indicate that cluster B should
be valid for every thing that is configured on cluster A.
The engine should do the switch, and register the Template to cluster B in the
secondary site.

Cluster mapping is just one example.
The following list describes the different mappings which were
introduced:
  Role mapping
  Permissions mapping

Each mapping will be used for its specific OVF's data once the register operation
will take place in the engine.

* Add support for update OVF store

Add support for task of update OVF store in a storage domain.
2018-01-16 07:14:29 -05:00
41ce1eaea9 ovirt_disk: support sparse parameter (#34091) (#34894)
Support sparse parameter as an explicit
value to allow creating raw-sparse disks.

This commit fixes #34091
2018-01-16 07:04:03 -05:00
0a9489ef66 VMware: Add multiple IP Addresses in result (#34866)
This fix adds IPv4 and IPv6 addresses in virtual machine facts.

Fixes: #34792

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-16 16:31:38 +05:30
b7724fdf85 nmcli: Add ipv4.dns-search attribute (#34261)
This fix adds following -
* ipv4.dns-search attribute
* refactoring of code
* correct return status for up_connection
* documentation update

Fixes: #17843

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-16 08:58:40 +01:00
bbd6b8bb42 Temporary (#31677)
* allow shells to have per host options, remote_tmp

added language to shell
removed module lang setting from general as  plugins have it now
use get to avoid bad powershell plugin
more resilient tmp discovery, fall back to `pwd`
add shell to docs
fixed options for when frags are only options
added shell set ops in t_e and fixed option frags
normalize tmp dir usag4e

- pass tmpdir/tmp/temp options as env var to commands, making it default for tempfile
- adjusted ansiballz tmpdir
- default local tempfile usage to the configured local tmp
- set env temp in action

add options to powershell
shift temporary to internal envvar/params
ensure tempdir is set if we pass var
ensure basic and url use expected tempdir
ensure localhost uses local tmp
give /var/tmp priority, less perms issues
more consistent tempfile mgmt for ansiballz
made async_dir configurable
better action handling, allow for finally rm tmp
fixed tmp issue and no more tempdir in ballz
hostvarize world readable and admin users
always set shell tempdir
added comment to discourage use of exception/flow control

* Mostly revert expand_user as it's not quite working.

This was an additional feature anyhow.

Kept the use of pwd as a fallback but moved it to a second ssh
connection.  This is not optimal but getting that to work in a single
ssh connection was part of the problem holding this up.

(cherry picked from commit 395b714120522f15e4c90a346f5e8e8d79213aca)

* fixed script and other action plugins

ensure tmpdir deletion
allow for connections that don't support new options (legacy, 3rd party)
fixed tests
2018-01-15 21:15:04 -08:00
eca3fcd214 VMware: Add new module: vmware_host_service_manager (#34862)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-16 09:51:34 +05:30
9d9c117580 winrm scheme default behaviour (#34908) 2018-01-15 20:25:30 -05:00
19ab882790 Fix inconsitencies between code assumptions and schema (#34901)
* Fix inconsitencies between code assumptions and schema

* Address a couple of RETURN issues, where the description was parsed as a dict
2018-01-15 18:29:20 -06:00
2a9daaa45b Fix ansible-config with python3 (#34673)
When using the -c option, like "ansible-config -c ~/.ansible.cfg view"
with python 3, it fail with this error message:

  ERROR! Unsupported configuration file extension for b'/home/misc/.ansible.cfg': .cfg
2018-01-15 13:54:48 -08:00
1f539e6601 FreeBSD STABLE distribution not correctly parsed (#34770) 2018-01-15 13:49:58 -08:00
6c38443a9c elb_classic_lb_facts: port to boto3 - also fixes #25075 and #25000 (#27435)
* port elb_classic_facts to boto3

update module to use AnsibleAWSModule

* Add RETURN docs for elb_classic_lb_facts

* Remove superfluous exception handling around connection

Fix exit_json call and RETURN docs
2018-01-15 16:44:46 -05:00
ae49dd65d9 Add note to 2.4 porting guide about initial playbook relative host/group_vars and inheritance (#34769)
* Add note to 2.4 porting guide about initial playbook relative host/group_vars and inheritance
2018-01-15 10:00:59 -08:00
3950f5b9ce facts: Get virtual facts about VMware (#34132)
This fixes fact gathering of VMware guest machines with
older Linux Kernel versions. These older Kernels do not support /sys
filesystem which is used to gather virtualization related facts.
'dmidecode' is the safest option to find out virtualization related facts.

Fixes: #21573

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-15 11:46:43 -05:00
6a75c1a138 Fix name param. Remove logging. (#34881) 2018-01-15 11:27:39 -05:00
32997a5160 ACI_BD: Add option to set mac-address (#34843)
* Add option to set mac-address

* Fix missing version_added

* Fix booleans
2018-01-15 17:16:54 +01:00
64e1593243 set_fact: handle 'cacheable=value' form (#34871)
* Ensure fact isn't cached when cacheable=val form is used

* Don't cache fact when cacheable=val form is used
2018-01-15 10:02:24 -06:00
b107e397cb Cache tasks as they are queued instead of en masse (#34752)
* Cache tasks as they are queued instead of en masse

This also moves the task caching from the PlayIterator to the
StrategyBase class, where it makes more sense (and makes it easier
to not have to change the strategy class methods leading to an API
change).

Fixes #31673

* Cleaning up unit tests due to 502ca780
2018-01-15 09:49:58 -06:00
b10d5f34ea Extend validate-modules to check the next to last line (#34819)
* Add validation for the next to last line of a module

* Fix last error code

* Reduce to a single conditional

* Fix conditionals

* Move the final warnings statement to main() in mysql_replication
2018-01-15 15:49:35 +00:00
a65f702155 add config option to replace argument (#34342)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-15 21:17:02 +05:30
179012caf3 ACI_DOMAIN: Additional params per MIM (#34839) 2018-01-15 16:24:56 +01:00
b7906f9c27 Module renamed to ucs_mac_pool to match naming convention for other ucs modules. (#34826)
Documentation updated to match UCS Manager online help.
Coding style updated to match other ucs modules.
2018-01-15 16:22:17 +01:00
6648964afa ovirt_auth: support env variable passing (#34872)
oVirt modules support environment variables to be passed as
authentication details for connection. But ovirt_auth doesn't support
it. This patch add support for it.
2018-01-15 10:13:46 -05:00
aae8f351a4 new ec2_customer_gateway_facts module (#34448) 2018-01-15 09:52:51 -05:00
349024235c ACI: Update docs (#34876) 2018-01-15 15:36:55 +01:00
43a081d1c9 fix KeyError net_base plugin (#34874)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-15 19:24:27 +05:30
ed806f0fee Add support for heat stack metadata (#34573)
This commit adds support for heat tag metadata when creating a new
stack.
2018-01-15 14:19:02 +01:00
9851a0540f Plumb newline param on cliconf (#34868)
Change cb1b705218 introduced the newline
parameter on network_cli plugin, but that was never introduced on cliconf.
This causes ios_user to break, since the newline value is never plumbed thru
to network_cli
2018-01-15 14:16:56 +01:00
74eb0bfb13 Add missing flags param to IOS get_config cliconf method (#34869) 2018-01-15 14:16:45 +01:00
9e918c8003 acl integration tests: don't use restricted key, allow to run twice in a row (#34858)
* acl test: don't use restricted key

Fix this warning: [WARNING]: Removed restricted key from module data: ansible_user = ansible_user

* acl test: allow to execute twice in a row
2018-01-15 13:21:25 +01:00
191b934dbd freeipa: support for host vars (#34535)
Adds method to return host vars related to FreeIPA hostname.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-15 13:57:30 +05:30
48ecbb8fb9 fix connection gets overridden by network_cli for transport nxapi,eapi net_* modules (#34778)
* fix connection gets overridden by network_cli for transport nxapi,eapi net_* modules

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

* Define functions in individual action plugins to avoid code duplication

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

* Add net_* eos tests for eapi

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

* update plugin code
2018-01-15 13:16:41 +05:30
c04cd8642d fix vxlan idempotent issue (#34750) 2018-01-15 12:27:37 +05:30
ade02bcce5 [new module] azure_rm_sqlserver_facts (#34608)
* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts

* updates to azure_rm_sqlserver_facts
2018-01-15 14:45:49 +10:00
9aba711519 Adds bigip_static_route module (#34859)
This module can be used to manage static routes on a BIG-IP
2018-01-14 17:40:59 -08:00
5540e2f8a9 cloudstack: inventory: Added feature list by tag (#31319) 2018-01-14 20:42:31 +01:00
698d5a524c vultr: add api_endpoint param (#34850)
* vultr: add new param api_endpoint

* vultr: improve error handling for values read from ini file
2018-01-14 16:31:28 +01:00
5a7a5b88c9 vultr: fix config ini params ignored (#34848)
* vultr: fix config ini params ignored

* vutlr: align docs with configs
2018-01-14 14:20:26 +01:00
7644042d21 Update ManageIQ Azure Tenant ID parameter (#34806)
Currently the ManageIQ API does not support azure_tenant_id but
this is in the process of being fixed. This commit changes
the recently-committed parameter to allow for the upcoming change.
2018-01-14 06:53:28 -05:00
05c960cf92 MIM URL: Update url for mim (#34844) 2018-01-13 23:53:11 -05:00
002fad53a1 ACI_SWITCH_LEAF_SELECTOR: Add description options (#34841) 2018-01-13 23:43:52 -05:00
aa9fc9313f Aci access port to interface policy leaf profile (#34842)
* ACI_ACC_PORT_TO_INTF_POL_LEAF_PROF: Change from/to to standard used elsewhere

* ACI_ACC_PORT_TO_INTF_POL_LEAF_PROF: Add description options

* ACI_ACC_PORT_TO_INTF_POL_LEAF_PROF: Add missing trailing commas
2018-01-13 23:43:44 -05:00
3c7e639dde ACI_AEP: Allow toggling of infrastructure vlan (#34840)
* ACI_AEP: Allow toggling of infrastructure vlan

* ACI_DOMAIN: fix accidental 'r' removal
2018-01-13 22:20:31 -05:00
1c3bba0bdb cloudstack: fix timeout in ini config file is ignored (#34833)
* cloudstack: fix timeout in ini config file is ignored

* cloudstack: prepare for unit tests
2018-01-13 21:32:06 +01:00
9302e8d2a4 contrib(inventory): adds a dynamic inventory for Scaleway cloud (#30313)
provider

Provides a dynamic inventory plugin for Scaleway cloud provider with
the following features:

- Configurable scaleway.ini file
- Cache API responses
- Choose public or private IPs
- Create groups per Scaleway 'tags'
- Create groups per Scaleway regions
2018-01-13 14:55:05 +00:00
a56de25df5 Fix persistent command timeout handling (#34791)
* Fix persistent command timeout handling

We were using play context timeout on ansible-connect to set
the persistent command timeout handler. Thus, we were ignoring
the persistent_command_timeout setting.
Moreover, even by changing that on ansible-connection, were again
overriding it on cliconf send_command, since in a same process we can
just set a single alarm and cliconf send_command alarm setup is executed
after ansible-connection alarm setup.

* Remove alarm setting on cliconf send_command

The alarm is set regardless before it is executed by ansible-connection.
Setting an alarm again, overrides/disables the previous ones as a single
process can just have a single alarm set.

* Move the setting of persistent command timeout to network_cli

We do also use ansible-connection for connection local, so if a
user provides a timeout via provider that would be ignored if we
set the value on ansible-connection.
Moving that logic to network_cli plugin constructor makes both
connections to work.

* Remove debug statements

* Set the persistent command timeout on task_executor

We can't set the timeout on ansible-connection nor network_cli,
otherwise tasks using provider timeout won't work.
2018-01-13 15:54:44 +01:00
c548ab0f18 Refactors and deprecation removals (#34830)
This patch is primarily a refactor to make the validate-modules arg-spec
no longer generate a traceback. It additionally includes removal of deprecated
code in the virtual server module.
2018-01-12 23:03:41 -08:00
a10aee0fc3 Adds refactors for more f5 modules (#34824)
The main patch is to remove the traceback generating code. There are
other small fixes that were made in addition to doing that.

* Removed re-def of cleanup_tokens.
* Changed parameter args to be keywords.
* Changed imports to include new module_util locations.
* Imports also include developing (sideband) module_util locations.
* Changed to using F5Client and plain AnsibleModule to prevent tracebacks caused by missing libraries.
* Removed init and update methods from most Parameter classes (optimization) as its now included in module_utils.
* Changed module and module param references to take into account the new self.module arg.
* Minor bug fixes made during this refactor.
2018-01-12 21:49:12 -08:00
0e4e7de000 Various F5 related fixes for traceback raising (#34820)
The main purpose of this patch is to do the refactor that
supports replacing tracebacks with fail_json. Additionally, the
following was done.

* Removed re-def of cleanup_tokens.
* Changed parameter args to be keywords.
* Changed imports to include new module_util locations.
* Imports also include developing (sideband) module_util locations.
* Changed to using F5Client and plain AnsibleModule to prevent tracebacks caused by missing libraries.
* Removed init and update methods from most Parameter classes (optimization) as its now included in module_utils.
* Changed module and module param references to take into account the new self.module arg.
* Minor bug fixes made during this refactor.
2018-01-12 14:43:35 -08:00
86e4619dcf Update echo ansible-vault example with -n as without this, you get a newline. Fixes #34795 (#34823) 2018-01-12 16:16:37 -06:00
7bdbe9ab87 vultr: new module vr_startup_script (#34374)
* vultr: new module vr_startup_script

* add integration tests
2018-01-12 22:39:06 +01:00
eace686044 Various fixes and changes for F5 (#34817)
Primarily, this patch contains refactors to remove tracebacks that
are generated when libraries are missing. There is also,

* Removed re-def of cleanup_tokens.
* Changed parameter args to be keywords.
* Changed imports to include new module_util locations.
* Imports also include developing (sideband) module_util locations.
* Changed to using F5Client and plain AnsibleModule to prevent tracebacks caused by missing libraries.
* Removed init and update methods from most Parameter classes (optimization) as its now included in module_utils.
* Changed module and module param references to take into account the new self.module arg. Minor bug fixes made during this refactor.
2018-01-12 13:23:19 -08:00
085a250575 Add new Cloudstack module cs_vpc_offering (#34797)
* Add new Cloudstack module cs_vpc_offering

* fix documentation

* fix returns list

* state=absent example minimalization
2018-01-12 21:40:35 +01:00
44a5b3abb4 Various fixes (#34815)
This patch was primarily an effort to reduce traceback errors for
work that sivel was doing. Part of (and in some cases in addition to)
that, the following was done.

* Removed re-def of cleanup_tokens.
* Changed parameter args to be keywords.
* Changed imports to include new module_util locations.
* Imports also include developing (sideband) module_util locations.
* Changed to using F5Client and plain AnsibleModule to prevent tracebacks caused by missing libraries.
* Removed init and update methods from most Parameter classes (optimization) as its now included in module_utils.
* Changed module and module param references to take into account the new self.module arg.
* Minor bug fixes made during this refactor.
2018-01-12 12:08:49 -08:00
18d33eeb89 Adds the AFM address list module (#34814)
This module can be used to manage address lists on a BIG-IP running
AFM.
2018-01-12 10:25:33 -08:00
9314607c38 Adds selective assignment of kwargs (#34813)
For the f5 module utils, the parameters base class needs to selectively
get args from kwargs
2018-01-12 09:50:53 -08:00
82a0253059 VMware: Add new module: vmware_host_service_facts (#34731)
This adds module to gather facts about VMware host service facts.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-12 22:32:10 +05:30
eabd7eafad VMware: Refactor vmware_host module (#33916)
This fix refactor vmware_host module to use PyVmomi.
Also, handle SSLVerifyFault exception to get hostsystem's certificate
thumbprint.

Fixes: #20819

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-12 11:30:28 -05:00
d8673ed72a Preserve test/results/data/ in Shippable jobs. 2018-01-12 08:28:57 -08:00
2b66d9966c Add a config toggle for agnostic become prompts, defaulting to False for the 2.5 release. Fixes #33999 (#34761) 2018-01-12 10:28:46 -06:00
7957ba7aad Fix small typo 2018-01-12 15:06:05 +01:00
545650c3b1 aci_switch_leaf_selector module (#34041)
* added aci_switch_leaf_policy_profile module WIP

* fixed pep8 errors for PR

* fixed unwanted modifications and fixed pep8 errors

* fixed suggested errors for PR

* adding WIP aci_switch_leaf_selector module

* fixed for pull request

* fixing pep8 errors, bad indents

* improved initial description

* fixed pep8 doc errors

* updated module to include infra:NodeBlk and infra:RsAccNodePGrp instead of having seperate modules for the latter

* fixing pep8

* adding 'name' alias to leaf_selector

* updating example

* updating aliases, forgot 'name' again

* added examples

* Fix pylint errors

* Fix trailing whitespace issue

* Fix one more pylint issue
2018-01-12 12:23:29 +01:00
61d50a12e5 aci_access_port_to_interface_policy_leaf_profile module (#34398)
* added aci_switch_leaf_policy_profile module WIP

* fixed pep8 errors for PR

* fixed unwanted modifications and fixed pep8 errors

* fixed suggested errors for PR

* adding WIP aci_switch_leaf_selector module

* fixed for pull request

* fixing pep8 errors, bad indents

* improved initial description

* fixed pep8 doc errors

* updated module to include infra:NodeBlk and infra:RsAccNodePGrp instead of having seperate modules for the latter

* fixing pep8

* adding 'name' alias to leaf_selector

* updating example

* updating aliases, forgot 'name' again

* adding aci_interface_policy_leaf_profile module

* removing unwanted module.. man I always make this mistake

* add aci_access_port_to_interface_policy_leaf_profile module

* added example and integration tests

* Fix pylint errors
2018-01-12 12:20:52 +01:00
d23d290be8 aci_aep: Add infrastructure_vlan support (infra:ProvAcc) (#33996)
This is a needed enhancement.
2018-01-12 12:20:20 +01:00
393c5bea67 aci_switch_leaf_policy_profile module (#33955)
* added aci_switch_leaf_policy_profile module WIP

* fixed pep8 errors for PR

* fixed unwanted modifications and fixed pep8 errors

* fixed suggested errors for PR

* fixing PR errors

* removing unwanted module from this branch for PR

* removing unwanted module again, rookie git mistakes

* correcting wrong module name

* added examples

* Fix pylint errors

* Fix trailing whitespace
2018-01-12 12:15:13 +01:00
837a05fca4 aci_interface_selector_to_switch_policy_leaf_profile module (#34098)
* added aci_switch_leaf_policy_profile module WIP

* fixed pep8 errors for PR

* fixed unwanted modifications and fixed pep8 errors

* fixed suggested errors for PR

* adding WIP aci_switch_leaf_selector module

* fixed for pull request

* added new module aci_switch_leaf_selector_node_block for PR

* fixed pep8 issues

* fixed from and to parameter setup in arg spec

* fixed pep8 doc errors

* fixed pep8 indentation error

* adding new aci_interface_selector_to_switch_policy_leaf_profile module for  PR

* removed unwanted module

* added examples

* Fix pylint errors

* Remove whitespace introduced by Github editor
2018-01-12 12:14:14 +01:00
007c19095d aci_interface_policy_leaf_profile module (#34364)
* added aci_switch_leaf_policy_profile module WIP

* fixed pep8 errors for PR

* fixed unwanted modifications and fixed pep8 errors

* fixed suggested errors for PR

* adding WIP aci_switch_leaf_selector module

* fixed for pull request

* fixing pep8 errors, bad indents

* improved initial description

* fixed pep8 doc errors

* updated module to include infra:NodeBlk and infra:RsAccNodePGrp instead of having seperate modules for the latter

* fixing pep8

* adding 'name' alias to leaf_selector

* updating example

* updating aliases, forgot 'name' again

* adding aci_interface_policy_leaf_profile module

* removing unwanted module.. man I always make this mistake

* added examples

* Fix pylint errors
2018-01-12 11:57:44 +01:00
d7d13b48e5 aci_aep_to_domain: New module to bind AEP to domain (#33942)
* aci_aep_to_domain: New module to bind AEP to domain

* Changes to bring in line with aci_domain

* Rename aep_domain to domain_dn, add types

* Fix pylint errors
2018-01-12 11:50:41 +01:00
3c72161da5 Enable tests which pass on Python 3. 2018-01-12 00:48:47 -08:00
6969d492d8 Split Windows tests into 4 groups. 2018-01-12 00:48:32 -08:00
628eca85c3 ACI: Fixing new pylint issue (#34775) 2018-01-12 08:07:59 +01:00
e3b5be0887 vr_server: fix assumption returned id is an int (#34765) 2018-01-12 07:30:37 +01:00
d860e13ae1 Add validate_certs to jira module (#34756)
The jira module uses ansible.module_utils.urls.fetch_url which will
attempt to get that value of the validate_certs parameter from the
module; if present it will honor it's value, otherwise it defaults
to True.

This patch adds that parameter to jira so that it can be specified
by the user and honored by ansible.module_utils.urls.fetch_url

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-01-11 23:39:07 -05:00
85f300e02b Fix junos_netconf integration test failure (#34744)
* Fix junos_netconf integration test failure

Set ansible_connection to netconf for junos_command module
in junos_netconf integration test

* Fix review comments
2018-01-12 08:46:21 +05:30
83b7ec69fc Fix pylint issue (#34773) 2018-01-12 02:26:14 +01:00
03dd3214b4 Fix new pylint issue (#34772)
Is it all worth it ?
2018-01-12 02:25:03 +01:00
00332a49d5 ec2_win_password: fix broken import and minor updates (#34479)
* fix broken import

* ansible.module_utils.ec2.HAS_BOTO is already used

* wait_timeout parameter: use 'int' type

* wait is always True there

* doc: use formatting function
2018-01-12 11:24:46 +10:00
607c66f80a Validate apache2 mpm module switching for bug #5328
This patchset updates module integration testing to
validate the changes in PR #5454

This patchset instructs apache2_module to disable all
mpm modules, enable mpm_event, then disable mpm_event
and enable mpm_worker.

This patchset instructs apache2_module to disable all
mpm modules with `ignore_configcheck` set to False
and then disable all mpm modules with `ignore_configcheck`
set to True.

SuSe family of distributions do not ship apache2 with
mpm modules other than prefork. mpm_event and mpm_worker
checks are skipped for SuSe family of distributions.

Fixes: #5328
2018-01-11 16:59:54 -08:00
dcc05093db Validate modules arg spec fixes (#34477)
* Update validate-modules arg_spec introspection to be faster, by only mocking the imports we explicitly list
* The use of types.MethodType in redhat_subscription wasn't py3 compatible, use partial instead
* Remove argument_spec import hacks, make them errors, we can ignore them with ansible-test
* Enable the --arg-spec flag for validate-modules
2018-01-11 15:41:53 -08:00
42a0d71413 Catch exception comparing role versions, and provide a user friendly error message. Fixes #32301 (#34427) 2018-01-11 17:41:23 -06:00
96e5cce5ea Ignore pylint errors. 2018-01-11 15:38:35 -08:00
c3909460d4 aci_domain_to_vlan_pool: Add domain to VLAN pool (#34402)
* aci_domain_to_vlan_pool: Add domain to VLAN pool

A new ACI module to bind a domain to a VLAN pool.

This module still needs integration tests once it is formally review and
accepted.

* Add examples to documentation
2018-01-11 23:32:12 +01:00
f3193f272c aci_domain_to_encap_pool: Add domain to encap pool (#34123)
* aci_domain_to_encap_pool: Add domain to encap pool

A new ACI module to bind a domain to an encap pool.

This module still needs integration tests once it is formally review and
accepted.

* Fix domain RN and attributes
2018-01-11 23:31:48 +01:00
3127be0e3d aci_domain: Manage phys, vmm, l2ext, l3ext and FC domain profiles (#34011)
* aci_domain: Manage phys, vmm, l2ext, l3ext and FC domain profiles

A new ACI module from the high priority list.

* Add RHEV VMM provider as Redhat

* PEP compliancy

* Make variables specific to domain

* Add examples
2018-01-11 23:31:23 +01:00
0d84e27d0c aci_firmware_source: Manage firmware image sources on ACI (#34670) 2018-01-11 23:30:58 +01:00
e0214ece57 aci_vlan_pool_encap_block: New module to manage VLAN encap blocks (#34653)
* aci_vlan_pool_encap_block: New module to manage VLAN encap blocks

This module is a simplified version of the aci_encap_pool_range module.

* PEP8 fixes (closer to the original)

* Add integration tests
2018-01-11 23:22:43 +01:00
f8884f12bc Mellanox OS name change: MLNXOS changed to ONYX (#34753)
* Mellanox OS name change: MLNXOS changed to ONYX

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

* Fix alphabetical order of modules metadata

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-11 22:21:17 +00:00
57ff84251e Implemented Trigger Repetition (#32938)
* Implemented Trigger Repetition

* Refactorings and integration tests for Trigger Repetition

* Suggestions of first review

* Changes of second review
2018-01-12 08:08:50 +10:00
bd989b3088 Report invalid connection types for network modules (#34755)
* Emit error on wrong connection type
2018-01-11 16:47:48 -05:00
74ac1c2e4a Test cleanup. 2018-01-11 13:43:10 -08:00
bb9dcb0d2b Adding "-SyncWindow 0" flag to Compare-Object call (#34656)
Adding "-SyncWindow 0" flag to the Compare-Object call used to determine if the existing and proposed IP address lists are the same.  This makes the array comparison mark changes in order as a difference.

Fix for bug #34651
2018-01-12 07:43:02 +10:00
2d4a43bb0a Add file+rule ignore support to validate-modules. (#34757)
* Clean up code.
* Add file+rule ignore support to validate-modules.
2018-01-11 13:36:08 -08:00
476030a49c vr_server: implement startup_script (#34565)
* simplify

* vr_server: implement startup_script
2018-01-11 22:26:39 +01:00
fbffcb36bf aci_vlan_pool: Module to manage VLAN pools (#34650)
* aci_vlan_pool: Module to manage VLAN pools

This is a simplified version of the aci_encap_pool module.

* Add integration tests, based on aci_encap_pool
2018-01-11 22:17:10 +01:00
79d2f8a93a ACI: Fix tests and add signature-based authentication test (#34758) 2018-01-11 21:28:42 +01:00
32ba02b626 file tests: control & managed host can be distinct 2018-01-11 10:54:16 -08:00
cbb238522b get_url tests: controller & managed node can be distinct
Templating happens on the Ansible controller, not on the task’s target host.
2018-01-11 10:40:59 -08:00
be06799b20 vultr: new module vr_dns_domain (#34377)
* vultr: new module vr_dns_domain

* minor doc fix
2018-01-11 19:04:58 +01:00
adbb2f7016 vultr: new module vr_user (#34521)
* vultr: new module vr_user

* add missing doc of arg force

* make password less required

* optimize error msg

* update docs
2018-01-11 18:58:02 +01:00
185f28ecee Add andreaso (me) as cloudflare_dns module maintainer (#34743) 2018-01-11 17:54:51 +00:00
cb206abea3 Support advertised networks in bgp protocol (#34728)
Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-11 17:40:39 +00:00
fcf6da0a9d Add ospf protocol support for Mellanox MLNXOS network devices (#34717)
* Add new module for managing ospf protocol on mlnxos devices

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

* Fix test name, and documentation.

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-11 17:40:04 +00:00
7ac061139b Sort out parameter requirements for cloudflare_dns (#31800)
This module is mostly written to make room for the option of not
setting the `value` parameter while `state=absent`. That choice being
a feature, since it allows both for the removal of individual records
as well as the removal of full record sets.

The opposite goes for the `record` parameter, which needs to be defined
at least by its default value for the module to be able to produce any
meaningful result. Hence making it explicit as part of required_if.

The MX record type is already plenty covered. In addition to the
priority parameter having a default value, the `ensure_dns_record`
method does its own parameter checking.

SRV records on the other hand do need additional parameter
checking. Primarily with the `delete_dns_records` method in mind.

Fixes #23957
2018-01-11 12:03:54 -05:00
3f4dfb2574 WinRM: fix format_exc call (#34233)
This fix adds correct call for format_exc in winrm plugin.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-11 08:43:22 -08:00
e9e316c76b Filesystem: refactor, improvements, add tests (#25519)
* filesystem: list used tools

* filesystem: btrfs and reiserfs don't support resizing

* filesystem: list supported filesystems

use formatting functions and 'filesystem' instead of 'file system'

* filesystem: PEP8

* filesystem: remove useless calls to module.boolean

* filesystem: fail when the requested action isn't implemented

* filesystem: resizefs: list supported FS rather than unsupported

* filesystem: refactor

* filesystem: add integration tests

* filesystem: allow to use image file with 'dev' param

* filesystem: test resizefs (ext2/3/4 filesystems only)

* filesystem: Btrfs, handle older version than v0.20-rc1

* filesystem: use loop keyword (integration tests)

* filesystem: new test, check when another filesystem already exists

* filesystem: add myself as a maintainer

* filesystem: fix tests as filters
2018-01-11 11:10:14 -05:00
303894dd17 fix nxos_banner (#34695)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-11 21:13:00 +05:30
df8b01aaf7 Handle platform os version for sandbox nxos_nxapi (#34490)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-11 21:12:00 +05:30
bfb5264138 Support datetime serialization in json encoder. Fixes #34312 (#34516) 2018-01-11 09:10:14 -06:00
cf86c6aaf6 Add ManageIQ Azure provider (#34708)
This commit adds support for creating Azure providers on ManageIQ.
2018-01-11 09:06:33 -05:00
e9d62e18c7 Mark cliconf refactor on 2.5 roadmap as done (#34735) 2018-01-11 12:44:47 +00:00
32e7c9bc9c Refactor EOS code to use cliconf (#34426)
* WIP Refactor EOS code to use cliconf

* Fix connection.get where sendonly is True

* Fix pylint issue

* Remove return from send_config and various exec_commands

Also, removed a few try/except, which are anyways handled in
Connection.
2018-01-11 13:33:33 +01:00
477cd3f775 Refactor IOS libs to use cliconf (#34136)
* Refactor IOS libs to use cliconf

* Fix pep8

* Remove bytstrings from edit_config and additional end on load_config

* Fix pep8
2018-01-11 11:50:01 +01:00
2b3b689616 vmware: Add new module 'vmware_host_config_facts' (#34570)
This adds a new module called 'vmware_host_config_facts' which
gathers facts about advanced configuration informantion about ESXi host or all
ESXi hosts from given cluster.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-11 13:40:37 +05:30
2e76f04a9e Add ios_linkagg DI module (#33215)
* Add ios_linkagg DI module

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

* pep8 fixes

* update ios version

* ios_linkagg integration test

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

* fix port-channel commands

* update test

* ios tests to network_cli

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

* add required_together check in aggregate and update test

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

* fix pep8 issues

* Add discovery of ios switch type

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-11 12:33:15 +05:30
557716dc49 win_updates: action plugin-ify it (#33216)
* converted win_updates to an action plugin for automatic reboots

* do not set final result when running under async

* Updated documentation around win_updates with async and become
2018-01-11 14:41:52 +10:00
08957cf46e cliconf and netconf refactor of iosxr_logging (#34495)
* * cliconf and netconf refactor of iosxr_logging

* * documentation issue fix

* * adds required_if and mutually_exclusive in arg spec
2018-01-11 10:08:11 +05:30
b66863abf0 dev_guide: don't ask to use '© Ansible Project' (#34704)
contributor don't sign any copyright assignment, then this makes no
sense.
2018-01-11 14:23:36 +10:00
e04e24010f Update unarchive.py (#34596)
clarify that absolute path is to be used for "creates", explicitly mention that it supports files and directories
2018-01-11 14:12:32 +10:00
04df2312e7 Provide AnsibleAWSModule with _name attribute (#34564)
_name attribute is used when providing generic error messages
(such as connection problems). As AnsibleAWSModule does not inherit
things from AnsibleModule by default, need to provide it.
2018-01-11 14:11:28 +10:00
ca4eb07f46 Adds kubectl and oc connection plugins (#26668) 2018-01-10 22:51:45 -05:00
feab47e33a Update default ansible-test container SHA. 2018-01-10 18:01:14 -08:00
7fbe19c047 vmware_guest: fix dvs idempotency issue (#34208)
* vmware_guest: fix dvs idempotency issue

* Rewrite VDS section

* Fix PEP 8 error
2018-01-10 17:57:08 -05:00
63536944a4 VMware: Add schedule datetime for powerstate (#34652)
This fix adds an user parameter for scheduled powerstate management of
virtual machines.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-10 17:49:05 -05:00
b60c67d329 Remove double-specified EC2 ASG test parameters (#34714)
In the ec2_asg integration tests there are a couple places where
parameters are specified twice (as bot `tag.Name` and `name:`) and
others where those parameters aren't needed for the state requested.
2018-01-11 08:44:40 +10:00
513e0547b9 Fix version_added validation when empty. 2018-01-10 14:44:21 -08:00
784360385e Remove already fixed Python 3.7 pylint ignores. 2018-01-10 14:08:11 -08:00
797664d9cb Python 2.6 str.format() compatibility fixes. 2018-01-10 14:08:11 -08:00
95ff8f1a90 Change cow path selection variable from COWPATH to COW_PATH (#34063)
For consistency with other cow-related options, such as
`ANSIBLE_COW_SELECTION`, add an underscore to the new `ANSIBLE_COWPATH`
option.
2018-01-10 15:54:47 -05:00
f968776d86 Remove ansible-test obsolete net_* target logic. 2018-01-10 12:12:39 -08:00
60b3a191e6 Add terraform module to changelog 2018-01-10 14:18:53 -05:00
6643fe821e Fix storage endpoint for Azure Stack (#33946)
* Fix storage endpoint for Azure Stack

https://github.com/Azure/msrestazure-for-python/issues/64

* corrected visual indentation
2018-01-10 11:09:53 -08:00
9233520b31 New module: Terraform (#31214)
* First pass at Terraform module

* Support output variables

* Support idempotent plan checks and external plan files

* Add check mode support

* Support custom statefile location & remove color-coding from shell output

* Docs

* Let missing statefile hard-fail

* Update to support present/planned/absent states

* PEP8

* Add docs & fix python 2.6 incompatibility

* PEP8

* PEP8
2018-01-10 13:52:28 -05:00
1f2c276481 Distinguish between natural connections and rewritten connections (#34706) 2018-01-10 13:06:47 -05:00
db44602629 Remove vars from include for ios netowrk_cli tests (#34703)
These should be specified in inventory for 2.5+
2018-01-10 12:59:53 -05:00
f84f386ea7 yum: Add example for enable and disable repo (#34492)
Fixes: #29897

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-10 09:51:00 -08:00
accf79f406 Fix iosxr integration tests (#34663)
* Handle non-XML errors

* Move iosxr_netconf tuning to prepare

* Apply provider warning to netconf as well

* Update netconf task files
2018-01-10 11:40:54 -05:00
8277e9d1a5 Add new module mlnxos_bgp for managing bgp protocol on Mellanox MLNX-OS devices (#34305)
* Add new module mlnxos_bgp for managing bgp protocol on Mellanox MLNX-OS
devices

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

* Add missing required field, and Fix Documentation

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

* Fix documentation of neighbors field

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-10 16:09:42 +00:00
8c87c76d81 Add ManageIQ alert profiles module (#32354) 2018-01-10 17:04:05 +01:00
c53dcd1982 Cleanup net integration test case for network modules (#34684)
*  Remove platform agnostic net_* test cases.
*  Add minimal platform agnostic test cases to individual
   platform-specific test cases
2018-01-10 21:28:49 +05:30
2df6735dcf aci_aaa_user_certificate: Add a certificate to an AAA user (#34602)
* aci_user_certificate: Add a certificate to a user

A new ACI module to add a X.509 certificate to a user.

* Add integration tests
2018-01-10 16:53:31 +01:00
7c8120d0de Fix misleading cleanup/detach documentation (#34674)
* Fix misleading cleanup/detach documentation

Current documentation is not concrete regarding desired
state of `detach` to make container be properly removed
with `cleanup`

Make `detach:false` be mentioned explicitly

* Tweak formatting
2018-01-10 15:33:22 +00:00
b88304f211 module_utils.(eos, nxos) - Support use_proxy argument (#30813)
* eos - Support use_proxy argument

Running ansible with a proxy set in the environment causes the eos module to
attempt to connect to devices via the proxy.

To prevent this behaviour the only way is to unset the proxy out of the
environment, either by wrapping the ansible calls or doing it in a piece of code
executed before connect, such as a vars_module (though this is very hacky).

This change allows you to set `use_proxy: no` under the provider config.

The default value is set to True, which mirrors the behaviour seen today.

* nexos - Support use_proxy argument

Running ansible with a proxy set in the environment causes the nexos module to
attempt to connect to devices via the proxy.

To prevent this behaviour the only way is to unset the proxy out of the
environment, either by wrapping the ansible calls or doing it in a piece of code
executed before connect, such as a vars_module (though this is very hacky).

This change allows you to set `use_proxy: no` under the provider config.

The default value is set to True, which mirrors the behaviour seen today.
2018-01-10 15:05:48 +00:00
caf1b357aa Update ROADMAP_2_5.rst
Mark connection-related tasks as done
2018-01-10 10:00:32 -05:00
88318c5fe5 add new modules to changelog (#34601)
* add new modules to changelog

* add new modules to changelog
2018-01-10 13:26:57 +00:00
01091cddf6 cloudstack: new module cs_vpn_connection (#34669)
* cloudstack: new module cs_vpn_connection

* cloudstack: add cs_vpn_connection tests

* fix typos

* remove local action in tests
2018-01-10 11:15:34 +01:00
e58b5766d2 Update astroid test constraint. 2018-01-10 02:03:56 -08:00
30093dc4ed Add Python 3.7 to CI unit test matrix. (#34680)
* Add Python 3.7 to CI unit test matrix.
* Fix `os.errno` reference to be `errno`.
* Update test_aci unit test for Python 3.7.
2018-01-10 00:57:11 -08:00
f2037bb629 used wrong models 2018-01-09 23:18:31 -08:00
addc714e7c fix typo 2018-01-09 23:18:31 -08:00
f0198cc39a fix lint errors 2018-01-09 23:18:31 -08:00
1fecb6f923 compute models 2018-01-09 23:18:31 -08:00
8b482ecd81 resources models 2018-01-09 23:18:31 -08:00
11c5d7b670 network models 2018-01-09 23:18:30 -08:00
7d77ce6866 fix lint errors 2018-01-09 23:18:23 -08:00
e6aeed2a8e pin api version of azure storage models 2018-01-09 23:18:23 -08:00
c6531ad556 pin api version of azure storage models 2018-01-09 23:18:23 -08:00
6f8d3ad70d Fixes for nxos_bgp (#34590)
* fix bgp issues

* add new tests cases

* review comments
2018-01-10 10:52:26 +05:30
c309315c1d fix nxos_bgp failure for graceful_restart warning (#34623)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-10 10:51:30 +05:30
5613ca4bab Use Python 3.7.0a2 for default docker container. 2018-01-09 21:14:31 -08:00
dadeae3ce6 [new module] adding azure_rm_mysqlserver (#33566)
* adding azure_rm_mysqlserver

* removed stupid semicolon

* updates to azure_rm_mysqlserver

* adding dependency

* updates to azure_rm_mysqlserver

* updates to azure_rm_mysqlserver

* updates to azure_rm_mysqlserver

* updates to azure_rm_mysqlserver

* updates to azure_rm_mysqlserver

* updates to azure_rm_mysqlserver

* Updated dependencies
2018-01-10 14:39:43 +10:00
1a3db9377a [new module] adding azure_rm_postgresqlserver (#33569)
* adding azure_rm_postgresqlserver

* removed semicolon placed by mistake

* updates to azure_rm_postgresqlserver

* updates to azure_rm_postgresqlserver

* updates to azure_rm_postgresqlserver

* updates to azure_rm_postgresqlserver

* updates to azure_rm_postgresqlserver

* updates to azure_rm_postgresqlserver

* updates to azure_rm_postgresqlserver

* updates to azure_rm_postgresqlserver

* Updated dependencies
2018-01-10 14:39:26 +10:00
9cb0c08d75 Ensure alternatives are displayed in deprecation warnings
Use plural `alternatives` key to display deprecation alternatives.
2018-01-09 21:21:53 -05:00
232dc7110c Fix Python 3.7 syntax error in yum_repository. 2018-01-09 17:54:10 -08:00
15a04a3da7 Fix Python 3.7 syntax error. 2018-01-09 17:34:26 -08:00
fbce62795d enable Windows Server 2016 in CI (#34127)
* enable Windows Server 2016 in CI
* avoid use of Write-Host in config script
2018-01-09 17:22:24 -08:00
a685b621cd Route table boto3 (#32059)
* Allow protection of certain keys during camel_to_snake

Create an `ignore_list` parameter that preserves the case
of the contents of certain dictionaries. Most valuable
for `tags` but other uses might arise.

* Port ec2_vpc_route_table to boto3

Update tests to reflect fixes in boto3.

* Add RETURN documentation to ec2_vpc_route_table

* Update DOCUMENTATION to be valid yaml

* Add check mode tests
2018-01-09 20:09:25 -05:00
ecfe177380 Update net_* and vyos_* integration test aliases. (#34666)
* Add and update vyos integration test aliases.
* Add and update net integration test aliases.
2018-01-09 16:54:50 -08:00
cd205854a4 Fix Python 3.7 syntax error in tests. 2018-01-09 16:54:19 -08:00
ef48448e4a win_scheduled_task_stat: correctly return values from nested com values (#34671) 2018-01-10 10:23:04 +10:00
a0e96efec7 Add aws_s3 integration tests for multipart GET operations (#34657)
* Add aws_s3 integration tests for multipart GET operations

* Make multipart test platform-specific

* Use YAML anchors to simplify passing credentials

* Run tests on Linux and MacOSX
2018-01-09 18:05:22 -05:00
82b5a6a0c9 Fix ansible-test network-integration command. (#34661)
* Fix ansible-test network platform init filter.
* Fix ansible-test network inventory generation.
* Remove ios/csr1000v from CI.
* Run network tests on Python 2.7 and 3.6.
2018-01-09 14:52:36 -08:00
55352bdda4 Error early if executing python version doesn't meet documented minimums (#34655)
* Error early if executing python version doesn't meet documented minimums. Fixes #34597

* Make recommended enhancements
2018-01-09 16:17:55 -06:00
2f66755849 New Lookup Plugin: aws_service_ip_ranges (#32749)
* added ranges lookup

* Add docs

* Use `open_url` from module_utils

* Fix error handling on open_url

* Fix ConnectionError exception import
2018-01-09 17:16:45 -05:00
70e49b9243 Updates module utils for f5 (#34660)
These module utils are a refactor of the legacy ones and, in addition,
there are several new methods and classes to support f5 modules going
forward
2018-01-09 12:15:02 -08:00
d1846425db Provide a way to explicitly invoke the debugger (#34006)
* Provide a way to explicitly invoke the debugger with in the debug strategy

* Merge the debugger strategy into StrategyBase

* Fix some logic, pin to a single result

* Make redo also continue

* Make sure that if the debug closure doesn't need to process the result, that we still return it

* Fix failing tests for the strategy

* Clean up messages from debugger and exit code to match bin/ansible

* Move the FieldAttribute higher, to apply at different levels

* make debugger a string, expand logic

* Better host state rollbacks

* More explicit debugger prompt

* ENABLE_TASK_DEBUGGER should be boolean, and better docs

* No bare except, add pprint, alias h, vars to task_vars

* _validate_debugger can ignore non-string, that can be caught later

* Address issue if there were no previous tasks/state, and use the correct key

* Update docs for changes to the debugger

* Guard against a stat going negative through use of decrement

* Add a few notes about using the debugger on the free strategy

* Add changelog entry for task debugger

* Add a few versionadded indicators and a note about vars -> task_vars
2018-01-09 13:50:07 -06:00
e802b769e6 Ios logging (#33151)
* ios_logging: Handle IOS versions that dont put the word host in logging config

This change allows the ansible module to parse and match either variant
being present in running-config.

* ios_logging: enhance logging buffered to handle both size and level

This change allows ios_logging to ensure local (buffered) logging
is configured with both the correct buffer size and logging level,
when both are specified on the task.
2018-01-09 14:07:31 -05:00
39af276639 Respect egress rule definitions when creating security groups in default VPC (#34626)
* Add test for unexpected egress rule in default VPC

When passing rules_egress to ec2_group, the default
egress rule shouldn't be created (if `purge_rules_egress`)
is set. Test this.

* Respect egress rule defintions for default VPC groups

When passing rules_egress and purge_rules_egress, the
default egress rule should not be created

Fixes #34429

* Change AWS credential passing to be YAML anchors

Vastly simplify the AWS tasks by reducing the credentials to a YAML
block
2018-01-09 13:44:13 -05:00
58f06feee7 Show python and pip version in container build. 2018-01-09 10:17:00 -08:00
f67f8c7bc9 Fix examples with correct names 2018-01-09 18:26:05 +01:00
99524e7262 World Wide Port/Node Name documentation updated to match UCS Manager online help. (#34648)
kwargs variable argument setup simplified.
2018-01-09 18:05:25 +01:00
ec5e509233 [cloud] Don't log AWS credentials when creating YAML anchor for ECS integration tests (#34625)
Turn `no_log` on when setting the fact.
2018-01-09 10:47:29 -05:00
03794864c2 Fix piped transfer with become (#34584)
* Ignore become if we shouldn't be sudoable

* More explicit passing of kwargs

* dd/piped put should be sudoable=False. Fixes #34523
2018-01-09 09:32:27 -06:00
fbe46c5e21 cs_vpn_customer_gateway: fix missing return doc (#34644) 2018-01-09 16:13:24 +01:00
4b53539e27 Fix enable_https alias docstring (#34633)
* Fix enable_https alias docstring

* Explicitly set https on test, as we are setting https_port anyways
2018-01-09 15:24:45 +01:00
623ff39443 Separate common and raw (#34563) 2018-01-09 07:22:46 -05:00
b14c8b130f yum: handle exception in local_envra (#34400)
This fix adds rpm.error exception which is raised when
API unable to get envra information from RPM package.
Also, adds integration test for local_envra method.

Fixes: #30074

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-09 12:28:55 +01:00
9c7d987395 Update developing_api.rst (#34629)
Module path needs to be array instead of a string variable in order to work.
2018-01-09 11:23:01 +00:00
7d037991a3 nmcli: Handle dbus exception (#34577)
This adds exception handling for dbus related code.

Fixes: #34546

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-09 10:03:36 +01:00
436ca0a0a1 Bug Fix at cnos.py (#34607)
* Bug Fix at cnos.py

* Removed extra blank space
2018-01-09 08:33:45 +00:00
d5a8974ef3 Add the ability for the ios_vrf module to apply route targets to a VRF (#34248)
* Add the ability for the ios_vrf module to apply route targets to a VRF

* Fix W293 blank line contains whitespace
2018-01-09 02:04:18 -05:00
9d1c48f7a4 Document descriptions updated to match UCS Manager online help. (#34593)
kwargs variable argument setup simplified.
2018-01-09 07:58:22 +01:00
77726b471f Make xattr test conditional on feature support. 2018-01-08 22:39:37 -08:00
29fbf0c756 remove erroneous '.' in docsite footer (#34592)
This removes an erroneous '.' in the docsite that someone pointed out
on irc.
2018-01-08 22:36:47 -08:00
9599630976 Fixes for dnf and user integration tests. (#34603)
* Fix user test.
* Use `dnf` instead of `yum` in dnf test.
* Install correct version of rpmfluff for tests.
2018-01-08 16:36:53 -08:00
70cafcdef6 First pass at fixing #33064 (#33636) 2018-01-08 18:13:22 -05:00
cd1b144c0a Improve documentation about Comment filter (#34539)
Include a mention to the decoration option, which allows someone to
specify the character comment to be used.
2018-01-08 15:07:32 -08:00
80fb81414b initial firewalld integration tests (#31725)
* Add a couple test cases to get some baseline integration testing in
for firewalld.

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2018-01-08 14:23:50 -08:00
a67e922a40 fix ansible-galaxy requirements.yml import_tasks->include in docs (#34519)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-01-08 16:18:40 -06:00
df909c5726 Fix with_items debug loop example. Fixes #34540 (#34578) 2018-01-08 16:13:10 -06:00
08a1d47427 nmcli: Add missing 'primary' option (#34252)
This fix adds missing 'primary' option in nmcli module.

Fixes: #30405

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-08 13:37:21 -08:00
39edee7572 service_facts module (#34065)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-01-08 13:35:16 -08:00
56da2c13d6 [cloud] Add ipv6 support to ec2_vpc_nacl_facts (#30581)
* wrap boto3 connection in try/except and handle exception, add traceback import

* params dont need to be mutually exclusive and support check mode

* add check to set nacl_ids to empty list instead of None for boto3 func

* standard exception handling using traceback

* update current RETURN documentation which is incorrect.

* update logic to check for and return ipv6 cidr instead of ipv4 cidr in a NACL

* ignore default and reserved rule numbers - greater than 32766

* was breaking on non-standard protocol numbers - AWS nacls now support full list -1 to 254

* update port range and icmp type/code handling

* add some more detail to returned nacl entries

* Update exception handling to account for BotoCoreError

Remove exception handling from the boto connection creation since it does nothing

* rules numbers from 32767 to 65535 are reserved for internal AWS use so we ignore here
2018-01-08 16:24:40 -05:00
dca5d9bbd4 Fix typo and copyright statement 2018-01-08 22:14:55 +01:00
d5eef2f8a9 Use dnf upgrade in Fedora Dockerfiles. 2018-01-08 13:08:29 -08:00
61d155b315 Update Fedora Dockerfiles for Python 3 testing. 2018-01-08 12:46:08 -08:00
f20af4b909 [cloud] Change S3 MD5 checksum for multipart support in aws_s3 (#34216)
- If file has only one part and is uploaded as multipart, it is still computed the same way as having multiple parts
2018-01-08 15:21:45 -05:00
0587aedc01 synchronize: add support for buildah (#33823)
Fixes #33533

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2018-01-08 11:51:49 -08:00
c9e9422133 Added new windows module changelog entry 2018-01-09 05:46:51 +10:00
b2a415daae win_certificate_store: added new module (#33980)
* win_certificate_store: added new module

* added warning about become or credssp for pfx
2018-01-09 05:44:24 +10:00
34206a0402 ec2_vpc_vgw_facts: fix getting facts about gateways without tags (#34575) 2018-01-08 13:16:49 -05:00
458cc38992 Fix connection type in junos integration tests (#34583)
* Fix connection type in junos integration tests

*  For find module in junos integration test
   add connection type local and delegate task to localhost

* Fix review comment
2018-01-08 23:22:53 +05:30
dc85176512 Document descriptions updated to match UCS Manager online help. (#34581)
kwargs variable argument setup simplified.
2018-01-08 18:39:23 +01:00
788010d0f0 [cloud][testing] New integration tests for ec2_asg (#30554)
* Add some integration tests for ec2_asg.

* Remove exception handling from ec2_asg boto3 connection since it is handled in boto3_conn().

* Update test failure assertions

* Use yaml anchor for credentials and remove unnecessary dependencies.

* Move AWS boto3 module credentials tests to separate target

* Remove filters from tests
2018-01-08 11:21:49 -05:00
46263d77f1 Fixes for nxos_config integration tests (#34579)
* deletage_to: localhost -> connection: local

* Fix test setup
2018-01-08 10:56:47 -05:00
42dd48a6d0 Update done Network 2018-01-08 15:21:43 +00:00
473b2d58ec Add new module mlnxos_mlag_vip for configuring MLAG VIP on Mellanox network devices (#34285)
* Add new module mlnxos_mlag_vip for configuring MLAG VIP on Mellanox
network devices

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

* Remove unused variables

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

* Fix Test class name

* Fix Documentation

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

* Fix MAC address case-insensitive

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

* Fix MAC address unit-test

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-08 14:31:51 +00:00
ad73bda323 Add new module mlnxos_protocol for enabling disabling protocols on MLNX-OS Mellanox network devices (#34286)
* Add new module mlnxos_protocol for enabling disabling protocols on
MLNX-OS Mellanox network devices

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

* Fix Test Class name

* Fix IP routing protocol support

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

* Add missing support for check_mode, and Fix documentation

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-08 14:30:30 +00:00
943107b1b9 Add new module mlnxos_facts for retrieving facts of MLNX-OS Mellanox network devices (#34287)
* Add new module mlnxos_facts for retrieving facts of MLNX-OS Mellanox
network devices

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

* Fix Documenation and Examples

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-08 14:29:16 +00:00
00d75ff449 Fix Linux blockdevice size computation (#34475)
Linux' sysfs _always_ reports device size in 512b sector units,
regardless of the device's actual, physical blocksize.
2018-01-08 06:18:25 -08:00
9ed4661860 Add new module mlnxos_pfc_interface for managing priority flow control on Mellanox devices (#34327)
* Add new module mlnxos_pfc_interface for managing priority flow control
on Mellanox devices

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

* Remove unnecessary if, and Fix Documentation

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

* Fix missing interface status

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-08 13:43:10 +00:00
a0dbfb0089 vultr: new module vr_account_facts (#34394)
* vultr: new module vr_account_facts

* fix typo

* simplify

* minor doc fix
2018-01-08 14:40:10 +01:00
1e292c0211 Correct broken link to playbooks_tests 2018-01-08 12:28:48 +00:00
1c8c51d05c Fix junos integration failures (#34571)
*  Add connection=netconf in individual roles for modules that run using netconf connection
plugin
*  Add connection=network_cli for junos_netconf and junos_command
at applicable places
2018-01-08 17:58:47 +05:30
5e6b2495c0 Convert nxos_vrf to DI module (#34274)
* Convert nxos_vrf to DI module

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

* Add purge example and improve logic

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

* revert version_added for rd param

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

* update test to use network_cli

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-08 10:10:34 +05:30
7f59f7d80e Fixing issue with win_iis_website parameter types. Issue #34500 (#34501)
* remidate Windows debugging

Using $complex_args is not working (anymore?). We need to set $params directly.

* Fixing issue with win_iis_website parameter types

There are two types of attributes. "String" and "Configuration Attribute". We need to get the real "value" based on the type.

* Revert "remidate Windows debugging"

This reverts commit df75d3bb0d.
2018-01-08 10:26:16 +10:00
49739dda47 ACI: Add signature-based authentication (#34451)
ACI: Add signature-based authentication
2018-01-08 00:44:30 +01:00
71ff77e51f win_domain_user: added ability to explicitly set credentials and user when interacting with AD (#34562) 2018-01-08 09:38:13 +10:00
e545127c2e Fix broken link to w3schools (#34561)
Closes issue #34528
2018-01-08 00:13:39 +01:00
b5579f55cc win_domain_user allow to update generic attributes (#34558)
* win_domain_user allow to update generic attributes

Signed-off-by: Marko Koehne <marko@mkoehne.de>

* win_domain_user.py fixed indentation

Signed-off-by: Marko Koehne <marko@mkoehne.de>

* win_domain_user.py attributes add version_added

Signed-off-by: Marko Koehne <marko@mkoehne.de>

* win_domain_user.p1 removed attributes from result

Signed-off-by: Marko Koehne <marko@mkoehne.de>

* moved run_change outside of if statement
2018-01-08 08:43:34 +10:00
76586cfd0b Added to UCS team 2018-01-07 20:33:46 +01:00
06cbc422c1 Document descriptions updated to match UCS Manager online help. (#34534)
Property checking variable argument setup simplified.
2018-01-07 20:32:34 +01:00
2039366380 typo (#34549) 2018-01-07 20:31:06 +01:00
b5245e581a Adds openshift_scale module (#34244) 2018-01-07 12:38:50 -05:00
2db9878c76 cloudstack: streamline cs_network_offering (#34553)
* cs_network_offering: streamline docs a bit

* cs_network_offering: format traffic type as returned by API

* cs_network_offering: rename return to service_offering_id

* cs_network_offering: ensure absent tests don't require anyting else than name

* cs_network_offering: beautify the default_egress_policy param

* cs_network_offering: test enabling/disabling with existing syntax

* cs_network_offering: rename service_provider_list to service_providers

* cs_network_offering: allow update max_connections

* cs_network_offering: extend returns

* cs_network_offering: extend tests with max_connections
2018-01-07 17:30:52 +01:00
439e64256f cloudstack: rename new module to cs_service_offering (#34555)
* cloudstack: rename cs_serviceoffer to cs_service_offering

* adjust references to old name

* cs_service_offering: fix limitcpuuse not handled

* minor docs fix

* update changelog
2018-01-07 17:21:56 +01:00
d2ccc13857 Add VNC port range check (#34466)
This adds a check to ensure that both start and end of vnc range
is specified.
2018-01-07 04:27:42 -05:00
5edb800b6d Remove unnecessary if, and Fix Documentation (#34413)
* Remove unnecessary if, and Fix Documentation

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

* Fix aggregate spec for l2 interface

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

* Add aggregste test for l2 interface

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

* Fix MAC address case

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-07 08:35:50 +00:00
2916ff0a1a Introduces numerous fixes for bigip command (#34550)
A bug in the parsing of single commands with commas
Token cleanup
Password argument now defaults to false
Addition of coding conventions from v3 conventions
2018-01-06 23:23:32 -08:00
460deb08cb fix windows tests after recent patch (#34548) 2018-01-07 14:05:15 +10:00
8e5407e0da Fixes bigip gtm params (#34544)
Changed bool params to be string params because there is a third
param that needs to be taken into account
2018-01-06 19:36:02 -08:00
8465830c1d Add new module digital_ocean_floating_ip_facts (#26372) 2018-01-07 08:51:57 +05:30
f4a2b0b103 Adds the bigiq_regkey_license module (#34543)
This module can be used to add license offerings to a pool. This
is the second part required to license a remote device from a
BIG-IQ (the first being to create a pool with bigiq_regkey_pool)
2018-01-06 12:13:50 -08:00
8c07ebe860 Adds bigiq regkey pool module (#34542)
This module can be used to manage the containers of regkeys
that exist on a BIG-IQ
2018-01-06 11:34:14 -08:00
ad337503e7 add missing > to ansible-doc help message (#34512)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-01-06 15:43:54 +00:00
8e1671f3c5 Fix eos_l3_integration test failures (#34538) 2018-01-06 14:43:27 +05:30
b7bf98cd3a Add fedora27py3 Dockerfile. 2018-01-05 20:40:26 -08:00
85761d1291 Add ignore lines for string_format pylint plugin. 2018-01-05 19:59:17 -08:00
8c1353537d Add string_format pylint plugin. 2018-01-05 19:59:17 -08:00
a9fe30e34b Add pylint plugin support to ansible-test. 2018-01-05 19:59:17 -08:00
aff16225eb Add per file+rule pylint ignore to ansible-test. 2018-01-05 19:59:17 -08:00
ebf971f931 Don't use getattr in _get_parent_attribute to avoid recursion issues (#33595)
* Don't use getattr in _get_parent_attribute to avoid recursion issues

Fixes #23609

* Move extend/prepend to field attribute

Also removes _get_attr* methods that were basically just calling
_get_parent_attribute because it needed to set those params.

Also modifies _get_parent_attribute() to pull those values from the
FieldAttributes instead of using the ones passed into the function.

* Better fixes for _get_parent_attribute
2018-01-05 21:51:44 -05:00
ab5dbca47e Fix Windows integration tests. 2018-01-05 17:04:16 -08:00
e5d77c7782 Fixes for bigip monitors and profiles (#34524)
Fixed incorrect parent comparison. Fixed old fqdn_name usage.
Fixed incorrect default parents
2018-01-05 15:53:26 -08:00
803e4124b6 Removes deprecated code from bigip_monitor_tcp (#34520)
* Removes deprecated code from bigip_monitor_tcp

The deprecated code was moved into its own modules. We let it lay
here for a release, and now I'm removing it.

* Fixing upstreaming tests
2018-01-05 15:22:50 -08:00
f189106ef6 optimize config yaml loading (#34481)
fixes #34147
2018-01-05 16:58:05 -06:00
e6a7c0e30b Adds more common doc strings to f5 modules (#34515) 2018-01-05 14:41:23 -08:00
c5d0b15160 Fixes nxos_l2_interface tests (#34514)
* Update nxos tests that got missed in the first pass

* Add setup for setting interfaces to layer2
2018-01-05 17:01:45 -05:00
e9bb5da37e Adds the bigip_gtm_server module (#34513)
This module can be used to create GTM servers (not to be confused with
GTM virtual servers) on a BIGIP. GTM servers are a component of the
datacenter, and GTM virtual servers are their members.
2018-01-05 13:51:15 -08:00
6d4ab66655 Allow variables to be used in vars_prompt (#32802) 2018-01-05 13:24:20 -06:00
7bf75f2458 cloudstack: new module cs_network_offering (#34354) 2018-01-05 20:06:49 +01:00
c371ed8d30 nxos tests to use network_cli (#34474)
* Fix over-byte

* Fix nxos_l2_interface docs

* Update connections for tasks

* Add default ssh port

* Only report provider when using connection=local

* Send empty provider when connection=network_cli

* Fix find tasks
2018-01-05 12:39:04 -05:00
a0ad7ffedf Update httptester.yml to match Dockerfile (#34508) 2018-01-05 10:38:03 -06:00
f77ab30316 Fix various EOS integration tests due to missing become (#34504) 2018-01-05 16:16:04 +01:00
9b74b9bc8b mongodb cache plugin (#34414)
* Initial commit of mongodb cache plugin

* Fix typo in method docstring

* Add ANSIBLE_METADATA indicating preview and community supported
2018-01-05 09:10:58 -06:00
1826c27e68 All 2.5 release dates to be pushed out by one week (#34456) 2018-01-05 13:19:48 +00:00
bac5808b94 New module for managing user in InfluxDB (#31566) 2018-01-05 15:27:43 +05:30
2be5ad4f08 deprecation dict not live yet (#34493) 2018-01-05 03:28:53 -05:00
fba178d852 Fix httptester Dockerfile so it builds again. 2018-01-04 23:55:38 -08:00
9d2182bcf8 Deprecate nxos_switchport and Add nxos_l2_interface DI module (#33813)
* Deprecate nxos_switchport

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

* Add nxos_l2_interface DI module

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

* pep8 fixes

* aggregate test for nxos_l2_interface

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

* revert nxos_switchport test change

* gundalow's comment

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-05 07:44:02 +00:00
e9a5ff912a nxos_file_copy: fix broken import and 2.6 compatibility (#34480)
* Fix broken import: paramiko could be missing

* doc: use formatting function

* Use Python 2.6 compatible format string
2018-01-05 11:36:11 +05:30
6da06fac3f Fix out-dated code style in new module logentries_msg.py 2018-01-04 20:50:42 -08:00
e9df2083a3 If check mode enabled and file missing set changed to true 32676 (#33967)
* basic.py: add mock to os.path.exists

* set_*_if_different: if check_mode enabled & file missing: set changed to True

Fixes #32676
Thanks to mscherer and Spredzy for the distributed triplet programming
session!
2018-01-04 20:33:14 -08:00
9f969a2176 Misc. typo is display log (#34388)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-05 07:44:28 +05:30
bc6b1ca17b corrected docs, removed comment, return is req 2018-01-04 20:46:26 -05:00
dab0661cc7 Logentries msg plugin, this allows users to send log messages to logentries (#19456)
* This is a resubmission of https://github.com/ansible/ansible-modules-extras/pull/904

* Fix up logentries_msg module with current best practices

This commit also fixes up a few pep8 issues.
2018-01-04 20:45:47 -05:00
aece0818c4 Don't cache duplicate plugin names (#34420)
* Don't cache duplicate plugin names. Fixes #33484

* Add tests for duplicate plugin filenames, to showcase what happens
2018-01-04 16:47:23 -06:00
edf56c9743 win_mapped_drive: add extra note around win_mapped_drive (#34478) 2018-01-05 08:00:09 +10:00
da69f5aeae win_package: remove case sensitive check for msi extension (#34476) 2018-01-05 07:11:22 +10:00
85ff38d2e2 K8s lookup plugin (#34025)
* Use OpenShift client

* Refactored

* Fix lint issues

* Replace AnsibleError to make the bot happy

* Remove extra space
2018-01-04 15:24:31 -05:00
a830cae160 windows become - info about blank passwords (#34331)
* windows become - info about blank passwords

* Edited for clarity
2018-01-05 06:00:08 +10:00
ccbd788f6b Remove passing files from import skip list. 2018-01-04 11:40:21 -08:00
5e80f22d7a specify ansible_become_method=enable (#34471) 2018-01-04 18:43:57 +00:00
75fd76cd9f updated from stable.24 2018-01-04 13:35:15 -05:00
bd38359ddc gcdns_zone: fix broken import (#34076)
* fix broken import
* whole project requires Python >= 2.6
2018-01-04 09:32:47 -08:00
19f5d969c5 Bugfix.add token cleanup 02 (#34441)
* Adds more token cleanup

Token cleanup ensures that the bigip doesnt become wedged from
excessive API calls

* Fixed missing usage of token cleanup
2018-01-04 09:24:14 -08:00
26d20ec194 galaxy unit tests: add missing arg (#33766)
* galaxy unit tests: add missing program name

* galaxy unit tests: remove incorrect switchs

- 'install' action doesn't support '--offline' switch
- 'remove' action doesn't support '--init-path' switch
2018-01-04 09:16:56 -08:00
490a1625f7 K8s scale module (#33983)
* New K8s common modules

* Refactor

* Fixes lint issues

* openshift_scale to new branch

* Better docs

* Updates examples
2018-01-04 12:07:53 -05:00
3d0da8f093 Inject attempts into result earlier for retry logic (#34148)
* Add integration test for missing attempts in until with failed/changed_when

* Extend tests to validate additional known behaviors of do-until loops

* Inject attempts into result earlier
2018-01-04 11:45:34 -05:00
6d3fafa2d5 upgrade the azure storage version (#34442) 2018-01-04 08:23:15 -08:00
99551818a1 fix failure got multiple values for keyword argument id (#33624)
* fix failure `got multiple values for keyword argument id`

* fix test case failure

* fix pylint error

* fix typo

* use fixed version of azure mgmt network sdk

* resolve code review feedbacks
2018-01-04 08:22:35 -08:00
d61742147f fixed test to new sig 2018-01-04 11:20:56 -05:00
1b34a17415 removed unused objects from include results proc 2018-01-04 11:20:56 -05:00
c30ee42fe1 Don't use the Task object in the dictionary of results for include_role
The short-circuiting of include_role in TaskExecutor was using the _task object
in the result dictionary. This causes the playbook class to be serialized, which
is something we no longer do due to speed/size problems with nested objects.

Simply removing this should fix a lot of memory and speed problems with include_role.
2018-01-04 10:14:13 -05:00
30cae1c356 Do not prevent username logging in jenkins_script module (#34459) 2018-01-04 10:03:01 -05:00
f0dbbfae84 Add Alex (rambleraptor) and Eric (erjohnso) as GCP module namespace maintainers 2018-01-04 07:45:29 -05:00
0f24199012 make eos_vlan idempotent (#34443)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-01-04 18:12:44 +05:30
ab67539bef Add nxos_lldp module (#34453)
* Add nxos_lldp module

*  Implemetation for nxos_lldp module
*  Integration test for nxos_lldp module

* Minor change
2018-01-04 18:06:15 +05:30
2376d02f3f ovirt_cluster: Fix cluster cpu arch comparision (#34446) 2018-01-04 07:01:58 -05:00
dcc1355d54 VMware: new module - vmware_local_role_manager (#33372)
This fix adds new module for managing various roles in
local ESXi server. Also, adds integration tests for this change.

Fixes: #27899

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-04 15:53:58 +05:30
0ddfdca143 New module grafana dashboard (#31930)
Reviewed
2018-01-04 10:12:02 +00:00
10b3431990 expose subject_strict and issuer_strict to users (#34090) 2018-01-04 04:43:37 -05:00
6c97c340ea Various bigip_gtm_datacenter fixes (#34440)
Code refactor to use f5 coding conventions. Removed deprecated
"enabled/disabled" params (this is now a state). Adds token cleanup
for cases where many api calls are made.
2018-01-03 21:18:34 -08:00
43812d82c1 Adds "allow" param to bigip_device_httpd (#34439)
This param can control what addresses are allowed to access the
httpd ui of the bigip
2018-01-03 20:58:22 -08:00
f58d9da703 Update link in common footer (#34397)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-03 20:52:14 -08:00
bdafb42156 Refactors the bigip_sys_global module (#34438)
Changes include the current f5 coding standards and unit tests
for the module
2018-01-03 20:39:08 -08:00
9bd4070bdf Adds bigip_traffic_group module (#34436)
This module can be used to create and remove traffic groups. Managing
members of the group is not yet supported.
2018-01-03 20:26:18 -08:00
ec7b412193 Fix Packet guide to comply with latest version of the packet module (#31410)
* Fix Packet guide to comply with latest version of the packet module

* Fix backticks in rst

* rephrase wait_for_public_IPv description

* Edited for clarity.
2018-01-03 19:05:04 -08:00
25a21f46bd win async: removed async_wrapper module and fixed async for action plugins to use shell code (#34434)
* win async: removed async_wrapper module and fixed async for action plugins to use shell code

* fixed pep8 issue
2018-01-04 12:51:53 +10:00
8e20ae2de4 Fix test case failure for Azure ACS module (#33623)
* fix azure acs test failure

* change acs location
2018-01-03 16:11:21 -08:00
c2342f156c Count ignored failed tasks and successful tasks with expected failure… (#33282)
* Count ignored failed tasks and successful tasks with expected failure as failed tests.

* Make junit callback plugins changes backward compatible: add new task marker TOGGLE RESULT and new option fail_on_ignore
2018-01-03 16:03:15 -08:00
6c754d9d1c win_whoami: removed logon_sid from return results (#34425) 2018-01-03 17:57:44 -05:00
278663ad2c windows: updated docs to include info regarding https validation (#34128)
* updated docs to include info regarding https validation

* some doc edits
2018-01-04 08:47:37 +10:00
4eb0d74c22 win_domain_controller: add readonly support (#33850)
* win_domain_controller: add readonly and sitename functionality

* fixed minor typo

* removed choices from doc
2018-01-04 08:46:32 +10:00
3536de0fb8 New Avi module to setup custom IPAM DNS profile (#34358)
* New Avi module to setup custom IPAM DNS profile

* Update copyright notice.

* updated required fields
2018-01-03 22:19:48 +00:00
5164bf78bc Added a new module to fetch Avi Controller version and data (#34357)
* Added a new module to fetch Avi Controller version and data

* Updated copyright notice.

* setting options to empty as all of it is coming from common args.
2018-01-03 22:19:13 +00:00
d702c720f6 New module to setup error page profile (#34361)
* New module to setup error page profile

* Update copyright notice.

* updated required fields
2018-01-03 22:17:45 +00:00
c132b977e8 Refactors bigip_virtual_server (#34412)
This refactors the bigip_virtual_server module to address several issues and
missing features. Additionally it adds tests and updates the coding standards
to the recent version used by f5. Finally, it removes deprecated items that
were announced in 2.4
2018-01-03 13:42:17 -08:00
4d5533c597 Update ec2_asg_lifecycle_hook to meet modern best AWS module practices (#34379)
* Use `AnsibleAWSModule`
* Update exception handling to use `fail_json_aws` and check
  for `BotoCoreError` exceptions associated with bad connection
  parameters.
* Remove connection creation exception handling as it does nothing.
2018-01-03 16:35:24 -05:00
3388999603 Adding 2.3.3 release date to release vars 2018-01-03 14:52:48 -06:00
1412d6eb18 Allow ec2_vpc_net to work in non classiclink regions (#34336)
describe_vpc_classic_link only works in regions that support
EC2-Classic.
2018-01-03 15:36:02 -05:00
b40c779e46 Adds token cleanup for bigip_partition (#34415)
Tokens need to be cleaned up or else the bigip may wedge itself
over time if not enough tokens auto-expire.
2018-01-03 12:34:54 -08:00
38a31d3156 win_domain: added option to set database and sysvol path (#34333)
* win_domain: added param to set database and sysvol path

* fixed up documentation to work with backslashes
2018-01-04 06:32:01 +10:00
dacd4c4a68 Add network namespace module (#21820)
Allows to create/delete network namespaces with ip.
2018-01-03 15:27:58 -05:00
67ebf2d4b2 update mlnxos modules in BOTMETA file (#34417)
Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-03 20:25:49 +00:00
1572df6802 Readd zypper tests (#33203)
* Readd zypper tests

The tests were reenabled in #33034, but some tests were removed.
Readd the tests in a mostly distro-version-independent way.

* Remove with_items and use native yaml
* Dynamically determine test URL
2018-01-03 12:20:43 -08:00
1183029591 update DOCUMENTATION for network_cli and netconf (#33396)
* update DOCUMENTATION for network_cli and netconf

This updates the DOCUMENTATION string for both the netconf and
network_cli connection plugin.

* add additional options to the connection documentation

* update documentation based on review and feedback

* adds persistent connection options to documentation string
2018-01-03 15:10:35 -05:00
e59922d527 disable failing win_toast tests 2018-01-03 11:45:45 -08:00
9e4aed15ff Adds bigip_software_update module (#34410)
This module can be used to adjust the ways by which a bigip communicates
back to F5 to check for system updates.
2018-01-03 11:30:11 -08:00
f1c2861308 Tweak WinRM/Windows maintainer stuff 2018-01-03 11:08:46 -08:00
7cec8986b9 New module to setup error page body policies (#34359)
* New module to setup error page body policies

* Update copyright notice.
2018-01-03 18:59:41 +00:00
53051cf9e8 New module to setup WAF policy (#34362)
* New module to setup WAF policy

* Update copyright notice.
2018-01-03 18:57:07 +00:00
627295365d New module to patch GSLB service object with just GSLB pool member an… (#34365)
* New module to patch GSLB service object with just GSLB pool member and settings

* Update copyright notice.
2018-01-03 18:55:21 +00:00
e2928da0fd Updated copyright for all the avi modules (#34408) 2018-01-03 18:48:24 +00:00
70b31abf85 Fix tests as filters 5 (#34406)
* Address recent tests as filters in win_iis_webbinding tests

* Make no-tests-as-filters.py so that it is executed
2018-01-03 12:10:24 -06:00
57ed6a866f windows: Add IPv6 address support and docs to go with it (#34072)
* windows: Add IPv6 address support and docs to go with it

* minor docs fix

* fixed some doc sentances
2018-01-03 09:26:53 -08:00
603d6122a3 New module: monitoring/grafana_plugin (#33150)
* Grafana plugin module

* Minor formatting
2018-01-03 16:37:52 +00:00
b0fc65bf9b Add doc fragment for files (#33953)
Found by Pilou- and spredzy during co-debugging #32676
2018-01-03 11:04:18 -05:00
b762eb2d92 Fix some TODOs to use generic_urlparse which allows proper netrc selection. Fixes #34360 (#34372) 2018-01-03 09:52:56 -06:00
ae3287d84d add bug_internal_api.md to ticket_stubs (#34370)
* add bug_internal_api.md to ticket_stubs

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-01-03 09:46:10 -06:00
9879aa0382 VMware: Add support for resource allocation info (#33990)
This fix adds support for Virtual Machine resource allocation
information. This information is related to limit and reserve CPU and Memory
of virtual machine.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-03 21:13:56 +05:30
552d1df901 Adds parents to mutually_exclusive with src for *_config modules (#33957)
* mutually_exclusive add - ios_config parents works with lines by not src

* mutually_execlusive parents,src added to all other net modules

* tests for mutually_exclusive parents,src and whitespce removal
2018-01-03 09:47:12 -05:00
af236f2531 Accept other ios_banner types (#33961)
* Accept other ios_banner types

* Use 2.6-compatible format string

* Doc option values prior to this update
2018-01-03 14:38:14 +00:00
798aa8a2d2 ec2_asg: fix desired_capacity not optional (#34194)
1# Please enter the commit message for your changes. Lines starting
2018-01-03 09:31:34 -05:00
a323521e46 ecs_taskdefinition module : proposal : add force_create: true parameter (#23480)
* ecs_taskdefinition module : add `force_create: true` parameter
2018-01-03 08:56:19 -05:00
605243f41f Updating ecs_task_definition module example (#34237)
Appending logConfiguration: parameter for ecs task definition. To define user specific log configuration attribute.
2018-01-03 08:50:53 -05:00
1afd076dac Add new module mlnxos_magp for managing MAGP protocol on Mellanox (#34307)
MLMX-OS network devices

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-03 12:43:46 +00:00
42d5aeec3e Add support for vlan and loopback interfaces in mlnxos_interface (#34323)
Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-03 12:43:13 +00:00
52bea8dab6 Add new module mlnxos_mlag_ipl for managing IPL (inter-peer link) (#34326)
Signed-off-by: Samer Deeb <samerd@mellanox.com>
2018-01-03 12:41:26 +00:00
18e41ca4d9 add VMware provider to ManageIQ module (#34112)
Currently the manageiq remote management module only supports
OpenShift, AWS and oVirt. This adds the ability to create VMware
providers by adding two additional parameters for configuring a
host VNC range.
2018-01-03 07:14:02 -05:00
b051fc6067 ovirt: host_pm: Add missing order parameter (#34213)
Fixes: https://github.com/ansible/ansible/issues/34134
2018-01-03 10:52:23 +00:00
43b0ba0679 Docs network best 2.5 (#33544)
* Best practices for Ansible 2.5 networking

* How to use network_cli
* How to pass credentials

* Proxy

* rename facts-demo.yml + tree

* code-block formatting

* Move platform specific notes to new page (PR pending)

* use ansible_network_os rather than group_names

* Scott's comments

* Update network_best_practices_2.5.rst
2018-01-03 05:44:55 -05:00
daae4d922a Add missing msg keyword for fail_json (#34387)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-03 04:44:53 -05:00
6a322637c4 Add support for snapshot_id field (#23334)
The DigitalOcean API v2 supports creating a block storage volume from
a previously-saved snapshot using a snapshot_id string. This module now
likewise supports creating a block storage volume using a valid
snapshot_id string.

When creating a block storage volume from a snapshot_id using the
DigitalOcean API, the region and size_gigabytes parameters are ignored.
Therefore, these parameters are likewise ignored when using this module.
However, as of this commit, they are still required fields. It may be
necessary to find some way to eliminate these requirements if the
snapshot_id parameter is included.

The DigitalOcean API v2 allows for creating a block storage volume from
a previously-saved snapshot using the snapshot_id parameter. If this
parameter is used, the region and size_gigabytes parameters are
disregarded. In order to avoid confusion, when the snapshot_id parameter
is included when creating a block storage volume using this module, the
region and block_size fields are overridden and changed to null values.
This should make it clear that these values are NOT being used if a
snapshot_id is present.

This module will still fail as before if neither the region/block_size
or snapshot_id is not present when creating a block storage volume.

Documentation has been updated to reflect these changes.
2018-01-03 03:55:30 -05:00
206b6ebe0d fix PS type conversion failure when using "all" profiles (#34383)
* obscure type promotion issue in some versions of Powershell causes [int]::MaxValue to be promoted to [int64] when doing a COM property get or set. Since the "All" profiles value of 0x7FFFFFFF is [int]::MaxValue, it would trigger "Specified cast is not valid" when modifying a rule that's already set to All Profiles or trying to be.
* Fixed catch-all error handler to include exception detail
* Added test converage for this case
2018-01-02 20:25:46 -08:00
136d902ff3 Update ec2_asg_lifecycle_hook to pass tests
ec2_asg_lifecycle_hook was merged without rerunning tests.

Changes needed to pass tests:
* version_added
* metadata version
* copyright header
2018-01-02 18:09:31 -08:00
2b4db5eaab fixes typo ansbile to ansible 2018-01-02 17:17:53 -08:00
b14e5c33ab Autoscaling Groups Lifecycle Hooks module (#22412)
New ec2_asg_lifecycle_hook module
2018-01-03 10:30:20 +10:00
9c38f5b041 Handle stdout/stderr/BaseException in import test. 2018-01-02 14:42:31 -08:00
a4336feadc Remove 'astorije' from bot ping (#34338)
As per request - https://github.com/ansible/ansibullbot/issues/838
removing 'astorije' from maintainers list.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-02 12:33:50 -05:00
e045f46132 Fix doc for with_first_found
the variables in with_first_found should be list rather than dict
2018-01-02 11:37:53 -05:00
70fd5d4caf More stable explicit file close. (#34303) 2018-01-02 10:03:44 -06:00
0eb2644c1c Fix redeclaration of get_host_info function (#33608)
This fix redeclaration of get_host_info method in linode
inventory.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-02 10:24:53 -05:00
6dad717a9a Add eos_lldp module (#34302)
* Add eos_lldp module

*  Implementation for eos_lldp module
*  eos_lldp integration test

* Fix minor issue

* Minor change
2018-01-02 18:54:06 +05:30
48f20a77af Add ios_lldp module (#34308)
* Add ios_lldp module

*  Implementation of ios_lldp module
*  Integration test for ios_lldp module

* Minor change
2018-01-02 18:43:08 +05:30
3681d0e3e0 yum: support installroot in is_group_env_installed (#34182) 2018-01-02 12:42:53 +01:00
5496326c4d nmcli: Add 'generic' connection type (#34251)
This fix adds 'generic' connection type in nmcli module.

Fixes: #33648

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-02 12:37:22 +01:00
d1b63bd5ef yum: Add option for enable and disable plugin (#34306)
This fix adds parameter to enable and disable plugins for yum
command.

Fixes: #30016

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-02 12:37:02 +01:00
158cd59994 Add Windows AD Domain facts for membership and server type (#23500)
* Add Windows Domain facts for membership and server type

Adds additional facts to setup.ps1 for Windows hosts

 * ansible_windows_domain_member - returns true if machine is domain
   joined
 * ansible_windows_domain_role - indicates role of machine in domain

Roles list is taken from
https://technet.microsoft.com/en-us/library/ee198796.aspx and will
return sensible values for non domain joined machines too.

* Use $win32_cs rather than Get-CimInstance Win32_ComputerSystem for consistency
2018-01-01 20:20:06 -05:00
0a3da471f5 win_iis_webbinding rewrite (#33958)
* Begin rewrite of win_iis_webbinding
Add integration testing, check mode and idempotency
Add support for SNI
Fix replacing SSL cert on existing bindings

* finished up initial rewrite of win_iis_webbinding

* updated test to remove tests as filters

* updated win_iis_webbinding docs

* fix more doc/formatting issues win_iis_webbinding

* Removed string empty defaults for certs. Added a few new helpful
comments.

* Revert "Removed string empty defaults for certs. Added a few new helpful"

This reverts commit 48f35faea8.
2018-01-01 19:30:18 -05:00
e3b49a7aeb Added possibility to disable basic auth (#33224) 2018-01-02 10:13:20 +10:00
32929f916a docfixes: spelling, width (#34301)
Remove examples from main section and make sure it is all in the examples. Should helpw ith the HTML breakage (it is too wide for most monitors).

tyop fixes too.
2017-12-29 21:44:21 -05:00
a05ed65295 consul_io.py: typo fixed in docs (#34292) 2017-12-30 03:08:28 +01:00
2f6fedd91f add aliases to match the names returned by the module (#34276) 2017-12-29 13:51:54 -05:00
6ba6c7e67c contrib/inventory/consul_io: typo fixed in documentation (#34291) 2017-12-29 16:49:37 +05:30
585b3449c6 Add module mlnxos_lldp_interface for managing lldp interfaces configuration (#34179)
* Add module mlnxos_lldp_interface for managing lldp interfaces
configuration

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

* Fix unit test

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-29 10:51:31 +05:30
84a10903db Add module mlnxos_linkagg for configuring LAG and MLAG on Mellanox switches (#34204)
* Add module mlnxos_linkagg for configuring LAG and MLAG on Mellanox
switches

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

* Remove unnecessary  method in unit-test

remove _execute_module and use execute_module from base class
2017-12-29 09:03:45 +05:30
17fcf7d946 cloudstack: new module cs_vpn_customer_gateway (#34260)
* cloudstack: new module cs_vpn_customer_gateway

* fix example is not a yaml

* add missing alias

* use case insensitve for name
2017-12-28 21:40:57 +01:00
80ba767204 Convert nxos_interface to DI (#34240)
* Convert nxos_interface to DI

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

* Add integration test

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

* commit for ganeshrn's comment

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-12-28 16:41:09 +05:30
a3c185bfa8 Add eos_interface module (#34258)
* Add eos_interface module

*  Implementation of eos_interface module
*  Intergration test for eos_interface module
*  Minor fix in eos_l3_interface module
*  Minor fix in ios_interface integration test

* Fix CI issues

* Fix more CI issues
2017-12-28 16:03:50 +05:30
747682fa53 FreeIPA: Add CNAME, DNAME and A6 as record type (#34236)
This fix adds CNAME, DNAME and A6 record type in ipa_dnsrecord module.

Fixes: #34198

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-27 16:32:11 -05:00
2b6af10982 Misc. fix for typo (#34262)
Changed 'assginment' to 'assignment'

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-27 19:52:10 +01:00
285f1187e0 ovirt: Fix check for upgrade when no updates (#33940) 2017-12-26 09:29:50 -05:00
1c157a8cf1 Fix env lookup plugin docs (#34235)
The env lookup plugin docs mistakenly mentioned dns TXT records,
and that it requires a DNS resolver library.
2017-12-26 05:20:33 -05:00
6a6f5129a9 dev_guide: fix a slip (#34143)
replace 'Formatting options' with 'Formatting functions'
2017-12-26 10:18:09 +00:00
f5721972cb doc: new modules to changelog (#34180) 2017-12-26 10:17:23 +00:00
dc1d6ec684 Add eos_l3_interface module (#34224)
*  eos_l3_interface module implementation
*  Integration test cases for eos_l3_interface module
2017-12-26 13:54:27 +05:30
d73be7f461 Remove diff and request data. Add more return docs. (#34230) 2017-12-25 21:50:58 -05:00
32f963aa0f Prevent secret data from being logged (#34229) 2017-12-25 21:01:28 -05:00
ec3c31b1f4 Fail when model not found (#34227) 2017-12-25 16:45:19 -05:00
54396a95c2 Adds datetime encoder. Fixes Service comparison. (#34223) 2017-12-25 12:09:31 -05:00
f1bda19dea Fixes get_prompt() issue for network platforms using cliconf plugins (#34221)
Fixes #34220
2017-12-25 18:15:25 +05:30
98f3424ed0 Fix ios_l3_interface configure ipv4 address issue (#34222)
Adding a new interface and it's ipv4/ipv6 address results
in failure. Add a check to validate if interface address is
already configured or not.
2017-12-25 18:11:35 +05:30
89670133c1 Module mlnxos_l3_interface (#34199)
* Add module mlnxos_l3_interface for configuring L3 on Mellanox switches

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

* Rename test class

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-25 13:21:40 +05:30
ad04c1854d Granular K8s doc fragments (#34215)
* Makes doc fragment more granular

* Fix lint issues
2017-12-24 17:50:07 -05:00
bf04e8a8ea Fix syntax typo 2017-12-24 12:16:17 +01:00
9e2ff3e4d5 Updated Avi Modules with new features and documentation update. (#34206)
* Updated Avi Modules with following
1. Support to perform patch operation using the modules. The data update method is
selected using avi_api_update_method=patch and patch operation is determined by
avi_api_patch_op. The patch data is the normal params that are provided in the modules

2. Support for avi_credentials as single authentication dictionary for all API calls.
This is preferred way as opposed to previously all credentials details would pollute
the individual Ansible tasks. It also allows the module development to be enhanced
without breaking compatibility for new authentication schemes like SAML etc.

3. Support for sharing api_context between the module invocations. This is a
workaround to not do multiple logins to Avi Controller and be able to
re-use single login across multiple REST API calls.

4. Documentation update for new parameters and existing ones with Units data.

* Fixed the pylint and pep8 errors caused due to pycharm editor auto formatting
2017-12-24 08:15:23 +00:00
9b4a1ed475 Reorganize k8s common (#34212)
* Reorganize k8s common

* Separates AnsibleMixin

* Fix lint issues
2017-12-23 16:41:38 -05:00
8ddb84a155 Add module mlnxos_vlan for supporting vlan configuration on Mellanox switches (#34113)
* Add module mlnxos_vlan for supporting vlan configuration on Mellanox
switches

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

* use sgort header and fix METADATA

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-23 12:11:25 +05:30
dbcfea587c Add module mlnxos_l2_interface for supporting configuration of L2 interfaces on Mellanox switches (#34158)
* Add module mlnxos_l2_interface for supporting configuration of L2
interfaces on Mellanox switches

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

* use shorter header and fix METADATA

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-23 11:24:35 +05:30
d5061aa8e6 Add ios_l3_interface module (#34201)
* Add ios_l3_interface module

Fixes #31298

*  Add ios_3_interface module
*  Integration test
*  Return command response for load_config()

* Fix CI issues
2017-12-23 11:24:00 +05:30
0deda64231 Add module mlnxos_lldp for supporting configuration of LLDP protocol on Mellanox switches (#34159)
* Add module mlnxos_lldp for supporting configuration of LLDP protocol on Mellanox switches

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

* Fix header and metadata

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

* Fix imports

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-23 10:54:05 +05:30
1c391e777a Improving docs and examples (#34155)
* Improving docs and examples

* Removes trailing whitespace
2017-12-22 17:12:17 -05:00
d19108e592 Adds more token cleanup (#34207)
Token cleanup assists in preventing the ansible modules from
overwhelming the existing tokens in bigip api
2017-12-22 12:54:56 -08:00
75fbfb9e36 Fixes and additions to bigip_pool (#34205)
Removes deprecated host/port params. Adds metadata param. Adds new
classes to better support refactoring and maintenance.
2017-12-22 12:39:19 -08:00
554ffd70f5 Adds token cleanup to bigip irules (#34203)
Token cleanup helps keep the bigip from getting wedged
2017-12-22 11:40:20 -08:00
5bd8a8f491 Add nso_query module to query Cisco NSO using XPath (#34188) 2017-12-22 16:56:50 +00:00
cd8632dd7f Specify default (#34186) 2017-12-22 04:58:55 -05:00
d6fd9703f1 Add nso_show module for Cisco NSO (#34142)
* update version parsing and move requirements to nso_* modules

prepare for introduction of nso_show module that has other version
requirements than the existing nso_* modules.

* Add nso_show module for retreiving config from Cisco NSO

New module that supports getting configuration and operational data
from Cisco NSO.
2017-12-22 09:43:22 +00:00
0f32f01644 influxdb: new module influxdb_write (#33800) 2017-12-22 08:20:18 +01:00
2cb4a725b4 nmcli: Add 'type' as required param for few ops (#33796)
This fix adds user friendly message for 'type' argument.
The 'type' is a required param when performing 'create' or 'modify' operations
on network connection or device.

Fixes: #33680

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-22 02:07:50 -05:00
c97030cc44 cloudflare: fix CNAME not changed (#33939) 2017-12-22 08:00:35 +01:00
fcd3db27f9 Add comment on auto_import_key for .repo files in zypper_repository (#33941)
Fixes #32375
2017-12-22 01:05:47 -05:00
5a80375be9 Correct the AnsibleError exception to call its superclass's constructor 2017-12-21 20:42:44 -08:00
235bdfb996 Remove shell module specialcases
Shell is implemented via the command module.  There was a special case
in mod_args to do that.  Make shell into an action plugin to handle that
instead.

Also move the special case for the command nanny into a command module
action plugin.  This is more appropriate as we then do not have to send
a parameter that is only for the command module to every single module.
2017-12-21 20:42:44 -08:00
39800e1390 win_domain_group: added ability to specify AD server to interact with (#34166) 2017-12-22 11:06:22 +10:00
b811c907d8 Add aws_application_scaling_policy to changelog 2017-12-21 19:47:55 -05:00
8fba6e6684 [cloud] New module aws_scaling_policy (#31241)
* Add scaling_policy module

* Change exception format

* Rename scaling_policy module to aws_application_scaling_policy
2017-12-21 19:47:02 -05:00
18ea816a0e Rebalance Azure tests more.
ci_complete
2017-12-21 15:46:32 -08:00
5f77bdf623 Rebalance Azure tests. 2017-12-21 14:50:23 -08:00
fc4ab22f05 Add gr_name and pw_name in find module
The fix adds gr_name and pw_name in return output.
Integration test added.

Fixes: #25643

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-21 17:00:25 -05:00
58239671c0 Ucsm WWNN/WWPN pools (#34017)
* vhba template and integration test

* SAN Connectivity Policies and integration test

* VSANs and integration tests

* WWNN/WWPN Pools and integration test

* WWNN/WWPN Pools and integration test

* option description spelled out (aliased to descr)
removed docs for list of dictionaries syntax
follow ACI indent style
state absent only requires dn name match (not full prop match)
2017-12-21 21:34:13 +01:00
027f8dcafd Ucsm vsans (#34016)
* vhba template and integration test

* SAN Connectivity Policies and integration test

* VSANs and integration tests

* WWNN/WWPN Pools and integration test

* VSANs module and integration test

* removed docs for list of dictionaries syntax
follow ACI indent style
state absent only requires dn name match (not full prop match)
2017-12-21 21:30:10 +01:00
02894fb972 Ucsm vhba template (#34015)
* vhba template and integration test

* SAN Connectivity Policies and integration test

* VSANs and integration tests

* WWNN/WWPN Pools and integration test

* vHBA templates and integration test

* option description spelled out (aliased to descr)
removed docs for list of dictionaries syntax
follow ACI indent style
state absent only requires dn name match (not full prop match)
2017-12-21 21:27:07 +01:00
d80b873a69 UCS SAN Connectivity Policy module and integration test (#34009)
* vhba template and integration test

* SAN Connectivity Policies and integration test

* VSANs and integration tests

* WWNN/WWPN Pools and integration test

* SAN Connectivity Policies only

* option description spelled out (aliased to descr)
removed docs for list of dictionaries syntax
follow ACI indent style
state absent only requires dn name match (not full prop match)
2017-12-21 21:15:07 +01:00
57575d1cfa Fix tests as filters #4 (#33930)
* Resolve newly added tests as filters

* Add code smell to test for ansible provided jinja tests as filters syntax

* Add docs for no-tests-as-filters code smell test

* Address tests as filters in new integration tests

* Address feedback

* Address feedback 2
2017-12-21 13:42:53 -06:00
Rob
2616f9d713 [cloud] Add encryption support to efs module (#32815)
* Add encryption support to efs module

* Update the exception handling in AWS EFS module
2017-12-21 13:51:46 -05:00
f0cf1b35d5 [ec2_asg_facts] Add exception handling to describing the target groups in case they are in the process of being deleted. (#33997) 2017-12-21 13:48:23 -05:00
ae5c370737 Fail hard when tests pass that are expected to fail
`@pytest.mark.xfail()` can be used to decorate tests that don't yet
pass. By default, if I wrote a test like this:

```
@pytest.mark.xfail()
def test_naughty():
    assert 1 == 1
```

Then Pytest would allow this test to pass without notifying that an
expected-fail *didn't* fail. To make that happen, you have to set
xfail_strict=True so that the above test would cause the tests to fail.
2017-12-21 10:27:38 -08:00
cc6331f155 ec2_asg: remove AWSRetry from function with many boto calls (#32512)
* Remove AWSRetry.backoff decorator from function with many boto calls.

* Use retries to describe autoscaling groups
2017-12-21 12:37:22 -05:00
a0c171ce1b fix command warnings, add action warnings (#34060)
* fix command warnings, add action warnings
2017-12-21 08:35:32 -08:00
94d952f94b Documentation on how to make a release. (#31426)
* Release Engineering Docs with pointer to the Docs on how to actually make the release.
2017-12-21 08:14:49 -08:00
ebd096a732 Add C and U metrics to oVirt provider (#34138)
Adds the path parameter to allow configuration of C&U metrics
on the oVirt provider. Expands example to match.
2017-12-21 08:57:22 -05:00
459adf8966 ios_static_route: fix broken import (#34133)
* Fix broken import

* doc: add ipaddress in requirements
2017-12-21 17:12:19 +05:30
7b260eaafe add azure_rm_image to change log (#34131)
* add azure_rm_image to change log

* update
2017-12-21 20:43:49 +10:00
f8f34c7bab Moved generated module RSTs to their own directory. (#33966)
* Moved generated module RSTs to their own directory.

* WIP commit - fixed conflict with conf.py exclude_patterns by renaming module RST output directory to 'module_docs'.

* Added new directory to formatter module links; aded new module directory to makefile clean.

* Removed illegal comment from block.
2017-12-21 01:47:39 -08:00
60f3649ebd Convert nxos_vlan to DI module (#31866)
* Convert nxos_vlan to DI

* fix conflict

* push fix for qalthos's comment

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-12-21 14:08:33 +05:30
8b15b93d01 Change incorrect items: to loop: in tests. 2017-12-21 00:33:16 -08:00
853fa8223a avoid use of Write-Host in config script 2017-12-20 22:51:16 -08:00
276f7122cd influxdb: default hostname to localhost (#34117) 2017-12-21 07:04:45 +01:00
a067575cab influxdb: new module influxdb_query (#33801) 2017-12-21 07:03:27 +01:00
dc1b8e9a31 Fix #33114: vmss has parameter load balancer (#33223)
* vmss has parameter load balancer

* fix lint

* fix indent

* fix as pull request comment

* fix yaml
2017-12-21 00:13:09 -05:00
5089122a32 Encode xml data to utf8 standard (#34079) 2017-12-21 10:10:18 +05:30
898eead48f add GlobalHttpFirewallAccess arg (#34124) 2017-12-20 20:36:26 -08:00
9e09a9ea61 Turns out the order is important (#34116) 2017-12-21 09:26:30 +05:30
606540c15d Fix typo in haproxy.py doc string (#31310) 2017-12-20 22:46:54 -05:00
fd03223227 Updated documentation description (#34121)
The description for this plugin was referencing Foreman rather than Logstash.
2017-12-21 13:44:54 +10:00
070ea3270c add usage example for the assertonly provider (#34092) 2017-12-21 13:38:15 +10:00
87c98336d6 Fix module names for bot (#34089) 2017-12-21 13:37:21 +10:00
34f47d5e88 Fixes url to no longer redirect (#34118) 2017-12-20 16:30:34 -08:00
737920cd89 YAML inventory unit test: add tests
Relates: #33878
2017-12-20 16:59:53 -05:00
35a4fe8546 YAML inventory unit test: add tests 2017-12-20 16:59:53 -05:00
8dff0b091e Fix YAML inventory unit test 2017-12-20 16:59:53 -05:00
4d6c28f8c3 #30142:Enable attach data disk to existing VM or detach it from VM (#32711)
* disk can be mounted to vm

* add version added

* fix lint

* Fix some mirrors

* fix lint

* remove trailing space

* fix as review comment

* fix yaml

* fix

* fix

* Minor update to doc on unmounting disk from VM
2017-12-21 07:53:14 +10:00
8c6d823963 simpler loop_control defaults (#34008) 2017-12-21 07:28:38 +10:00
76590ab8a5 azure_rm_virtualmachine_scaleset: ported PR#32367 (add custom image support) (#33422) 2017-12-21 07:17:57 +10:00
37ce7ef0db Add azure image module support create and delete (#32589)
* Add azure image module support create and delete

* Add os_type description

* fix lint

* fix lint

* fix lint

* fix line ending

* add enum_modules for serialize

* update for python3

* Fix mirror

* fix lint

* fix as pr comments

* fix name

* fix syntax

* fix

* none check

* fix test

* fix syntax

* fix example

* return only id in the top level

* doc

* doc

* fix

* fix test
2017-12-21 07:05:36 +10:00
0c7c30b47a changelog: add new vultr modules 2017-12-20 21:15:57 +01:00
bee26f214b botmeta: maintain vultr modules 2017-12-20 21:15:57 +01:00
d877c146ab [cloud] ec2_group fix CIDR with host bits set - fixes #25403 (#29605)
* WIP adds network subnetting functions

* adds functions to convert between netmask and masklen
* adds functions to verify netmask and masklen
* adds function to dtermine network and subnet from address / mask pair

* network_common: add a function to get the first 48 bits in a IPv6 address.

ec2_group: only use network bits of a CIDR.

* Add tests for CIDRs with host bits set.

* ec2_group: add warning if CIDR isn't the networking address.

* Fix pep8.

* Improve wording.

* fix import for network utils

* Update tests to use pytest instead of unittest

* add test for to_ipv6_network()

* Fix PEP8
2017-12-20 14:57:47 -05:00
5f215337c9 Swap how become is specified for ios integration tests (#34107) 2017-12-20 14:05:16 -05:00
427479ae48 remove andyhky from maintainers (#34096)
* remove andyhky from maintainers

I'm no longer able to contribute to ansible.

* Explicitly ignore andyhky for modules with that user as an author
2017-12-20 12:48:41 -06:00
4086cb4b25 Added support for Cisco stacks in ios_facts.py (#33714) 2017-12-20 12:33:47 -05:00
2e76c89910 IOS XR cli tests move to network_cli (#34007)
* Update task definitions for network_cli

* Add connection to debug messages

* Specify connection for prepare task

* pc won't be around for connection=network_cli

* Assorted Python 3 fixes

* Give default port if ansible_ssh_port missing

* delegate -> connection

* Extend error regex
2017-12-20 11:26:09 -05:00
5db9ac23ee freeipa: Refactor ipa_dnszone (#34078)
Code refactoring of ipa_dnszone module
- use ipa_argument_spec
- use common documentation fragment

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-20 21:29:52 +05:30
c50da48049 Fix various RST warnings (#34084)
* Fix various RST warnings

* shorter lines
2017-12-20 15:20:05 +00:00
20174f1c47 Suggest using replace module rather than command sed (#34085)
* Suggest using replace module rather than command sed

* Better order
2017-12-20 10:00:32 -05:00
339278fa15 Add new module aws_direct_connect_gateway to CHANGELOG 2017-12-20 09:57:55 -05:00
fd2150f9fa Typo fix (#34088) 2017-12-20 14:53:17 +00:00
4713d9ea44 ce_file_copy: fix broken import (#34023)
* fix broken import

* doc: use formatting functions
2017-12-20 14:44:01 +00:00
663f8464ee eos_linkagg DI module (#33007)
* eos_linkagg DI module

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

* integration test

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

* pep8 fixes

* Push fix for Qalthos's comment

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-12-20 19:43:30 +05:30
cb1b705218 ios integration tests to network_cli (#33920)
* Preliminary steps

* Fix Python3 network_cli ios

* Add connection to debug strings

* Fix ios confirm prompt by way of optional newline

Also update ios_user delete tests
2017-12-20 09:03:29 -05:00
8d5c8b252d VMware: Add support for cpuHotRemoveEnabled (#33962)
This fix adds support for cpuHotRemoveEnabled in vmware_guest module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-20 19:15:55 +05:30
c3952e928f changelog: add new module win_disk_facts (#34087) 2017-12-20 14:19:40 +01:00
09edb032d3 vultr: new module vr_firewall_rule (#32637)
* vultr: new module vr_firewall_rule

* vr_firewall_rule: fix typo

* fix styles
2017-12-20 13:42:21 +01:00
acfa8d8b75 vultr: new module vr_ssh_key (#30961) 2017-12-20 13:41:33 +01:00
73ddecd819 vultr: new module vr_firewall_group (#30960) 2017-12-20 13:41:07 +01:00
cfd7325ac4 vultr: new module vr_server (#30869)
* vultr: new module vr_server

* minor restyling

* fix method name
2017-12-20 13:40:33 +01:00
b3ff93e129 Added new module win_disk_facts (#32935)
* Added module new win_disk_facts

* Corrected examples section

* Added integration tests

* Added some disk properties

* Removed whitspaces

* Extended docu

* Changed header

* Added partition, volume and physical disk output

* Removed MediaType property of phys. disk

* Added return values

Added virtual disk, volume and physical disk output

* Added docu for return values

* Removed whitespaces

* Improved and added values

- Added virtual disk return values
- Improved code

* Updated docu

* Removed whitespaces

* Removed check

* Improved code and docu

* Changed integration test

* Changed integration test

* Changed integration test

* Changed integration test

* corrected typo

* Added admin test because CIM is not available with user rights

* Changed unit prefix from decimal to binary
2017-12-20 21:53:19 +10:00
4a4da2b774 nxos_static_route DI module (#33797)
* nxos_static_route DI module

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

* add version_added
2017-12-20 17:08:29 +05:30
7381554e42 Compact documentation (#34081)
Before this fix lists of `documentation:` were in individual <p> tags
causing a lot of whitespace on the rendered _module.html pages.
2017-12-20 20:49:09 +10:00
0880297909 fix options output for bool type (#34074) 2017-12-20 09:48:17 +00:00
78a14d7966 Cliconf and Netconf refactoring iosxr_interface (#33909)
* Cliconf and Netconf refactoring iosxr_interface

* adds `xml` key and related changes for netconf output

* * review comments changes
2017-12-20 13:06:07 +05:30
8a9865cb10 Fix for dns4 empty setting (#30757)
This fix check if DNS4 is None or not before proceeding with
other operations. Also, added unit test for this change.

Signed-off-by: Fedor Sumkin <qosys.net@gmail.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-20 12:48:22 +05:30
f7fe6a065e VMware: Allow users to specify port for ESXi (#34073)
This fix adds 'port' as module parameter in VMware modules,
which allows user to specify vCenter or ESXi server port number for
admin connection.

Fixes: #34070

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-20 11:53:22 +05:30
be89822bb5 Deprecate nxos_portchannel and add nxos_linkagg DI module (#33376)
* deprecate nxos_portchannel

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

* Add nxos_linkagg DI module

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

* remove nxos_portchannel unit test

* fix syntax issues

* fix ansible-doc failure

* update nxos_portchannel unittest

* minor fixes and integration test

* update nxos_linkagg
2017-12-20 11:26:07 +05:30
3cce8dfafd Deprecate nxos_ip_interface and Add nxos_l3_interface DI module (#33866)
* Deprecate nxos_ip_interface module

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

* Add nxos_l3_interface DI module

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

* Add integration test

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

* pep8 fixes

* Add nxapi cli test

* Improve complexity

* manage layer3 interface

* fix unit test
2017-12-20 11:07:23 +05:30
27be2a0f5a Handle nxos platform diffs with cli conf implementation (#34020)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-12-20 10:41:10 +05:30
2db3d861e0 lookup templated value of a var (#32772)
* lookup templated value of a var
* better dupe loop detection
* corrected invalid test loops
2017-12-19 22:41:50 -06:00
bc91258124 apt_get: add warning for force_apt_get (#33994)
This fix adds strict check for package manager binary checking in given
path.

Fixes: #32940

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-19 22:39:15 -06:00
51315c498d Add intg tests for some of the issues in 32302 (#32360)
Verify that set_fact's var_prec is correct and that
regular facts var_prec is correct (ie, that play_vars
can override them)
2017-12-19 22:34:05 -06:00
dc86f6f6d5 Easier to debug (#30675) 2017-12-19 22:33:11 -06:00
2e1c889275 Have command nanny tell you how to disable the warning (#34061)
* Have command nanny tell you how to disable the warning
2017-12-19 17:30:10 -08:00
790c06c079 changelog: add new modules (#34059)
* changelog: add new modules

* remove false postive new modules
2017-12-19 20:05:50 -05:00
cc7a5228b0 Deprecate check_invalid_arguments (#34004)
* Deprecate check_invalid_arguments

Check_invalid_arguments is a piece of functionality from the early days
of Ansible that should not be used.  We'll remove it in Ansible 2.9.
Deprecating it for now.
2017-12-19 14:36:02 -08:00
7bc754674c [template/vars] Use to_native(exception) as a fallback for Python 3 which doesn't have a .message attribute (#34044) 2017-12-19 17:34:46 -05:00
b06f7688cd Fix a unicodeerror so that we get the correct error message (#34058)
Fixes #33044
2017-12-19 16:26:30 -06:00
e2de3c9776 [cloud] New module - AWS Direct Connect Gateway (#33890)
* Adding module for AWS Direct Connect Gateway

* Fixes for failing checks

* Fix errors for shippable checks

* Fix pep8 errors

* Fixes from review comments

* Simplify logic and add exception handling for every boto3 call

* Fix undefined variable
2017-12-19 17:22:18 -05:00
b5c0141fb0 Use hostname in group_by_aws_account to prevent duplicates. (#34053)
Fix typo. The use of `dest` for group_by_aws_account causes the group to be produced using IP and to duplicate the hosts in the inventory.

Fixes #23772

Signed-off-by: bo <robert@jbanetwork.com>
2017-12-19 17:04:46 -05:00
bf8d695ec3 [ec2_vpc_peer] Remove use of DryRun since the module doesn't support check mode (#34062) 2017-12-19 16:42:26 -05:00
1a59247f27 K8s raw modules (#34050)
* New dirs, raw modules, and deprecations, 'openshift' not 'oc'
2017-12-19 15:25:33 -06:00
fcc79de246 Add support for intra-region VPC peering (#34036)
* [ec2_vpc_peer] Add support for intra-region VPC peering
2017-12-19 16:05:14 -05:00
513c75079e Port eos tests to network_cli (#33586)
* Add eos and fix tests to run multiple connections

* Update tests to report connection

* Add missing START messages

* Fix unspecified connection

* Python 3 updates

Exceptions don't have `.message` in Python 3

* Override `become` when using `connection=local`

* Slight restructuring to make eapi easier later on

* Move eapi toggle to prepare_eos
* Pull out connection on eapi tasks
2017-12-19 15:49:49 -05:00
f64b276f6a Add option allowing the user to specify a custom cowpath
This allows the user to use custom cowsay implementations without shadowing common cowsay paths
2017-12-19 15:39:38 -05:00
96335b12bb Fixes some verbiage in the f5 docs (#34057) 2017-12-19 12:33:55 -08:00
120af786af Remove params option from examples 2017-12-19 12:04:14 -08:00
168fb07cba influxdb: make param database_name uncommon (#34021) 2017-12-19 20:51:07 +01:00
b385e3d725 Add support for adding CORS to S3 bucket on AWS - fixes #29238 (#22284)
* Add aws_s3_cors module for adding/removing CORS to S3 bucket on AWS

Based on code found here but fixes some of the mentioned issues.

https://github.com/ansible/ansible-modules-extras/pull/1177/files
2017-12-19 14:23:51 -05:00
ded4e6ac0f Ios config save (#33885)
* Fixing save so it still works. Adding changed as an option for save_when.

* Updating description to state that changed was added in 2.5.

* Fixing removal version for deprecated options.
2017-12-19 18:04:21 +00:00
73a003aa50 added slice filter for dicts
also minor exception optimization
2017-12-19 12:54:10 -05:00
107934241e gcdns_record: fix broken import (#34024) 2017-12-19 12:31:35 -05:00
1df57ac1ac Add mlnxos_interface module (#33839)
* Add new module: mlnxos_interface for configuring mlnxos ethernet
interfaces

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

* Update mlnxos.py

* Fix Documentation

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

* Add missing documentation

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-19 17:24:42 +00:00
bedb864bcb Add aws_account_attribute lookup to changelog 2017-12-19 12:21:44 -05:00
58adf1750e [cloud] New a lookup plugin for AWS account attributes (#33025)
* Add a lookup plugin for AWS account attributes

* PEP8

* Use config system instead of hard coding logic for environment variables

* simplify logic

* Return a flattened dict to make using easier

* Reformat return example
2017-12-19 12:20:19 -05:00
a3d65056db Fixed typo on git module doc (#34039) 2017-12-19 17:44:06 +01:00
378636078a use print function (#34013) 2017-12-19 09:31:30 -06:00
a73af903b8 Add maintainers for k8s_common, k8s and openshift (#34018) 2017-12-19 08:16:25 -06:00
d668281a6b Added docs fragment for proxysql (#32502)
* Added docs fragment for proxysql

* Added formatting for option names, and bool types

* Updated proxysql modules to use doc fragments
2017-12-19 12:12:19 +00:00
e693d7e37c New module: manage 1&1 cloud compute (cloud/oneandone/oneandone_server) (#24878)
* Added oneandone provider cloud server module.

* Updated comments, idempotency, handling of multiple resources.

* Added check mode support.

* fix validation errors
2017-12-19 11:31:39 +00:00
35c6b17a14 playbook_loops.rst: fix formatting (#34026) 2017-12-19 11:26:05 +00:00
9f86b923e9 [CLI_CONF] Refactor nxos module common library to use cliconf plugin (#31524)
* refactor nxos modules

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

* get_config update

* fix get_config

* update nxos module

* device_info

* fix conflict

* add failure message check

* pep8 fixes

* use get_capabilities to check cliconf

* Add logic to detect platform in get_capabilities and cache in module_utils

* return msg in edit_config

* fix conflicts

* make modules compatible

* fix nxos cliconf api

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

* cache capabilities

* Update transport queries to get_capabilities in module level

* fix unit tests

* load_config error code

* remove unnecessary change

* Refactor nxos_install_os module
2017-12-19 12:22:33 +05:30
bd399ec674 Adds single, non-generated OpenShift module (#33645)
* Adds single, non-generated openshift module

* Adds kubernetes doc fragment

* Clarify docs
2017-12-18 20:04:50 -05:00
ead5b1d024 Adds single, non-generated K8s module (#33517)
* Adds k8s.py

* Two module approach to support overlapping objects

* Clarify docs

* Clary state and force parameters

* Updates examples

* Add description and display_name

* Fix linting issues
2017-12-18 20:04:35 -05:00
d629a5ece2 Refactors common code for new K8s and OpenShift modules (#33646)
* Refactors common code for new k8s and openshift modules

* Move Ansible module helper code from OpenShift client
2017-12-18 20:03:44 -05:00
92e52ef515 winrm: attempting to get kerb auth to work on MacOS (#33795)
* winrm: attempting to get kerb auth to work on MacOS

* moved to use pexpect if possible as it is simpler

* Made the pexpect event more lenient around different localisations
2017-12-18 18:49:21 -05:00
b25e333076 icinga2_host: Don't set template attribute on modification, it's not permitted (#33989) 2017-12-18 16:40:56 -05:00
3af028fdd7 Fixed up changelog around get_md5 deprecation 2017-12-19 07:30:16 +10:00
b94630a081 AnsibleModule.get_file_attributes: add unit test 2017-12-18 15:49:25 -05:00
2a0cb20a1f win_get_url: Changed basic auth from NetworkCredential to Base64 (#32389)
* Changed basic auth from NetworkCredential to Base64

* Added force_basic_auth parameter to win_get_url module

force_basic_auth provides user with option to control which mechanism to use

Updated win_get_url.py documentation section

* Add missing version_added in win_get_url.py

* minor update for documentation
2017-12-19 06:38:44 +10:00
370a7ace4b Split basic units (#33510)
Split the one monolithic test for basic.py into several files

* Split test_basic.py along categories.
  This is preliminary to get a handle on things.  Eventually we may want
  to further split it so each file is only testing a single function.
* Cleanup unused imports from splitting test_basic.py
* Port atomic_move test to pytest.
  Working on getting rid of need to maintain procenv
* Split a test of symbolic_mode_to_octal to follow unittest best practices
  Each test should only invoke the function under test once
* Port test_argument_spec to pytest.
* Fix suboptions failure
2017-12-18 10:17:13 -08:00
ba32827f3b Cleanup route53_zone examples (#34000) 2017-12-18 12:43:15 -05:00
b34d150bec Use hostgroup_find(all=True) returns member hosts of all hostgroups in a single call (#29106) 2017-12-18 12:28:19 -05:00
2cdbde524b route53_zone: fix the private zone creation example (#33995)
Creating a private hosted zone requires both `vpc_id` as well as `vpc_region`
2017-12-18 12:02:53 -05:00
423b5e475e update ec2_vpc_net return values in docs (#33902) 2017-12-18 09:29:29 -05:00
4e85cdc712 ovirt: Set no_log for storage connections (#33987) 2017-12-18 06:07:23 -05:00
a724b8e722 openssl_certificate: Return self.cert.get_VALUES() (#33970)
Currently when we make up the return value, we take values based of the
parameters rather than the generated openssl_certificate itself.

This commits returns the actual certificate values making it all time
accurate.
2017-12-18 14:34:34 +05:30
a2810f44a8 Fixed up windows command quoting example 2017-12-18 06:26:04 +10:00
5f29cd5e60 Add validation test for new copyright (#32919)
* Update validation test for new copyright

Ensure new modules without the new copyright header fail
validation
Ensure existing modules without copyright in top 20 lines fail

* Add documentation of 108 error

Create label in developing modules documentation so that
the validation page can point to it

* Ensure new style copyright header passes test!
2017-12-16 09:23:54 -08:00
a130549ead NXOS Commit Integration tests to Ansible (part 2) (#28939)
* add nxos_aaa_server IT

* add nxos_aaa_server_host ITs

* Add nxos_gir IT

* Add nxos_gir_profile_management IT

* add newly added tests to nxos.yaml

* fix nxos.yaml indentation

* fix indentation again

* skip nxos_git_profile_management IT for titanium

* change idempotency to non-idempotency check
2017-12-16 09:41:49 +05:30
571f878817 file: Mention that src supports state=hard (#31697) 2017-12-15 17:17:34 -06:00
441dc369ba py3 compatibility: convert bytes to str (#33206)
Fixes #31723
In python3, ansible's fetch_url utility function wraps urllib.request.urlopen.
For HTTP and HTTPS URLs, this function returns a http.client.HTTPResponse object slightly modified.
Calling .read() on an HTTPResponse object returns bytes (note the docstring fix).

Here, to_native is used to convert the bytestrings returned by fetch_url into unicode strings.
This is necessary because:
  1. Pre python3.6, json.loads requires passing a string, not a bytestring, as its argument
  2. In python3 generally, testing if a string is a substring of a bytestring
     using the 'in' operator will raise a TypeError

see:
- https://docs.python.org/3/library/urllib.request.html#urllib.request.urlopen
- https://docs.python.org/3/library/http.client.html#http.client.HTTPResponse.read
- https://docs.python.org/3/library/json.html#json.loads
2017-12-15 16:17:15 -06:00
b9bc64c7f9 Adding param "rule_num" for insert action to iptables module (#33708)
* Added rule_num parameter for insert action in iptables module
2017-12-15 16:08:40 -06:00
85871da03d consul_acl: fix broken import (#33729) 2017-12-15 16:06:11 -06:00
87c75b19dd dont warn on not matching 'all' (#32806)
* dont warn on not matching 'all'

the implicit localhost warning shoudl be enough

* centralized no hosts handling

also extended info on implicit only
2017-12-15 15:43:51 -05:00
2f2f118665 python_3_support.rst: fix broken links (#33951)
The links pointing to 'Building From Source' and 'Inventory' were not
valid, so I updated them to point to locations that seemed
appropriate.

Signed-off-by: Micah Abbott <miabbott@redhat.com>
2017-12-15 20:04:53 +00:00
2b7799f817 added flatten filter (#33102)
* added flatten filter
2017-12-15 14:40:02 -05:00
c2ac9d0831 fix file attributes changed detection
https://docs.python.org/2/library/stdtypes.html#str.split
str.split([sep[, maxsplit]])
If sep is given, consecutive delimiters are not grouped together and are deemed
to delimit empty strings.

>>> "85563      ----------------C-- /var/lib/libvirt/images".split(' ')[0:2]
['85563', '']
>>> "85563      ----------------C-- /var/lib/libvirt/images".split()[0:2]
['85563', '----------------C--']
2017-12-15 09:48:18 -08:00
82cd5ffa1d [aws modules] use ec2_url in a few places it was missing (#33954) 2017-12-15 12:06:24 -05:00
d59bba4652 Fixes prompt doubling issue that impacted missing ios enable password prompts. (#33794)
* Fixes a prompt doubling issue that impacted missing ios enable password prompts.

Due to get_prompt sending a '\n' the prompts became doubled and out-of-sync with what
was expected.  This caused the enable command prompts to be missed.
Also added verification that on_become succeeded to reach enable prompt.

* Moved prompt doubling comment per shippable
2017-12-15 11:31:28 -05:00
3c0a84349b [module] find: Add ability to exclude results by pattern. (#18949) 2017-12-15 09:27:34 -07:00
f71bbdfed5 Fix vyos sending 'None' to device (#33889)
* Fix vyos sending `'None'` to device

* Move bytes handling into common cliconf code
2017-12-15 11:20:53 -05:00
22001797a8 Remove slashes from instructions to avoid confusion 2017-12-15 17:19:04 +01:00
3db8b75f35 Remove slashes from instructions to avoid confusion 2017-12-15 17:18:31 +01:00
08d55a7dbc Add brunocalogero to the ACI team 2017-12-15 17:16:05 +01:00
dd9ed09fa6 Revert to stable vcsim docker image. (#33952)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 21:32:22 +05:30
5fdb39c4d1 nso_verify for Cisco NSO (#33945)
Module for verifying that configuration is as expected in Cisco NSO.
2017-12-15 13:43:07 +00:00
866d7fdce9 [cloud] Create ECS integration test suite (#33757)
Tests for:
* ecs_cluster
* ecs_service
* ecs_service_facts
* ecs_taskdefinition
* ecs_taskdefinition_facts

* Add idempotency testing

Test ecs_cluster, ecs_service and ecs_taskdefinition for trivial
idempotency. Add FIXMEs to the tests because the latter two fail.

Remove unused dependencies
2017-12-15 08:15:01 -05:00
b5318e2c34 VMware: Add NIC configuration option (#33851)
This fix adds following configurable parameters to virtual network card
of virtual machine.
* WakeOnLanEnabled
* StartConnected
* AllowGuestControl

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 17:54:52 +05:30
b2bc98c161 nso_action for Cisco NSO (#32781)
nso_action module for execution actions/RPCs in NSO.
2017-12-15 11:29:04 +00:00
29d3505cb4 VMware: check for ESXi server while creating user (#33061)
This fix check for ESXi server instance before proceeding
with managing local user. Also, adds integration tests for
this change.

Fixes: #32465

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 16:26:19 +05:30
31510259f6 VMware: Refactor vmware_portgroup (#33703)
Fix adds following:
* Documentation update
* Idempotency
* Remove Portgroup functionality

Fixes: #33666

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 05:14:05 -05:00
2f932d8767 Add parent pid to persistent connection socket path hash (#33518)
* Add parent pid to persistent connection socket path hash

Fixes #33192

*  Add parent pid in persistent connection socket path hash
   to avoid using same socket path for multiple simultaneous
   connection to same remote host.

* Ensure unique persistent socket path for each ansible-playbook run

* Fix CI failures
2017-12-15 10:21:56 +05:30
08a2338277 Add idempotency in snapshot creation (#28466)
Fix adds idempotent behavior while creating snapshot

Fixes: #24511

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 08:34:39 +05:30
36f82ae8cc Replace exit() with sys.exit()
This fix adds replacement for exit() to sys.exit(), as
exit() is not recommended way to exit from the program.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-14 22:03:08 -05:00
0ca828ebab win_iis_webapppool: stop any passwords from being returned (#33931) 2017-12-15 09:50:44 +10:00
cae14e16ac Port ec2_vpc_net to boto3 and add support to expand existing VPCs - fixes #31216 (#33105)
* Port ec2_vpc_net to boto3 and add support to expand existing VPCs

* Add s-hertel as an author for ec2_vpc_net

* Update ec2_vpc_net test for new error triggered by lack of credentials

Fix backwards compatibility

Document new return value

* Fix pep8 and return documentation
2017-12-15 09:41:03 +10:00
465ace4c14 else was wrong 2017-12-14 17:38:39 -05:00
0eb426bb9e HipChat API v2 support for ansible callback plugin (#33882)
* hipchat API v2 support for callback plugin.

* hipchat API v2 support for callback plugin.

* Migrated to new way of handling plugin config.
2017-12-14 17:30:31 -05:00
22059cbe67 Adds bigip_device_httpd module (#33924)
this module can be used to adjust the details of the server that
hosts the BIG-IP web ui.
2017-12-14 14:16:28 -08:00
0b9f1f7982 Handle vault filenames with nonascii chars when displaying messages. Fixes #33879 (#33926) 2017-12-14 16:02:25 -06:00
ff4eb94a04 accept variants of returned json mime type (#33894) 2017-12-14 15:54:59 -06:00
ddc3465408 [cloud] Remove repeated error handling and region checking, both now in boto3_conn (#32774)
* Remove boto usage from boto3 modules

* Remove region checking

boto3_conn now takes care of region checking and handles NoRegionError
exceptions with a standard message

boto3_conn also takes care of other connection exceptions too.

* Document boto3 as a requirement for ec2_eni_facts
2017-12-14 16:16:59 -05:00
c52964a6f4 [cloud] support encryption on create S3 folder (#33854) 2017-12-14 16:10:42 -05:00
54e8e122bf fix doc fragments (#33892)
* fix doc fragments

fixes #33864

* pop it
2017-12-14 16:06:47 -05:00
ff923fb6b0 Add scan_new_hosts feature in ansible foreman inventory (#33743) 2017-12-14 15:10:42 -05:00
c421878523 [cloud] Return id of ENI in addition to network_interface_id for ec2_eni_facts (#33814)
* Return id of ENI in addition to network_interface_id. To be compatible to ec2_eni.

* Added documentation for the return values of the ec2_eni_facts module

* Fix typo in docs for ec2_eni_facts
2017-12-14 15:02:06 -05:00
82949f6e6f lookup hashi_vault: Add Vault App role in auth_method (#22403)
Provide Vault App role method to the lookup.

https://www.vaultproject.io/docs/auth/approle.html

Usage :

`{{ lookup('hashi_vault', 'secret=secret/hello:value auth_method=approle role_id=myroleid secret_id=mysecretid url=http://myvault:8200')}}`

You can skip `role_id` and `secret_id` if you set `VAULT_ROLE_ID` and `VAULT_SECRET_ID` environment variables.
2017-12-14 13:25:05 -06:00
6cb388a98a New Module: package_facts (#33195)
* new package_facts module

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>

* remove package_facts pkg manager aliases, they are misleading

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>

* fix package_facts tests now that aliases are dropped

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-12-14 13:47:47 -05:00
d1cf9cfeb6 Connection and MAC pool module for Cisco UCS (#31151)
* Initial commit for UcsConnection and ucs_macpool module.
Configures MAC address pools on UCS Manager.

* ansible-doc fixes

* PEP8 fixes

* pep8, pylint, and validate-modules fixes

* Correct indent issue introduced during pycodestyle cleanup

* Simplified module arugment setup.
Placed all code in main to avoid multiple calls and arg passing.

* module_utils/ucs changed to UCSModule which now handles login/logout directly
login_handle removed from module.params
doc updates on mac_list params and change to first_addr/last_addr for mac blocks
checking of all mac params

* Move module_utils to remote_management/ucs
Fix validate-modules issue with docs

* UCS MAC pool integration tests
Fixed issues with MAC pool descr and address range params
2017-12-14 19:38:35 +01:00
67c83823f2 Add q/query aliases to lookup (#33466)
* Add L alias to lookup, defaults to real list
* renamed to q/query as per core meeting
* also force wantlist=true
2017-12-14 11:53:00 -06:00
f127e5d535 Fix a few docs build issues (#33685)
Noticed when doing `make webdocs`
2017-12-14 17:33:27 +00:00
6995985a52 Pass in '**results' to exit_json only if results is a dict (#33910) 2017-12-14 10:59:56 -05:00
11063dabaf fixed version_added, update clog 2017-12-14 10:41:46 -05:00
1a7c096954 new redis lookup (#33883)
* new redis lookup

deprecated redis_kv

* typo fix
2017-12-14 10:35:46 -05:00
67a8ff47aa Promote get_prompt to live in network_cli instead of cliconf (#33880)
This removes the immediate need for a cliconf plugin to use network_cli
2017-12-14 09:51:41 -05:00
5578193ae4 Block markers in blockinfile no longer hard coded (#31787)
* Block markers in blockinfile no longer hard coded
2017-12-14 08:24:14 -06:00
7a5ea9cae4 Included ansible_distribution_major_version #29561 (#31754)
Included ansible_distribution_major_version according with
issue #29561
2017-12-14 08:22:48 -06:00
4391f5c094 VMware: Handle No Permission exception while clone (#33806)
This fix adds exception handling for No Permission exception
raised while clone operation.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-14 19:13:23 +05:30
a09fd80bba VMware: fix vmPathName on VM creation (#33315)
* VMware: fix vmPathName on VM creation
* vmware_guest: enable unit tests disk_type_d1_c1_f0
2017-12-14 18:41:09 +05:30
137498bff1 cloud:ovirt:ovirt_storage_domains.py: Allow not passing dc_name parameter (#33377)
When state == absent we can skpi dc_name parameter.
This patch introduces same functionality for other states.
2017-12-14 07:53:42 -05:00
5a4fd97955 Added 'quota' parameter and 'description' parameter to ovirt_disk module (#33860)
* Added 'quota' field and 'description' field to ovirt_disk module

* ovirt_disk: fixed example

* quota => quota_id and other improvement
2017-12-14 07:53:16 -05:00
f8e3cfe9e2 Aruba indenting (#33884)
* Fixing aruba's inconsitent indenting.

* Adding config with different children indentation and unit test to confirm the different spacing does not matter.

* Fixing pylint check. Missed an r prefix.
2017-12-14 14:37:34 +05:30
53abf45cec Add delay in junos integration test after netconf is enabled (#33899)
junos integration test fails intermittently after task enables netconf
 on the remote host and the second task tries to create a persistent
 connection. Add a delay after the first task to ensure netconf is up
 running on remote host.
2017-12-14 13:48:09 +05:30
6f77a32b13 Run RHEL tests on Azure in 3 groups. 2017-12-13 23:21:05 -08:00
7bb55bdc2b Added icinga2_host module (#31720)
* Added icinga2_host module

* Fix build error

* trailing spaces and other errors from ansible build process

* Formating

* docu errors

* last spacing; import module

* fix imports

*  Removed request lib for ansible.module_utils.urls

* small whitespace fixes

* Remove typo

* Fix docu

* icinga2_hosts to icinga2_host in naming

* Update example
Fix Dewotine error when delete a none existing host

* Fixes docu problems

* White spaces

* small text improvements

* Remove force argument from module and docu

* Set author correct ( and hopefull the maintainer )

* Minor formatting changes
2017-12-14 07:38:22 +01:00
490dc40203 Fix DO_API_KEY environment variable check (#33512)
`os.environ['DO_API_TOKEN']` raised a `KeyError` preventing the check
for `os.environ['DO_API_KEY]` from being executed. Fix this by failing
only if the api token isn't set.
2017-12-14 00:07:45 -05:00
be5d68f3ad add support for other scms to pull (#33152)
* add support for other scms to pull

* show choices for scms module in help
2017-12-13 22:16:54 -05:00
3b941802ac ACI ENCAP POOL RANGES: Add new module to support encap ranges (#33758)
* ACI ENCAP POOL RANGES: Add new module to support encap ranges

* fix module name

* remove extra format string
2017-12-14 00:35:50 +01:00
afa82be019 make become prompt method agnostic (#33789)
fixes #33747
2017-12-13 17:57:06 -05:00
ad94a3a6a2 fix reconcile to ensure 'ungrouped'
also removed redundant 'hosts to all' as all groups already ensure that inheritance
2017-12-13 17:29:01 -05:00
98260f9884 Fix pamd error when inserting a new rule at the end. Fixes #28487 (#28488)
* When inserting a new rule in `insert_after_rule`, check if the old rule is
the last rule, to avoid a list index out of range error when attempting to
access the next rule.
* Add a test for inserting a new rule after the last rule.
2017-12-13 15:31:20 -06:00
158b32cd7a user: Fix add for SuSE Linux Enterprise 11 (#27015) 2017-12-13 15:30:51 -06:00
7229eba569 use docker exec in case docker cp failed. (#26571) 2017-12-13 15:30:30 -06:00
890b97a38f Lenovo enos bugfixes (#33857)
* Bug Fixes to issues foubd during testing

* Removing blank line

* undefined-variable Undefined variable 'run_commands' and training new line

* Reverting and Modifying changes with both Unit test and Integrated test with Devices passing
2017-12-13 20:57:51 +00:00
15a58d498d [cloud] Improve snake <-> camel conversion for AWS utils (#31400)
Allow CamelCase version of snake_dict_to_camel_dict
(currently only dromedaryCase is supported)

Add reversible option to camel_dict_to_snake_dict

Add tests for both of these options
2017-12-13 15:13:26 -05:00
2425374fdd Actually move vyos tests to network_cli (#33710)
* Fix vyos on network_cli on python3

bytes do not have format() in Python3

* Push connection to tasks, with bonus connection=local test

* Run tests without explicit connection set

* Add/update START messages where appropriate
2017-12-13 14:30:24 -05:00
cfb15b0272 Revert "YAML inventory unit test: fix test inventory format (#33828)" (#33869)
This reverts commit dfb2f346d8.

https://github.com/ansible/ansible/pull/33828
2017-12-13 14:19:19 -05:00
2f67d3a4f3 facts: Fix duplicate IPs in ipv4_secondaries (#32040) 2017-12-13 14:05:20 -05:00
ae92426e72 fix ci, duplicate exception checking was merged in wait_for (my fault)
Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-12-13 09:53:39 -08:00
beef269d46 Update mount.py (#23906)
added noauto to dvd mount example, simply copy pasting + removed (virtual) optical disc will result in a non booting system (centos7)
2017-12-13 11:37:01 -06:00
50ceb8d7d8 wait_for: change file check to handle directories and sockets (#20979)
open(path) throws an error when called on a directory or UNIX socket,
and therefore a check to ensure that the path is absent will always
succeed when there is a directory or file located there.

This updates the check to use os.access(path, os.F_OK) instead, which
instead just checks that the path exists instead of trying to open it as
a file, and therefore properly handles directories and sockets.

This causes a slight semantic change in how permissions are handled.
The existing code will fail to work correctly if the user running the
module on the managed host has no read access to the path specified.
The new code will work correctly in that situation.
Both versions fail if the user can't traverse the parent directory.

I've also added a check to the try block to catch OSError. I've seen
this call fail with an OSError on rare occasion in the face of odd
extended permissions (usually MAC configuration) in cases where it
should technically return False. In such cases, the file is functionally
inaccessible to the user making the call, so it's essentially not there,
but it can't be created by them either. I've documented this, as well as
the fact that the bug this change fixes exists, and a rather nasty
inconsistency involving symbloic handling that I stumbled across while
testing this change.

Fixes: #20870
2017-12-13 11:10:19 -06:00
bf29cc79a6 Further clarify what determines batch size in a play (#33833) 2017-12-13 10:38:30 -06:00
29bed12cdd vmware_host: add reconnect and add_or_reconnect states (#30582)
* vmware_host: add reconnect and add_or_reconnect states

Add "reconnect" and "add_or_reconnect" choices for "state".

* reconnect: reconnect an esxi to a vcenter (imply it is present).
* add_or_reconnect: do the same but add the esxi if absent.

Also:
* tag the cluster_name as required (because it is).
* tag esxi_username and esxi_password as not required because
    they aren't when the esxi isn't added.

* vmware_host: add + prepare/document integration tests

vmware_host module

Add integration test for the add part of "add_or_reconnect" state.

Prepare and document integration tests for the reconnect part
of "add_or_reconnect" state and "reconnect" and "absent" states.

Currently we can't test those states as ReconnectHost_Task (for
"reconnect") and EnterMaintenanceMode_Task (for "absent") aren't
implemented yet in vcsim (from vmware/govmomi)
2017-12-13 11:13:12 -05:00
d08179593f Add a new option firstmatch to lineinfile module. (#33825)
* Add a new option firstmatch to lineinfile module.

* Add firstmatch option in DOCUMENTATION

* Fix indent

* Add version_added "2.5"
2017-12-13 09:49:44 -06:00
7654195716 Avoid people listing component in comment 2017-12-13 15:47:29 +00:00
e55efc547c [cloud] Bring return parameters for name/arn and subnet ID back to ec2_asg module (#33775)
* Readded vital return parameters to the ec2_asg that have been spared for no obvious reason

* Fix typo in ec2_asg docs

* Fixing another typo in ec2_asg docs.
2017-12-13 10:45:34 -05:00
dfb2f346d8 YAML inventory unit test: fix test inventory format (#33828)
* Fix YAML inventory unit test

* YAML inventory unit test: add checks

* YAML: add hosts without any group to ungrouped
2017-12-13 15:30:59 +00:00
7c187cae93 Fix playbook cli unit test (#33767)
* TestPlaybookCLI: '--flush-cache' were ignored

Check that using '--flush-cache' does something

* check that '_flush_cache' does something

There isn't any fact by default: the assertion was true even if
'cli._flush_cache()' isn't called.
2017-12-13 15:03:06 +00:00
3a9083cf48 ios_config save (#33791)
* Fixing save so it still works. Adding changed as an option for save_when.

* Updating unit tests.

* Updating description to state that changed was added in 2.5.
2017-12-13 07:36:43 -07:00
492d777ad7 imc_rest: fail when requirement is missing (#33750) 2017-12-13 13:54:38 +00:00
02e965ba20 maven_artifact: fix broken import (#33749)
* Fail when lxml isn't available

* whole project requires Python >= 2.6
2017-12-13 13:54:05 +00:00
99abe24d74 remove unused import and unused variable disk_size (#33741) 2017-12-13 13:49:55 +00:00
92c5b758f8 Improve consul_io.py execution speed (#33737)
* Improve execution speed

* fix missing whitespace
2017-12-13 13:33:28 +00:00
5bcc9cd1c3 influxdb: fix missing arg specs (#33859)
* influxdb: fix missing arg specs

* influxdb: doc: move database_name spec to doc fragments

* influxdb: cleanup unused import
2017-12-13 12:41:57 +01:00
20ce0bde30 Fix a typo in the readme of the skeleton used by ansible-galaxy. (#33807)
`ansible-container init` instead of `ansible-contiainer init`
2017-12-13 11:35:05 +01:00
e76e8aed90 Fix closing tag for COMPONENT NAME, multiline changes 2017-12-13 10:18:37 +01:00
ea18b9021a Revert "Deprecate Entity, EntityCollection and use subspec in network modules (#33575)" (#33849)
This reverts commit 4349b56643.
2017-12-13 13:07:52 +05:30
b6528ea19f ovirt_disk: fix Python 3 compatibility (use six) (#33730) 2017-12-13 07:51:34 +01:00
1f8f394de3 Remove deprecated restart: parameter from win_feature examples (#33848)
`restart` is a deprecated parameter. Show how to use `reboot_required`
in examples instead
2017-12-13 16:48:45 +10:00
1d10a2867c Fixes #33771 - win_iis_webapppool bugfix (#33777)
* Fixes #33771

* Fixes #33771 - mod 1

* removed some unneeded whitespace
2017-12-13 16:34:44 +10:00
5b666a5074 added documentation info regarding win_unzip and recurse (#33846) 2017-12-13 16:34:05 +10:00
70f5e091f1 VMware: Handle version restriction error (#33805)
This fix handles RestrictedVersion error raised by server
due to restricted license.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-13 11:47:48 +05:30
9a807e6316 Adds bigip_security_port_list module (#33845)
This module can be used to manage port lists in an AFM configuration.
2017-12-12 21:13:06 -08:00
eb5ffa0d4e [new module] Added Azure SQL Servers support - cloud/azure/azure_rm_sql_servers (#33077)
* Added new module: Azure RM SQL Servers

* fixed sanity issues

* enabled integration test

* disabling test as Microsoft.Sql namespace not available

* renamed servers -> server

* updates as requested in the review

* udpates to sql server

* renamed module

* replaced has_key by in

* flattened results

* final updates to sql server

* updates as requested in the review

* added more tests

* deleting unexisting instance up front

* more tests

* another round of test changes

* removed uneeded test
2017-12-13 14:31:00 +10:00
cb026bb660 Adds bigip_profile_client_ssl module (#33844)
This module can be used to manage client ssl profiles on a BIG-IP
2017-12-12 19:54:43 -08:00
155f36bbd8 Rekey on member (#33836)
* Change cast_list_to_dict to more generic rekey_on_member

cast_list_to_dict was taking an arbitrary data format in and returning
an arbitrary data format out.  Rework this to be a more generic function
which creates a dict of dicts based on a member of the dict.

Remove cast_dict_to_list since rekey_on_member handles the use cases we
know about and cast_dict_to_list suffers from the same problems as
cast_list_to_dict.  If this is still needed we could think about filters
we could add to do this in a short jinja2 pipeline.

* Fix bare excepts (bare excepts even catch sys.exit())
2017-12-12 19:02:15 -08:00
5b6ba8cbfd Minor spelling fix (#33822) 2017-12-12 23:13:27 +01:00
392b55b70b add Azure user agent for Visual Studio Code extension (#33366) 2017-12-13 06:57:37 +10:00
5c63bb0090 Add test for clean_copy preservation of keys 2017-12-12 13:51:06 -05:00
8d78a829c6 always preserve certain keys (#33637)
* always preserve certain keys

fixes #33433

* results
2017-12-12 13:01:52 -05:00
7bc7c347dd remove unnecessary extra conditional (thanks bcoca)
Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-12-12 12:52:46 -05:00
4df610f961 order agnostic child group definition in inventory
Previously if a child's group vars section was defined before the
child group itself, an edge case would be hit where the state of the
pending declaration would process as var and therefore drop the
child pending declaration context. This would result in the group
vars defined for the parent group being out of scope for the child
group.

Example:

    [web:children]
    appnodes
    proxies

    [web:vars]
    deployment_type=prod

    [appnodes:vars]
    foo_var=true

    [appnodes]
    appnodes[1:3].example.com

    [proxies:vars]
    bar_var=true

    [proxies]
    proxies[1:3].example.com

Previously the deployment_type variable would be out of scope for
both the appnodes and proxies groups. This patch fixes that.

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-12-12 12:52:46 -05:00
bd769bf79a Add iam_role_facts to changelog 2017-12-12 12:21:20 -05:00
c27ded6bbc [cloud] New iam_role_facts module (#32874)
* Add iam_role_facts module

Provide information about IAM roles

* Improve path prefix handling

Add preceding or trailing `/` if not already present
2017-12-12 12:19:53 -05:00
1bb974a917 Link to CoC from PR and Issue creation (#31957)
* Link to CoC from PR and Issue creation

via the builtin GitHub feature

* latest, not devel
2017-12-12 12:02:02 -05:00
5a5f4b7fcd Fix included task's name in handler (#33821) 2017-12-12 17:52:01 +01:00
73abde399c VMware: Fix SSL Context checking for Python <2.7.9 (#33683)
Fixes: #33602

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 22:02:36 +05:30
58fdbe7415 rhn_channel/register: Porting tests to pytest (#33719)
* rhn_channel/register: Porting tests to pytest

Related: #33387

* rhn unit tests: use mock_request as a fixture
2017-12-12 07:25:49 -08:00
a2650cbe05 Fix last eos issue in net_* tests (#33726)
This should finally fix it.
2017-12-12 10:06:06 -05:00
9ea1b18ff7 Allow multiple values per key in name fields in openssl_certificate/csr (#30338)
* allow multiple values per key in name fields in openssl_certificate

* check correct side of comparison

* trigger only on lists

* add subject parameter to openssl_csr

* fix key: value mapping not skipping None elements

* temporary fix for undefined "subject" field

* fix iteration over subject entries

* fix docs

* quote sample string

* allow csr with only subject defined

* fix integration test

* look up NIDs before comparing, add hidden _strict params

* deal with empty issuer/subject fields

* adapt integration tests

* also normalize output from pyopenssl

* fix issue with _sanitize_inputs

* don't convert empty lists

* workaround for pyopenssl limitations

* properly encode the input to the txt2nid function

* another to_bytes fix

* make subject, commonname and subjecAltName completely optional

* don't compare hashes of keys in openssl_csr integration tests

* add integration test for old API in openssl_csr

* compare keys directly in certificate and publickey integration tests

* fix typo
2017-12-12 12:35:22 +00:00
7dac82e2e2 typo fix (#33810)
typo fix in description
2017-12-12 12:25:53 +00:00
ff525ab3d1 VMware: Refactor vmware_vmkernel (#33664)
This fix adds following:
* Documentation update
* Add support for DHCP
* Refactor code to use PyVmomi class

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 14:49:16 +05:30
dd2ea8ae1d files/file.py: Raise an IOError when trying to touch a file with missing intermediate directories within it's path (#33765)
Fixes #33744

Signed-off-by: Patrick Ringl <patrick_@freenet.de>
2017-12-12 09:48:55 +01:00
3abc2cc968 locahost -> localhost typo in inventory/data.py (#33790)
Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-12-12 09:46:18 +01:00
8475171f67 firewalld: Implement zone operations (#32845)
* firewalld: Implement zone operations

Zones are removed or added when no other operations are used in
conjunction with the keywords 'present' or 'absent'.

This leads to a logical and natural syntax of:

- firewalld:
    zone: foo
    state: present

for adding or removing zones.

Signed-off-by: Felix Kaechele <felix@kaechele.ca>

* firewalld: zone ops: addressed review concerns

- Added more documentation on the peculiarities of the zone operations
- Output meaningful error messages when trying to use zones incorrectly

Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2017-12-12 09:34:41 +01:00
9ff5c15f57 ACI Encap pool: New module for support layer2 encap pools (#33219)
* ACI Encap Pool: Add new module to support VLAN, VXLAN, and VSAN Pools

* update logic for allocation_mode

* update docstring and tests

* Update filter_target since url method has been updated
2017-12-12 07:51:19 +00:00
1d53fbeb59 Add ssl, validate_certs in InfluxDB modules (#33327)
This fix adds ssl and validate_certs argument spec for InfluxDB
modules. Also, refactors code.
Add BSD License.

Fixes: #31923

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 07:56:24 +01:00
74a7cc7130 vmware_guest: option to enable nested virtualization (#28149)
Signed-off-by: Julien Le Foll <jlefoll@percallgroup.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 11:02:56 +05:30
80fb836ce5 VMware: set extra configs for virtual machine (#33454)
This fixes implementation of extra config for virtual machine.

Fixes: #32004

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 00:19:04 -05:00
6e4c690a37 Fix fetch when retrieving a file with a multiple of the buffer size (#33697)
* Fix fetch when retrieving a file with a multiple of the buffer size

* fixed sanity issue
2017-12-12 14:56:21 +10:00
e3f44b74bd win_stat: better support for links (#33005) 2017-12-12 14:07:56 +10:00
bbe976113d Remove deprecated option CREATEUSER (#32504)
This fix removes a deprecated Postgresql User role attribute
called 'CREATEUSER' and 'NOCREATEUSER'. Also, updated documentation
for deprecation.

Fixes: #24928

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-11 21:39:27 -05:00
8d61583c02 VMware: add trailing / in case of nested folders (#33479)
This fix adds a trailing / in case of nested folders.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 07:57:34 +05:30
38b8d62e68 Add autodetection of atomic as a package manager
On Fedora Atomic Host, there is no yum or dnf, but the module ot use to
install package should be atomic_container. We verify that this is
a Fedora Atomic Host with rpm-ostree, not atomic since atomic
can be used on a regular non ostree distribution.
2017-12-11 21:20:19 -05:00
7170751703 redhat_subscription: remove python2.4 compat (#33762)
* Replace get_exception with native error handling.
2017-12-12 07:19:08 +05:30
0d35a69f0e normalize names 2017-12-11 18:20:04 -05:00
a57d6a4206 Use pop in cb clean results (#33779)
* Fix _clean_result for debug callback with 1 char var names

The check in _clean_results was removing any keys that happened
to be one of the chars in ('invocation') instead of the string
'invocation'. This was meant to be a tuple but there was no comma
so the for iterated the string instead of the tuple.

Introduced in 9dba580204

Update unit test to catch this.

Fixes #33723

* Use .pop() to remove invocation from results dict

In base callback _clean_results, simplify the way the
'invocation' item is removed.

Add some more unit tests.
2017-12-11 17:41:12 -05:00
07e9df11b3 windows dev docs - vagrant info (#33515)
* windows dev docs - vagrant info

* added info about FileUtil and LinkUtil

* Initial edit pass - WIP

* updated some wording

* fix some more general sayings to be more professional
2017-12-12 08:16:22 +10:00
a52fb20b54 Fix elasticdog removal since he is listed as an author in the module docs (#33713) 2017-12-11 16:06:29 -05:00
5e24f5c701 [cloud] Ec2 module warning when IP assignment is changed on existing instances (#33783) 2017-12-11 15:21:56 -05:00
a1c0b4336d module/spotinst: Add Spotinst as a new cloud provider (#26388)
* module/spotinst: Add Spotinst as a new cloud provider to manage Elastigroups
2017-12-11 15:08:37 -05:00
c26a528b21 ACI Module: Update modules to provide match criteria; allows more complex matching (#33756) 2017-12-11 18:43:11 +00:00
c2b4fd7f1e Convert non-DI module to DI nxos_user (#33770) 2017-12-11 20:55:05 +05:30
8a4e761814 Enable the pull target to work in vvvv mode (#33755) 2017-12-11 10:09:21 -05:00
4349b56643 Deprecate Entity, EntityCollection and use subspec in network modules (#33575)
* Deprecate Entity, EntityCollection and use subspec in network modules

*  As per proposal https://github.com/ansible/proposals/issues/76
   deprecate use of Entity, EntityCollection, ComplexDict, ComplexList
   and use subspec instead.
*  Refactor ios modules
*  Refactor eos modules
*  Refactor vyos modules
*  Refactor nxos modules
*  Refactor iosxr modules
*  Add support for key in suboptions handling

* Fix CI issues
2017-12-11 20:31:25 +05:30
a23da23491 cloudscale_floating_ip module (#33181)
* Refactor cloudscale API code

Move code common to all cloudscale cloud modules into a common base
class.

This is needed as a prepartion of the cloudscale_floating_ip module.

* cloudscale_floating_ip module

New cloud module to manage floating IPs on the cloudscale.ch IaaS
service.
2017-12-11 14:48:35 +00:00
d84e0861ef zabbix_host ipmi_*-tests (#33717)
* zabbix_host ipmi_*-tests

* oops, double assert fixed
2017-12-11 14:00:58 +00:00
bf8439e2a0 Zabbix host ipmi (#33718)
* Update zabbix_host documentation (extend ipmi_-documentation, and update style to be consistent on the rest while we are at it)

* Remove ipmi_parameters being added to the API call when not required

* remove optional parameters from add_host, as well
2017-12-11 08:41:35 -05:00
33c7a157ab Create network_working_with_command_output.rst (#33709)
Move this content to new location prior to intro_networking.rst refactor
2017-12-11 13:22:58 +00:00
145c6f953d add oVirt provider to ManageIQ module (#33751)
This commit adds oVirt/RHEV capability to the ManageIQ remote
management module.
2017-12-11 04:52:33 -05:00
dbc6963617 mount: Add option to backup fstab file (#33734)
This fix adds option to create a backup of fstab file
before making any changes to it.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-11 10:09:07 +05:30
51475cd623 Add a vmware_datastore_facts module (#30815)
Fix a bunch of things mentioned in the review.

Delete commented code from module.  Add fix for vcsim not returning
uncommitted.
Add integration test.

Add changes suggested
2017-12-10 10:55:55 -05:00
326b208b19 osx_say: add espeak support, rename module to say (#33071)
* Rename osx_say module into say

* say: remove undocumented default value for voice parameter

* say: add support for espeak command

* say: handle check_mode

* say: handle GNUstep tool
2017-12-09 13:45:31 +00:00
50dc1f09ad fix ce.py provider param issue (#27876)
* Update ce.py

* Update ce.py

fix CloudEngine host failed #27903
2017-12-09 19:03:31 +05:30
d307dee4db letsencrypt: add new param account_key_content (#32948)
* letsencrypt: add new param account_key_content

* rename account_key_path to account_key_src

* fix error in removing temp keyfile
2017-12-09 08:48:15 +01:00
ebd6db7a1c Digital Ocean Inventory refactor (#29176)
* Remove 'dopy' dependency
* Update documentation
* Incorporate BondAnthony's IP address related code
* Incorporate andrewsomething's Pagination code
* Add Tags support

Fixes: #15752

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-09 11:27:18 +05:30
2caddf0212 Refactor Digital Ocean Domain (#29179)
* Remove dopy dependency
* Use DigitalOceanHelper class
* Incorportated BondAnthony's changes

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-09 11:24:20 +05:30
11580947f8 Adds token cleanup to some f5 modules (#33728)
The tokens can build up over time and if too many accumulate, it
prevents you from logging in. This adds cleanup
2017-12-08 15:39:04 -08:00
e4abb0de33 A first pass at moving libs to new dir structure (#33727)
* A first pass at moving libs to new dir structure

The network modules changed their module_utils dir structure.
This first patch establishes mod utils for F5 in this new structure.

Module use will be limited until things are more fleshed out

* Fixing upstream errors

* Fixing more issues
2017-12-08 15:28:23 -08:00
7b76124c07 Fixes for gtm wide ip (#33725)
Adds pools argument. Refactors code to support new conventions.
Adds more unit tests
2017-12-08 14:17:30 -08:00
3283f46ffa Create common waf module for use by future waf modules (#33003)
Move waf common code into waf module_utils.
This will be used by future waf modules
2017-12-08 15:50:26 -05:00
a95894dfcb ec2_vpc_route_table - unmask exceptions during route create/delete (#32256) 2017-12-08 15:48:09 -05:00
fa313c58c0 [cloud] Delete stack using CloudFormation role ARN if available 2017-12-08 15:45:27 -05:00
cc802624a6 [cloud] document return values for ec2_lc (#32592) 2017-12-08 15:41:25 -05:00
bcb19b9d3a [cloud] Enable redshift enhanced vpc routing, dc2.8xlarge type (#33674)
- Adds Enhanced VPC Routing as a configurable option when creating a
  new cluster.  Defaults to 'false'
- Adds the new dc2.8xlarge node type
2017-12-08 15:35:53 -05:00
5d579e1e66 [cloud] Port ec2_key module to boto3 (#33075)
* port ec2_key to boto3

* update tests for ec2_key
2017-12-08 15:34:46 -05:00
824ec37a4f Fix Command module documentation
The command module docs were unclear.  They talked about ignoring the user's environment which lead people to believe the user's environment variables were not used.  In actual fact, the user's environment variables are used.  They just are not expanded in the command.
2017-12-08 10:07:00 -08:00
b55cc61ef0 Clarify docs to explain that max_fail_percentage uses batch size (#33720) 2017-12-08 12:09:38 -05:00
e3d99e35d3 cloud:ovirt:ovirt_storage_domains.py: Raise Exception in case no host is up for SD removal (#33662) 2017-12-08 10:22:53 -05:00
7bb35e8781 Fix using loops with environment and add tests (#32796) 2017-12-08 10:13:22 -05:00
aa74434815 allow smartos vmadm to create docker vms (#32819) 2017-12-08 15:02:11 +00:00
b455901904 Fix shebang. shebang and interpreter path weren't being templated (#33698)
* Fix shebang.  shebang and interpreter path weren't being templated

Fixes #18665
Fixes #33696
2017-12-08 06:59:24 -08:00
c8a5e689e3 Fix issue with setting values in choices (#33574) 2017-12-08 08:10:25 -05:00
882065b9b4 VMware: Refactor vmware_guest_find module (#33412)
This fix refactors vmware_guest_find module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-08 13:27:23 +05:30
ad4975d3e7 Update Azure module test infrastructure.
- Use new Azure direct API implementation.
- Enable Azure tests to clean up on exit.

ci_complete
2017-12-07 23:37:36 -08:00
fb0343cd12 Remove default value for 'value' option in route53 module (#32297)
* [route53] Remove default value for 'value' option. Fixes #32296.

* assign value_in the default value after the required_if check
2017-12-08 14:15:41 +10:00
363dfcb24c Revert "Disable automerge while working on pep8"
This reverts commit 87776d75dc.
2017-12-07 19:42:51 -08:00
18529a275b Bulk pep8 fixes - hand crafted (#33690)
* Bulk pep8 fixes - hand crafted

Fix by hand the remaining issues that autopep8 couldn't

* Next batch of hand crafted pep8 fixes

* Ignore W503

https://github.com/PyCQA/pycodestyle/pull/499

* Revert more of W503
2017-12-07 19:29:21 -08:00
bcd189509e Fixes #33521, remove temp file. (#33522) 2017-12-08 11:25:02 +10:00
3a634058f3 python3 support for letsencrypt module (fixes #30690) (#32734)
*   python3 support for letsencrypt module (fixes #30690)
  * initialize result to a dict in some methods to prevent 'NoneType is not iterable' TypeError
  * use dict.get() to retrieve values from info dict to prevent KeyError
  * convert to/from text/bytes using _text methods for PY3 support
2017-12-07 17:21:37 -08:00
551847beea Fix issues with net_user tests on eos (#33691)
* Fix net_user/eos and also the horribly broken cleanup there

* The rest of net_user/eos has the same problem
2017-12-07 17:01:28 -05:00
2d2f288e77 Add docs describing some additional behaviors around modules (#33631)
* Add docs describing some additional behaviors around modules, to outline why generic modules will not be accepted

* Add/copy the generic module guidelines to developing_modules

* Edits for clarity

* Edits for clarity
2017-12-07 15:31:26 -05:00
10cd2cd1b7 Manually fix issues that autopep8 introduced
* iam.py 161 -> 160 chars
* lamba -> single line function -> multiline function

Avoid redefining key

iam line length

iam.py now clean
2017-12-07 20:25:55 +00:00
c57a7f05e1 Bulk autopep8 (modules)
As agreed in 2017-12-07 Core meeting bulk fix pep8 issues

Generated using:
autopep8 1.3.3 (pycodestyle: 2.3.1)
autopep8 -r  --max-line-length 160 --in-place --ignore E305,E402,E722,E741 lib/ansible/modules

Manually fix issues that autopep8 has introduced
2017-12-07 20:25:55 +00:00
d13d7e9404 Fail when attempting to modify unmodifiable target group parameters (#33246)
* Fail when attempting to modify unmodifiable target group parameters

As you can't modify Port, Protocol or VPC id for a target group, fail
when this happens rather than pretending to do it.

One could argue that the target group could be recreated rather than
failing, but this has massive knock on implications to other resources
that depend on the TG (all ASGs would need to be updated, the ELB
listener would need to be updated, etc)

* Use `.get()` instead of direct dictionary access
2017-12-07 15:17:45 -05:00
55cd1f3377 Add ec2_placement_group to changelog 2017-12-07 14:51:24 -05:00
a12cbc3dde [cloud] ec2_placement_group module to create/delete EC2 Placement Groups. (#33139)
* Added modules to create, delete, and describe EC2 Placement Groups.

* Remove unnecessary print statement

* Update to use boto3.

* De-linting

* Remove facts from this PR

* Update to newer method of handling Boto3 connections and exceptions.

* Futzing around with imports and HAS_BOTO3

* Fix up exception imports.

* Remove redundant default.

* Handle DryRunOperation errors appropriately.

* Remove redundant BOTO3 check.

* Use shorter licence declaration.

* Remove redundant HAS_BOTO3 import.

* Add AWSRetry decorators to API calls.

* Add new 'strategy' parameter to allow for cluster and spread PGs.
2017-12-07 14:44:09 -05:00
87776d75dc Disable automerge while working on pep8 2017-12-07 19:00:19 +00:00
4e9aa8bea2 Adding ipmi settings for zabbix host (#33435)
* adding ipmi settings zabbix host

* adding ipmi settings zabbix host

* adding ipmi settings zabbix host

fix misspelling

* ipmi settings for zabbix host

add newline at eof

* update documentation and example section

* fix documentation

* fix documentation

delete 'choises'

* delete whitespaces

* fix default ipmi settings
2017-12-07 18:47:33 +00:00
f8d7e477f0 fix azure test case failure for function apps module (#33658) 2017-12-07 12:41:19 -05:00
b78ab37a94 Only expose rekey options to ansible-vault command
`ansible-vault` is the only cli command which knows how to handle the
rekey options `--new-vault-id` and `--new-vault-password-file`. No
point in exposing those rekey options to any of the other ansible
commands.

On a practical level I think this matters most in ensuring that
`--help` doesn't produce any false/unhelpful output.
2017-12-07 11:48:20 -05:00
a0dc776f56 Fixes a weird udf scenario (#33681)
The situation happened where in udf it stopped provisioning correctly.
Seems like the best resolution is to restart asm.
2017-12-07 08:47:35 -08:00
31e3b8197f zabbix_host: fix integration tests only working individually (#33630)
* remove mod_evasive which is potentially installed by apache2_module
integration test and add zabbix_host to CI
2017-12-07 08:32:28 -08:00
a7e49cde3b Add some ignores on some namespaces for a few users (#33651) 2017-12-07 11:30:25 -05:00
28373e1fe0 Address recent changes to tests to fix jinja tests as filters (#33679) 2017-12-07 11:30:09 -05:00
d850992526 report correct file for callback 2017-12-07 11:28:42 -05:00
5e46a0add6 ACI Query: Update var name to be unique (#33217)
* ACI Query: Update var name to be unique

* Update dict copy to use deepcopy

* Update dict copy to use deepcopy
2017-12-07 16:26:38 +01:00
1057ec3dc4 Revert "add support for AWS NLB - fixes #30701 (#30907)"
This reverts commit 78858a5b12.
2017-12-07 10:28:40 -05:00
1699a39ad0 fixes guess_os for netconf connections (#33671)
* fixes guess_os for netconf connections

This change fixes invalid calls to play_context when the network_os is
not set and the connection attempts to guess the network_os.  The method
will now check the correct values for ssh key file and allow agent
instead of returning errors.

* fix up pep8 issues
2017-12-07 20:17:41 +05:30
012a96dabd code cleanup for --diff and --check modes (#33665)
* code cleanup for `--diff` and `--check` modes

* fixes UT to remove exec_command
2017-12-07 20:14:57 +05:30
4d67cdd1f7 Use module formatting (#33413) 2017-12-07 14:26:52 +00:00
c2bef76c46 Various doc formatting fixes (#33626)
* Avoid italics from `with_`
* C() is for Modules, not for RST
* RST uses ``...`` for code
2017-12-07 14:25:46 +00:00
349099a4c6 Fix sorting in man template on python3. Fixes #33663 (#33673) 2017-12-07 09:16:04 -05:00
22f4074daa Zabbix 3.4 support fix for zabbix_template module. (#33462)
* Zabbix 3.4 support fix.

As of 3.4 Zabbix version application does not have 'updateExisting'.

* added updateExisting in applications for old zabbix support.

* small codestylefix
2017-12-07 08:06:54 -05:00
2caae251ff VMware: Refactor vmware_portgroup module (#33442)
This fix adds following:

* hosts as argument spec
* cluster_name as argument spec
* refactor to use Pyvmomi class
* API refactor and documentation

Fixes: #18980

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-07 16:47:38 +05:30
f4cc3fb56d Remove fixme coment 2017-12-07 10:34:10 +00:00
e4a465b6e8 Docs: Network become for privilege mode (#33367)
* Network become for privilege mode

* Document what privilege mode is
* How to tell if you need it
* How to enable
* Tidy up formatting on page
* authorize & auth_pass
* network group_vars.
2017-12-07 10:27:43 +00:00
d78d044142 Fix documentation about mode in openssl_privatekey (#32664)
This fixes adds documentation about undocumented parameter
'mode'. Also, adds logic to specify mode in custom symbolic permissions.

Fixes: #32616

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-07 04:47:23 -05:00
78858a5b12 add support for AWS NLB - fixes #30701 (#30907)
* add support for NLB

* added version for parameter type
2017-12-07 03:06:50 -05:00
b91117dac8 azure_rm_containerservice (#33597)
* add acr

* acr

* acr

* fix a minor error

* add tests and fixes as suggested

* use get_mgmt_svc_client to enable bi

* fixes as zim suggested

* code refinement

* get acr instance before update

* fix a bug

* remove Classic sku as it's going to deprecate

* pass sanity test

* fix sanity

* fixes based on comments

* fix broken namespace unregistered error

* fix a bug

* fix a bug

* fix

* add register namespace

* fixes tests

* remove pdb

* add ci azure test

* removed required: false

* renamed acr -> containerregistry

* fixed spelling mistake

* fixed idempotence

* fix for idempotence was wrong

* fixed a few issues

* different log when exception different than ResourceNotFound

* self.fail instead of log

* updated sample return value

* added login server in results

* fixed else

* fixed line too long

* cmp -> __ne__

* fixed trailing whitespace

* output.changed is false when instance updated

* fix for state change

* one more update

* update instance only when location or sku has changed

* fixed syntax error

* fixed acr test

* just removed unnecessary comment to trigger ci

* update return value shape

* flatten `state`
* change credential dictionary state
* add credentials to integration tests
2017-12-06 20:30:28 -08:00
4c242ad2e7 Remove myself as apk maintainer (#33546)
* Remove myself as apk maintainer

* Add myself under the 'ignored' key
2017-12-07 11:26:35 +10:00
4cc06cca1c * Fix module._result['diff'] (#33654) 2017-12-07 06:19:14 +05:30
6f719ea848 fixed: win_copy: typo "file file" (double "file") (#33620)
* fixed: win_copy: typo "file file" (double "file")

Signed-off-by: Alexey Shumkin <Alex.Crezoff@gmail.com>

* Add quotes around filenames/directories

* Fix tests for new quotes

* Fix tests for new quotes

* One more ?

* Another one...
2017-12-07 00:42:39 +01:00
4071cd7a95 Remove check for HAS_BOTO3 since AnsibleAWSModule checks it (#33649) 2017-12-07 08:08:10 +10:00
065a2fe10d Add requirements to npm module (#33641)
npm is required in order for this module to work.
2017-12-07 08:03:32 +10:00
b4e6028ee7 Fix documentation description of remote_addr for docker connection plugin (#33520) 2017-12-07 07:41:33 +10:00
03d1e63f57 Fix wrong number of arguments for format (#33542)
This fix adds wrong number of arguments for format in
ec2.py module_util.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-07 07:32:57 +10:00
b06dfc4891 Adds 'discard_after_delete' property to ovirt_storage_domains module. (#33450) 2017-12-06 16:22:44 -05:00
f13656782a fixed: win_copy failure from a VirtualBox share to a local path (#33576) 2017-12-07 06:55:50 +10:00
dd041e6f72 Added module to describe EC2 Placement Groups. (#33228)
* Added module to describe EC2 Placement Groups.

* Update to newer way of handling Boto3 connections and exceptions.

* Futzing around with imports and HAS_BOTO3

* Fix up exception imports.

* Fix license block

* Correct task indenting in doc

* Added list-filtering example to docs
2017-12-06 15:36:25 -05:00
65ffb92bff ensure quote runs on text
fixes #33260
2017-12-06 12:16:45 -08:00
7ec692ea7f add Logan2211 to maintainers for zabbix_template (#33627) 2017-12-06 20:14:37 +00:00
7bd54a51e2 Add --vault-id support to ansible-pull
Without this additional code snippet `ansible-pull` will still accept
the `--vault-id` option. It just won't pass the option along when
invoking `ansible-pull`.
2017-12-06 13:40:20 -05:00
2bc4c4f156 IOS-XR NetConf and Cliconf plugin work (#33332)
*  - Netconf plugin addition for iosxr
 - Utilities refactoring to support netconf and cliconf
 - iosx_banner refactoring for netconf and cliconf
 - Integration testcases changes to accomodate above changes

* Fix sanity failures, shippable errors and review comments

* fix pep8 issue

* changes run_command method to send specific command args

* - Review comment fixes
- iosxr_command changes to remove ComplexDict based command_spec

* - Move namespaces removal method from utils to netconf plugin

* Minor refactoring in utils and change in deprecation message

* rewrite build_xml logic and import changes for new utils dir structure

* - Review comment changes and minor changes to documentation

* * refactor common code and docs updates
2017-12-06 22:37:31 +05:30
4b6061ce3e Fixing wrong parameter name in documentation example (#33633)
Fixes #33529
2017-12-06 17:04:13 +00:00
6a84772290 Add module_stdout/stderr fields to list in 'debug' callback plugin 2017-12-06 08:33:02 -08:00
395566746e removed unused 2017-12-06 11:22:11 -05:00
1a12e733b9 nxos_facts: add check for ipv6 (#33594) 2017-12-06 09:41:31 -05:00
48d3cbfc0f Adding network_cli support in mlnxos (and removing provider) (#33511)
Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-06 14:22:15 +00:00
e73d3dfe20 Fixing bug when returned 404 status code considered as invalid (#33530)
In case of workflow delete action, the returned 404 status code
considered as invalid although it's a valid code for not found (deleted)
entity.
Removed verification of the status. Only success should be verified.

Fixes #33524
2017-12-06 14:18:45 +00:00
dfd68e4966 Fix persistent reset_connection issue (#33590)
Fixes #33589

If persistent socket does not exist catch the execption
and ignore it as the coneection is already closed.
2017-12-06 19:37:09 +05:30
666692069d Clean up nmcli docs (#33596)
This patch cleans up the documentation for `nmcli` module.
2017-12-06 08:48:59 -05:00
425537861a Fix some net_* tests (#33593)
* Fix typo in net_logging/eos

* This seems to be required to use eos_user in this way

* Fix indentation in net_static_route/eos

* Rework interface check in eos_vrf

This should do the right thing.
2017-12-06 10:24:58 +00:00
a28eb94f1a VMware: Fix vcenter connection error message (#33621)
This fix make error message easily understable which is provided
by vcenter or ESXi server.

Fixes: #24672

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-06 14:06:35 +05:30
1b5c4b72bd Add Azure provider support to ansible-test and CI.
ci_complete
2017-12-06 00:34:54 -08:00
58286ef93b Limit pytest < 3.3.0 for python 2.6. 2017-12-05 22:23:52 -08:00
73132d3906 Update FreeBSD completion for ansible-test. 2017-12-05 21:31:39 -08:00
6988d32da2 Update FreeBSD versions used in CI. 2017-12-05 19:45:39 -08:00
794c5a6e53 A small typo (RFX->RFC) in vault.rst (#33553)
Correction for a typo in vault.rst.
2017-12-06 08:42:59 +05:30
71510aa67a iam_role - Add option to supress the creation of instance profiles (fixes #26023) (#32527)
* Defaults to creating the instance profile to preserve current behaviour
2017-12-06 12:46:35 +10:00
b107635aeb Disable zabbix_host tests in CI.
The tests pass when run in isolation, but when run as part of the
posix/ci/group1 tests they fail.
2017-12-05 17:39:41 -08:00
90ac38bd4c Fix module validator handling of empty options. 2017-12-05 16:46:05 -08:00
c6b3815bf0 fixed win_whoami options documentation 2017-12-06 09:57:47 +10:00
a55496553a fix for win_fetch tests (#33601) 2017-12-05 18:21:34 -05:00
f5471b3dcb [cloud] ec2_vpc_net integration tests (#33111)
* Add some integration tests for ec2_vpc_net module

* Add a couple tests for check mode

fix typo

ensure the DHCP option set is cleaned up

* Add permissions to test policy
2017-12-05 16:41:16 -05:00
9e89d2be1a Adds a tmsh command fallback (#33592)
* Adds a tmsh command fallback

The bigip terminal plugin assumes that the remote shell is tmsh.
This is not always true. The remote shell may be bash sometimes.

This adds a different shell command in the case that bash is the
remote shell

* Fixing upstream errors
2017-12-05 13:03:16 -08:00
97fa41d338 updated new Windows modules in Changelog 2017-12-06 06:53:34 +10:00
38de7c4bb1 win_whoami: new module to emulate whoami executable (#33295) 2017-12-06 06:46:12 +10:00
cd36164239 Porting tests to pytest (#33387)
* Porting tests to pytest

* Achievement Get: No longer need mock/generator.py
  * Now done via pytest's parametrization
  * Port safe_eval to pytest
  * Port text tests to pytest
  * Port test_set_mode_if_different to pytest

* Change conftest AnsibleModule fixtures to be more flexible
  * Move the AnsibleModules fixtures to module_utils/conftest.py for sharing
  * Testing the argspec code requires:
    * injecting both the argspec and the arguments.
    * Patching the arguments into sys.stdin at a different level

* More porting to obsolete mock/procenv.py
  * Port run_command to pytest
  * Port known_hosts tests to pytest
  * Port safe_eval to pytest
  * Port test_distribution_version.py to pytest
  * Port test_log to pytest
  * Port test__log_invocation to pytest
  * Remove unneeded import of procenv in test_postgresql

* Port test_pip to pytest style
  * As part of this, create a pytest ansiblemodule fixture in
    modules/conftest.py.  This is slightly different than the
    approach taken in module_utils because here we need to override the
    AnsibleModule that the modules will inherit from instead of one that
    we're instantiating ourselves.

* Fixup usage of parametrization in test_deprecate_warn

* Check that the pip module failed in our test
2017-12-05 12:43:13 -08:00
ed376abe42 zabbix_host integration tests (#33184)
* Integration tests for zabbix_host using Zabbix on Ubuntu 14.04.

* fix duplicate yaml key in test

* .changed -> is changed, |failed -> is failed, trim configfile

* zabbix_host integration test does not need BOTMETA entry, inherited from module
2017-12-05 14:29:12 -05:00
750f7fe132 docfix on CHANGELOG (#33463)
fix some spelling and clarity issues, give some guidance on what ec2_ami_find was replaced by.
2017-12-05 13:44:12 -05:00
60b5c6890a [cloud] Add template_body parameter to cloudformation module to allow lookups (#33485) 2017-12-05 13:42:05 -05:00
0b823e3fe0 Doc: Make documentation link as clickable (#33188)
This fixes URL clickable in slack module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-05 13:24:37 -05:00
8679d2e396 Port integration tests to network_cli (#33583)
* network_cli needs network_os

* Work around for Python 3.x < 3.6
2017-12-05 12:46:00 -05:00
09b3b5305a VMware: Add vmware guest param - maxMkConnections (#33220)
This fix adds functionality to configure vmware guest parameter called
'maxMkconnections'. Also, added integration test for this change.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-05 22:33:50 +05:30
94019e7050 VMware: add support for memory_reservation (#33080)
This fix adds functionality to support memory_reservation and
memory_reservation_lock while managing Virtual Machine.

Fixes: #20407

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-05 21:07:36 +05:30
eab8eab885 add newly merged windows module to changelog (#33582)
https://github.com/ansible/ansible/pull/31046
2017-12-05 14:59:57 +00:00
fdc547601c Fix authorize in net agnostic modules (#33549)
* This should fix authorize for net_* modules

* transport: none means network_cli in eos

For now anyway
2017-12-05 09:57:40 -05:00
961c3fcca7 Add missing comma in lists (#33557)
This fix adds missing comma in different modules.
This removes implicit string concatenation in given list.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-05 15:44:56 +01:00
af59817850 pkg5: PEP8 compliancy and documentation changes (#33559)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-05 07:56:16 -05:00
aaf22965db Reset persistent connection in junos integration test (#33573) 2017-12-05 15:25:39 +05:30
399e72abb0 Fix reconstructing socket path in network_cli (#33572)
*  Persistent connection socket path is hash of
   remote address, port, remote user and connection
   type.

*  Integration test fixes
2017-12-05 15:11:49 +05:30
6654d69569 Fix incorrect formatting call in azure module (#33561)
Fix corrects formatting call in azure_rm_resourcegroup_facts module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-05 14:50:59 +05:30
aec8e7784a urpmi: PEP8 compliancy and documentation changes (#33560)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-05 03:32:58 -05:00
95044d69c7 Fix unit test failure for netconf connection plugin (#33547) 2017-12-05 12:04:48 +05:30
8699f8cf26 Use pg_roles instead of pg_authid in postgresql (#32624)
This fix adds additional check to get details about roles
from pg_roles instead of pg_authid. On AWS RDS instances,
access to pg_authid is restricted for security reasons.

Fixes: #32358

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-04 21:11:35 -05:00
dccf58efe3 winrm: remove exception appender (#33443)
* winrm: remove exception appender

* went the other way and made the import error msg available in the msg
2017-12-05 10:33:28 +10:00
46f7fadbaf Add pep8 label for changes to legacy-files.txt 2017-12-05 01:25:04 +01:00
d244307701 Azure NSG Documenation missing some fields (#33330)
* Azure NSG Documenation missing some fields

* remove trailing spaces

* reslove code review feedback

* remove trailing space

* use `C()` instead of `''`
2017-12-05 10:22:03 +10:00
8506b7bfdc Fix azure_rm_acs due to Azure breaking API change (#33221)
* Fix azure_rm_acs due to Azure breaking API change

* resolve code review feedbacks

* resolve test failures

* better name

* ignore case for vm size

* reformat code

* resolve code review feedbacks
2017-12-04 15:41:34 -08:00
cf6f6d09db new windows module win_audit_policy_system (#31046)
* new windows module win_audit_policy_system

* removed the backup/restore functionality

adjusted to use run-command rather than running the command directly

adjusted testing appropriately for the above changes

* fixed issue with variable naming in testing
removed .psm1 from requires
fixed copyright

* Updated audit_type to list and added appropriate error handling
Updated testing accordingly
Fixed up documentation
2017-12-04 17:42:36 -05:00
807bebaa1f Add missing msg in fail_json (#33543)
This fix adds msg keyword in fail_json in aws_acm_facts,
cs_host, junos_package module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-04 21:57:58 +05:30
5087ce9273 Remove botocore from top-level execution in lambda_policy tests
Even though the tests are skipped, the `ClientError` uses outside the
test cause a failure even though the tests never run
2017-12-04 10:14:32 -05:00
33cbae0873 Fix module_utils path for network (#33531) 2017-12-04 10:01:08 -05:00
ce1ec4a2c9 fix nxos action plugin indentation for nxapi (#33526) 2017-12-04 14:18:22 +01:00
ff50b7893c rpm_key: PEP8 compliancy and documentation changes (#33426)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-04 13:30:27 +01:00
fbfeeff6bf apt_repository: PEP8 compliancy and documentation changes (#33429)
* apt_repository: PEP8 compliancy and documentation changes

This PR includes:
- PEP8 compliancy changes
- Documentation changes

* Fix merge issue
2017-12-04 13:29:23 +01:00
c4ef5bb922 apt_key: PEP8 compliancy and documentation changes (#33427)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-04 13:27:32 +01:00
84ace7acc3 Add missing be (#33507) 2017-12-04 13:21:54 +01:00
5482519096 letsencrypt: fix docs, openssl csr to req (#33519) 2017-12-04 11:33:30 +01:00
2416a8806d apt: PEP8 compliancy and documentation changes (#33425)
This PR includes:
- PEP compliancy changes
- Documentation changes
2017-12-03 17:14:49 +01:00
11c9ad23d5 Refactor common network shared and platform utils code into package (#33452)
* Refactor common network shared and platform specific code into package (part-1)

As per proposal #76 refactor common network shared and platform specific
code into sub-package.
https://github.com/ansible/proposals/issues/76

*  ansible.module_utils.network.common - command shared functions
*  ansible.module_utils.network.{{ platform }} - where platform is platform specific shared functions

*  Fix review comments

* Fix review comments
2017-12-03 21:42:30 +05:30
18aca48075 Various errors and formatting fixes (#33503)
* Various errors and formatting fixes

Mostly formatting fixes and small changes to better support debugging

* Fixes upstream errors
2017-12-02 22:33:18 -08:00
9f544cf926 Adds traffic group and fixes (#33502)
Adds the traffic group param. Adds conventions for updated f5
standards
2017-12-02 22:20:00 -08:00
00bf4ee210 routedomain fixes (#33501)
* routedomain fixes

Adds partition. Adds name. Makes name and id mutually exclusive.

* Fixes upstream errors
2017-12-02 22:10:04 -08:00
dd94cc8229 Various bigip_selfip fixes (#33500)
* Various bigip_selfip fixes

Minor optimizations. Fixes address regex

* Fixing upstream errors
2017-12-02 21:50:25 -08:00
df86d8f39e Fixes ordered dict import (#33499)
Make it try to fallback to a pypi package if its not found in what
ships with python
2017-12-02 21:26:23 -08:00
07c9c28a06 Fixes for unit tests (#33498)
upstream unit tests broke downstream code. this rectifies that.
2017-12-02 21:17:53 -08:00
da2e20ef45 Fixes various http monitor things (#33497)
Added token cleanup. Refactored a small amount of code. formatting
and cleanup of code.
2017-12-02 21:10:34 -08:00
798de98b0c Adds hostname to remote-syslog (#33496)
* Adds hostname to remote-syslog

Previously, only an IP address wa allowed. This removes that restriction

* Fixes upstream errors
2017-12-02 21:03:19 -08:00
a4aa00f556 Various bigip_user fixes (#33495)
There was a bit of refactoring that happened for coding standards.
Additionally, a bug fix was made for changing the root password
2017-12-02 20:43:24 -08:00
bcda0db7db Fixes tcp monitors (#33494)
* Fixes tcp monitors

Formatting fixes and a missing default parent. This patch fixes
that.

* Fixes upstream errors
2017-12-02 20:35:06 -08:00
212340bf0c Fixes bug converning filenames with dots (#33493)
The name detminator was incorrect. This fixes it and fixes unit
tests related things that were broken downstream
2017-12-02 20:17:14 -08:00
1f1f1c9d04 Refactors bigip_node (#33492)
* Refactors bigip_node

Includes a number of fixes and enhancements in addition to refactoring
the code to be inline with f5 standards

* Fixes upstream errors
2017-12-02 20:04:21 -08:00
4f8f99479a Various bigip policy fixes (#33491)
Test fixes, formatting, and added a difference checking method
2017-12-02 19:32:28 -08:00
008e23dcd1 Refactors bigip_sys_db (#33490)
Bringing it up to speed with the other f5 modules.
2017-12-02 19:08:01 -08:00
277d416b5b Refactors bigip_vlan (#33489)
This patch adds tests and refactors the code to be inline with current
f5 coding standards
2017-12-02 18:58:51 -08:00
f9b138b0ab Fix Digital Ocean tags module data type (#33486)
Digital Ocean changed their api to no longer accept an integer as a resource_id.  Fix adds changed data type (from integer to string).

Signed-off-by: Anthony Bond <bond.anthony@outlook.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-03 01:21:19 +05:30
24f8a35258 Rename monit status function to prevent override in runtime (#30702)
Fixes #30367
2017-12-02 14:01:08 -05:00
1faa0a7c60 authorized_key: remove deprecated get_exception API (#33277)
This fix removes deprecated get_exception API.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-02 14:24:30 +01:00
914829f56b Adds bigip_monitor_snmp_dca module (#33483)
This module is a flavor of monitor for SNMP DCA's
2017-12-01 23:34:25 -08:00
a2f19fbded Adds bigip_policy_rule module (#33482)
* Adds bigip_policy_rule module

This module is the second component of managing LTM policies on
BIG-IP. This module lets you manage the rules of a policy

* Fixing upstream errors

* Correcting YAML errors
2017-12-01 22:47:05 -08:00
abca68f5ac Adds the bigip_monitor_udp module (#33481)
This module can be used to manage UDP monitors on a BIG-IP
2017-12-01 22:07:58 -08:00
e3419fce87 Fixes and features for bigip_provision (#33480)
* Fixes and features for bigip_provision

Adds support for dedicated modules. Fixes bug in minimum name.
Adds wrappers around checking for up-ness so that they will contribute
to the watch loop

* Fixes upstream errors
2017-12-01 21:53:54 -08:00
2b1f056881 Fixes bugs in iapp template (#33478)
Fixes upstream bugs that broke downstream. Also fixes a name
matching error in the iApp's name
2017-12-01 21:30:13 -08:00
f60b8a3abb Fixes various things in bigip tests (#33477)
an upstream change was introduced that broke downstream code. This
path rectifies that error
2017-12-01 21:16:11 -08:00
1c373c112f Minor fixes for gtm facts (#33476)
Removed unused code and fixed upstream changes that broke downstream
2017-12-01 21:02:36 -08:00
7624006427 Adds new facts to bigip_facts (#33475) 2017-12-01 20:52:24 -08:00
e1062d1a7b Refactors the gtm datacenter module (#33474)
* Refactors the gtm datacenter module

This module needed to be inline with current f5 coding standards.
This fixes that

* Fixes upstream errors
2017-12-01 20:44:39 -08:00
76135a500e Refactors bigip device sshd (#33473)
* Refactors bigip device sshd

Fixes coding conventions for currect f5 conventions

* Fixes upstream errors
2017-12-01 20:27:41 -08:00
a3b3dbe220 Refactors bigip_device_ntp (#33472)
* Refactors bigip_device_ntp

To be inline with current f5 conventions

* Fixed incorrect key
2017-12-01 20:14:10 -08:00
929a1df91d Adds fixes to various bigip tests (#33471)
upstream changes broke downstream code. this rectifies that
2017-12-01 19:57:02 -08:00
f6be12b5d8 Adds various fixes for bigip_config tests (#33470)
There were upstream changes that were incompatible with the downstream
code. This fixes those.
2017-12-01 19:45:37 -08:00
9225052496 firewalld - fail offline operations on old lib version
This fixes an issue where the check for an import error would occur
before checking to see if firewalld is in "offline mode" and if it
is, then checking to ensure the version of the firewall python
library was new enough to support offline operations. This patch
will now fail with a correct error message in the scenario that
someone attempts to perform an offline operation but has a version
of the firewall python library that is too old.

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-12-01 16:22:39 -05:00
eec2ab5e75 updated chlog with 2.4.1 info 2017-12-01 15:25:24 -05:00
7f90c9d1a7 Warn on provider with network_cli (#33355)
* Warn on `provider` with network_cli

also unify action plugins

* Add to porting guide about connection warnings
2017-12-01 12:22:54 -05:00
717b6e7c1a Add mlnxos_config module (#33356)
* Add new module mlnxos_config

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

* Add unit-test for mlnxos_config module

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-12-01 17:03:02 +00:00
addb882138 VMware: make name and folder required parameter (#33135)
This fix makes name and folder as required together
parameters in vmware_guest_snapshot.
Update integration tests for vmware_guest_snapshot.

Fixes: #22644

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-01 10:51:45 -05:00
e4254da1b1 Add esxi_hostname as argument in vmware_vswitch (#30498)
Fix adds esxi_hostname as Ansible module argument for user
to define ESXi hostname to deploy VMware vSwitch.

Fixes: #24647

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-01 20:49:37 +05:30
f5a2e26ffd Fix junos cliconf commit api (#33458)
*  In order to maintain a single api call across
   netconf and cli transport from module code change
   signature of commit api to accept genric args.
*  Fix doc string
2017-12-01 19:11:54 +05:30
5b5d767c0b apt_rpm: PEP8 compliancy and documentation changes (#33431)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-01 08:19:35 -05:00
dc112a03dd Small correction to import_role documentation (#33285)
* Small correction to import_role documentation

* Correct line length - pep8, E501
2017-12-01 20:58:31 +10:00
4c29396217 Add dnf and yum commands in "Installation" section (#33369)
* Add dnf and yum commands in "Installation" section

Even though the command is very simple, it's good to be able to c&p it.
There were already commands for apt, emerge, pip, even direct installation
from git, so adding Fedora/RHEL/CentOS examples is reasonable.

Since yum is not installed by default on any supported Fedora releases
(F26 and F28 currently), recommend dnf.

* Tiny edit
2017-12-01 02:19:08 -08:00
dd6532b29a Add limit for new password in gitlab_user (#33374)
Fixes: #29399

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-01 12:38:44 +05:30
89b65e81d1 fix typo in failure message (packaging/apt) (#33444) 2017-12-01 07:42:59 +01:00
fe702b48a5 Fix network_cli connection issue (#33420)
*  Copy play_context in network_cli connection class
2017-12-01 10:13:07 +05:30
0d5b1a1567 added version added 2017-11-30 22:21:25 -05:00
b7e4cfed82 Updated mail callback with config options (#33409) 2017-11-30 22:21:04 -05:00
5fa25a0288 Adds fixes to bigip_asm_policy (#33440)
Integrates some upstream changes that were made and fixes several
spacing and testing errors
2017-11-30 15:50:07 -08:00
7bd0af15d2 Enhance empty __init__ code-smell to check module_utils (#33438)
Empty __init__ will allow us to use python namespaces with all of these
files.  That may be something we want to take advantage of for allowign
them to be expanded by user dirs.  Also might be needed for AnsiballZ or
other wrapper enhancements in the future.
2017-11-30 15:47:38 -08:00
8e6ebae8bd Make include_x inheritance more congruent with docs (#32769)
* draft making tags congruent with include_x

* remove ability to 'inline tags' for new inc keys

* generic inheritance

* fix typo

* pepe
2017-11-30 16:16:10 -06:00
e499bccbaa Port some tests away from nose as examples (#33437)
We don't need to use both nose and pytest.  Once we get rid of all uses
of nose we can remove the extra dependency
2017-11-30 14:04:09 -08:00
c35a562345 Add idempotency and import/export support to zabbix_template (#33362)
* Add idempotency and import/export support to zabbix_template

Adds idempotency to the template update functions and check mode,
also adds the ability to dump and import json template
configurations.

* Fix issue clearing groups from template

When an empty list is provided for group names, all groups associations
should be cleared from the template. Previous behavior caused the
template to be associated to all existing groups if an empty list
was provided.

* Fix undefined variable references

* Add example importing template from ansible variable

Document a sample template import with bare minimum structure.
No items or graphs are added, only 1 application is added to the
template.
2017-11-30 15:49:12 -05:00
e957760d52 updated pamd rule args regexp to match file paths also (#33432)
* Added . and / to rule args regexp

Things like pam_echo.so file=/etc/foo.txt weren't being matched and
causing incorrect change counts.  Adding / and . fixed that.

Fixes #33351

* pamd: test argument with value

Relates #33351
2017-11-30 15:32:02 -05:00
e0c94aa6a7 yum: PEP8 compliancy and documentation changes (#33424)
This PR includes:
- PEP8 compliancy changes
- documentation changes
2017-11-30 13:32:05 -05:00
52a8644a15 Additionally template args in role_include that affect role loading (#33386)
This fixes many issues with role_include by correctly templating and
saving fields which affect role loading in the args for the role include.
2017-11-30 10:52:28 -05:00
35acae7ea7 Fix eos integration test failure (#33407)
Fixes #33406
Fixes #33405

*  Fix typo in network_cli for sendonly
*  Send `abort` to remote device in case configuration fails
*  Fix indentation issue in eos_static_route integration test

*  Revert network_cli change
2017-11-30 20:47:05 +05:30
d7ca068c3f [cloud] Typo fixes for ec2 dynamic inventory (#32957) 2017-11-30 09:58:30 -05:00
61cc8b2356 [cloud] Skip StackPolicy when operating on ChangeSets in CloudFormation module (#33401)
Really, the Policy only works on 'create' and 'update'.

(rm my outdated comments too)
2017-11-30 09:08:30 -05:00
1cc86167dd fix the return value of route53_zone (#33403)
All the values currently documented as return values are returned inside a 'result' key.
So if you registered the output of the task as 'output', then you would need to do 'output.result.zone_id' instead of 'output.zone_id'.
This commit fixes that so that you can do 'output.zone_id'.
2017-11-30 08:59:43 -05:00
04877f4969 Support basicConstraints in openssl_csr (#32632) 2017-11-30 19:20:45 +05:30
1ca7929f96 VMware: Add support for numCoresPerSocket (#33149)
This fix adds support for hardware parameter 'numCoresPerSocket'
in vmware_guest module. Also, adds integration tests for this change.

Fixes: #20406

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-30 08:44:31 -05:00
390a17f0eb Update ISSUE_TEMPLATE.md 2017-11-30 13:19:07 +00:00
7209b7f060 VMware: Add integration test for vmware facts (#33404)
This fix adds integration tests for vmware_guest_facts.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-30 16:19:53 +05:30
3a3a63ce46 Update debconf example (#33397)
'true' needs to be quoted as a string, otherwise it is stored as boolean and ends up getting capitalized to 'True' when presented to debconf
Subsequent install of oracle-java8-installer fails with "oracle-license-v1-1 license could not be presented"

ansible version: 2.3.1.0

Actual: value: true
    debconf-show oracle-java8-installer
    * shared/accepted-oracle-license-v1-1: True

Expected: value: 'true'
    debconf-show oracle-java8-installer
    * shared/accepted-oracle-license-v1-1: true
2017-11-30 18:07:11 +10:00
dbc60e7b91 Add Github handle to cloudscale_sever module author field (#33354) 2017-11-30 17:54:59 +10:00
a12e1bfced stat: added information about get_md5 deprecation to porting guide (#33334)
* stat: added information about get_md5 deprecation to porting guide

* Edit
2017-11-30 10:14:34 +10:00
cdf660ba1b make instance_monitoring: false take effect (#33233)
* make `instance_monitoring: false` take effect

Fixes #33200
2017-11-30 10:12:43 +10:00
4b4c1fdb13 Fix memory_reservation typo in docker_container module (#33375) 2017-11-29 19:01:49 -05:00
16081d2751 Add keycloak_client module for administration of Keycloak clients (#31716)
Allows administration of Keycloak (http://www.keycloak.org/) clients via the Keycloak REST API
2017-11-29 16:44:35 -05:00
1b31e34d7c Remove provider from iosxr user tests (#33394) 2017-11-29 22:36:51 +01:00
6e36354740 Update version numbers for the release 2017-11-29 12:12:44 -08:00
81ea114bff Update github_release.py (#33390)
Documentation fix. The module "github" does not exist.
2017-11-29 19:50:13 +00:00
63231457a1 Update links in become.rst (#33383) 2017-11-29 19:48:33 +00:00
96afaa8b5c Fixes for BIG-IQ (#33363)
Various fixes to correct the BIG-IQ sdk args, and remove common
bigip stuff if requested in bigiq modules. Will move this to
separate module includes at a later time.
2017-11-29 15:58:29 +00:00
bada3afee9 Adding module enos_config and its UT files (#33081)
* Adding module enos_config and its UT files

* Removing trailing line

* Removing trailing lines

* Editing enos_module.py to fix build errors

* Removing blank lines in end

* Updating enos_config.py based on review comments

* Adding one more blank line

* Removing training white space

* Removing test_enos_config_force method from UT

* Updating documentation

* Comments by John, Remove version_added: "2.5"
2017-11-29 15:17:04 +00:00
fec39ba1f2 Vyos CliConf refactor (#33348)
* Refactor VyOS to use cliconf

* Use show configuration commands on get_config

* Remove debug statement

* Construct command/answer/prompt if needed and fix commit comments

* Convert command/prompt/answer to bytes
2017-11-29 11:39:29 +01:00
6732be3e62 VMware: fix hw_guest_ha_state fact (#33318)
Set  hw_guest_ha_state as None if `vm.summary.runtime.dasVmProtection` isn't printable/json-able. So if vm.summary.runtime.dasVmProtection is defined, return
vm.summary.runtime.dasVmProtection.dasProtected.
2017-11-29 09:44:23 +05:30
ef37a7fbd6 Fixing iosxr return documentation in module. (#33311) 2017-11-29 09:12:10 +05:30
aa7bd8bc11 Port AnsibleModule deprecate and warning tests to pytest (#33162) 2017-11-28 18:43:24 -05:00
a1da3dc997 Auth to become (#33319)
* terminal.on_(de)?authorize -> terminal.on_(un)?become

* Update network_cli

* Readd on_(de)?authorize as wrappers

* Update tests
2017-11-28 16:28:58 -05:00
53d9f9ffae Allow PDB to enter post mortem. fixes (#31086) 2017-11-28 13:10:08 -08:00
ff938bfdd5 Reset persistent connection only if it is active (#33238)
Fixes #33237

Add check to reset connection only is persistent socket
file exist

Fix review comments
2017-11-29 00:52:12 +05:30
3a2c1541ca Fix tests as filters syntax in recently modified integration tests (#33346) 2017-11-28 12:26:45 -06:00
84b8f674a7 Fix py3 docs build (#33345)
* Open file in binary mode to support py3 writes using bytes

* Update sort filter to use an attribute, so that py3 can sort dictionaries
2017-11-28 12:05:19 -06:00
449a0f33e1 Fix ConfigParser.set error in vmware_inventory (#31643)
Fix adds default 'vmware' section in configuration,
when this section is not found.

Fixes: #31549

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-28 22:52:59 +05:30
22d983c5c1 get_option instead of internal dict (#33191)
* get_option instead of internal dict

* fix slack issue

* not a pugin, revert get_option
2017-11-28 12:00:22 -05:00
9e9f2b9ad5 Added userns support on docker_container module Fixes #20648 (#22195)
* added userns support on docker_container module

* Fixes #20648 - changed 'version_added' of userns_mode to 2.3 from 2.2

* version_added 2.5
2017-11-28 16:54:19 +00:00
6749a39dbe Change cliconf get() method signature with explicit args (#33341)
* Change cliconf get() method signature to explicit args instead of *args and **kwargs

* updates doc string
2017-11-28 21:40:58 +05:30
0592fd47bc selinux: check if policy exists before switching (#31834)
* selinux: check if policy exists before switching

* Check the policy dir
2017-11-28 11:09:24 -05:00
452028ab7d Issue 19612 os router to allow adding interface by port ip (#30409)
* check if need update for internal port

* validate port ip

* os_router modified in local

* my_os_router.py tested upto port not found

* tested need update

*  default port attached with subnet getting deleted

* update happened with subnet and port id but rerun update=true?

* update working with portid converted subnetid for match checking

* tested and worked

* extra debug commnets cleaned up

* os_router with port ip tested fine

* deleted test files used wq for my development

* interface type changed for backward compatibility

* check if need update for internal port

* validate port ip

* os_router modified in local

* my_os_router.py tested upto port not found

* tested need update

*  default port attached with subnet getting deleted

* update happened with subnet and port id but rerun update=true?

* update working with portid converted subnetid for match checking

* tested and worked

* extra debug commnets cleaned up

* os_router with port ip tested fine

* deleted test files used wq for my development

* check if need update for internal port

* validate port ip

* os_router modified in local

* my_os_router.py tested upto port not found

* tested need update

*  default port attached with subnet getting deleted

* update happened with subnet and port id but rerun update=true?

* update working with portid converted subnetid for match checking

* tested and worked

* extra debug commnets cleaned up

* os_router with port ip tested fine

* deleted test files used wq for my development

* interface type changed for backward compatibility

* interface type changed for backward compatibility

* restoring requirement.txt which was deleted accidentally

* isinstance instead of type and white space removal

* trailing spaces removal

* multiple space after keyword 379,441

* fail.json interface type and deug msg changes

* test for membership should be 'not in'
2017-11-28 09:46:08 -05:00
9b5bd4094f zabbix_host: fix various idempotency problems (#33138)
* reorder interfaces handling for force=no, making sure it works when no interfaces are specified in the module parameters
when no interfaces are specified on update, use existing interfaces obtained from API.
check whether visible_name is set in check_all_properties; if not set as module parameter, no comparison is necessary.
Check if description is set as module parameter before comparing as well

* link_templates need the same treatment

* add inventory update checks and simplify update procedure

* make specifying proxy optional on update (keeping it as is when not specified), as well

* pep8 fixes

* add tls_*-checks for updates and make tls_*-options actually optional
2017-11-28 09:37:50 -05:00
34f965addd New module: Issue NITRO requests to a Netscaler instance (network/netscaler/netscaler_nitro_request) (#33091)
* Add netscaler_nitro_request module

* Make changes as requested.

* Fix whitepsace in EXAMPLES block.

* Set module changed status according to operation performed.
2017-11-28 14:16:01 +00:00
2114278947 DatacenterFactsModule for HPE OneView (#32701)
* Added support to Datacenter resources in HPE OneView

* Adjusting comments in oneview_datacenter_facts

* Adding no_log on the documentation

* Using Pytest to Oneview DatacenterFactsModule tests
2017-11-28 13:49:51 +00:00
bb3991218e VMware: Add debug details for error (#33337)
This fix adds debugging details for 'no folder found' error.
This will allow to debug the user's setup easily.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-28 17:58:12 +05:30
717193b67f Fix integration test failures due to wrong files paths to ficture and (#33329)
missing ssh port
2017-11-28 14:58:42 +05:30
08f1d1972e correctly document random doc range (#33308)
* correctly document random doc range

fixes #33226

* Edited for clarity.
2017-11-28 01:26:36 -08:00
a773bd7ad5 openssl_publickey: Ensure format OpenSSH is idempotent (#33264)
Currently the check() method for idempotence only assumes the public
key is under the form of a PEM file when its not always the case.

The module openssl_publickey allows one to generate OpenSSH format
publickey. This leads to idempotence not being detected.
2017-11-28 14:08:47 +05:30
341e79b604 Removes 'md5' as it only compares two hashes. (#33286)
Removing 'md5' checksum checking as simply comparing current and desired publickey does the expected job.

Signed-off-by: Satyajit Bulage <sbulage@redhat.com>
2017-11-28 13:51:17 +05:30
e65001ee22 cloudstack: fix spelling of "affinity_type" (#33231)
The previous spelling, "affinty_type" is marked as deprecated and will
be removed in Ansible 2.9. Both spelling are mutually exclusives.
2017-11-28 07:46:43 +01:00
819f9ee8fa Add port arg to establish ssh connection in nxos_file_copy (#33304)
* Add port arg to establish ssh connection in nxos_file_copy

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

* resolve kedar's comment
2017-11-28 10:54:23 +05:30
a18b7d9b01 Bug | Error message being swallowed in azure_rm_common.py (#33298) 2017-11-27 22:03:41 -05:00
b10859c192 Adds missing url, public_ip_address, and port keys to cluster dict #33279 (#33288)
Adds missing keys to _collect_facts function
2017-11-28 11:57:49 +10:00
783a09d105 Fix failure to adjust my name when doing copy pasta (#33322) 2017-11-27 19:09:05 -06:00
1b0c445846 removed Queen's english from documentation 2017-11-28 10:03:36 +10:00
8386201242 add deprecation for stat get_md5 (#33002) 2017-11-27 18:58:55 -05:00
4fe08441be Deprecate tests used as filters (#32361)
* Warn on tests used as filters

* Update docs, add aliases for tests that fit more gramatically with test syntax

* Fix rst formatting

* Add successful filter, alias of success

* Remove renamed_deprecation, it was overkill

* Make directory alias for is_dir

* Update tests to use proper jinja test syntax

* Update additional documentation, living outside of YAML files, to reflect proper jinja test syntax

* Add conversion script, porting guide updates, and changelog updates

* Update newly added uses of tests as filters

* No underscore variable

* Convert recent tests as filter changes to win_stat

* Fix some changes related to rebasing a few integration tests

* Make tests_as_filters_warning explicitly accept the name of the test, instead of inferring the name

* Add test for tests_as_filters_warning

* Update tests as filters in newly added/modified tests

* Address recent changes to several integration tests

* Address recent changes in cs_vpc
2017-11-27 17:58:08 -05:00
fd4a6cf7ad Add python level locale handling back (#31339)
locale.setlocale() call removed in 6b5291d68f
is actually needed by time.strptime(). AnsibleModule() changes both: environment
variables and python level locale settings so both need to be reset.
2017-11-27 16:52:24 -05:00
cbf28c20cb Add Support for Mellanox switches: first module: mlnxos_command (#33121)
* Add Support for Mellanox switches: first module: mlnxos_command

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

* Add cliconf support for mlnxos

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

* 1- Fix short description, 2- remove waitfor

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

* remove usage of check_args

Signed-off-by: Samer Deeb <samerd@mellanox.com>
2017-11-27 20:55:08 +00:00
bb38e34fc5 add prequisites for ubuntu dev env (#30713) 2017-11-27 14:58:13 -05:00
16bcb0393e dev_guide: format code in testing_units_modules.rst (#33009)
* dev_guide: highlight Python code snippets

* dev_guide: use monospace for inline source code

* dev_guide: use links for classes and methods

Methods and classes prefixed with :method: and :class: will become
links once we have documentation for the relevant classes and methods.

Thanks to Toshio for pointing that.
2017-11-27 14:41:53 -05:00
7b19c28438 nxos_vrf_interface fix (#33249)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-27 22:56:39 +05:30
25a465ffcb loopback doesn't support passive_interface (#33252)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-27 22:56:16 +05:30
b611c92626 Fix incomplete sentence in serverless module docs 2017-11-27 11:40:31 -05:00
3a2a1e054f Fix include in loop when stategy=free (#33094) 2017-11-27 11:02:47 -05:00
e65ef09aa9 - Fix authentication failure with paramiko when using password mode (#33303)
- break out of loop when paramiko stream is closed
2017-11-27 14:17:17 +01:00
0e0470bc49 Fix typo in examples section for elasticsearch_plugin module. (#33301) 2017-11-27 16:16:56 +05:30
54466fa809 Update facts module to present ansible_friendly tags dictionary on returned nat gateways (#33294) 2017-11-27 16:51:38 +10:00
817a5efff9 Fix css of elbow indentation for firefox (#33225) 2017-11-27 13:13:17 +10:00
8bc74443ad Add option for specifying dc2.large as node type (#33281)
* fixes #33280

adds option for dc2.large node type

* shortens node_type choices line
2017-11-27 09:42:42 +10:00
1a546711e1 cs_vpc: add new argument clean_up (#33278)
* cs_vpc: add new argument clean_up

* docs cleanup
* extend tests and increase coverage

* change default for clean_up to None

* extend tests
2017-11-26 11:28:32 +01:00
c800048e93 Adding extends_documenation_fragment in crypto/* (#33253)
All crypto modules uses file common arguments to specify generated file
permissions. This commits aims to add the extends_documentation_fragment
in the doc so it is automatically stated.
2017-11-25 22:50:28 +01:00
1f9e84fdd4 cs_serviceoffer: remove unused code and improve test coverage (#33276) 2017-11-25 11:58:38 +01:00
e197a94f2b Add resizefs param in lvol (#31132)
This fix allows user to specify resizefs in logical volume extension.
Fix placement of new option, document.

Signed-off-by: Tim Rightnour <root@garbled.net>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-25 07:12:58 +00:00
32635577a3 openssl_publickey: Do not fail on empty existing file (#33255)
Currently during the check phase, the code considers the file to be
a public key if the file exist - which is not necessarily true.

This commits aims to ensure that the file is actually a publickey else
returns false for the check.
2017-11-25 03:29:06 +00:00
748107d369 Type manipulation (#28446)
* add type manipulation

* update for py3

* add tests for list to dict

* Add dict to list tests

* Update tests to search for regex in response

* pep8 clean up

* update Exception for py3

* update test to be py2/3 compat

* update for py26 compat

* potential fix for py3 and py26

* potential fix for py3 and py26 take2

* add new line to kick off shippable

* remove cache file created

* fix filter name

* add space for shipable
2017-11-24 15:26:29 -05:00
3d63ecb6f3 Refactor junos modules to Use netconf and cliconf plugins (#32621)
* Fix junos integration test fixes as per connection refactor (#33050)

Refactor netconf connection plugin to work with netconf plugin

* Fix junos integration test fixes as per connection refactor (#33050)

Refactor netconf connection plugin to work with netconf plugin
Fix CI failure
Fix unit test failure
Fix review comments
2017-11-24 12:04:47 +05:30
0c75f00248 Config_module_changes (#30507) 2017-11-24 00:52:46 -05:00
1e46e65103 Fixed typo in aws_api_gateway.py documentation (#33247)
Gateway spelt wrong.
2017-11-24 13:31:38 +10:00
e822271d1a Allow delivery delay to be 0 (#33241) 2017-11-24 11:35:58 +10:00
2ece86fba1 Split up cloud tests to avoid 1 hour CI limit. 2017-11-23 02:33:56 -08:00
7adf91997d cloudstack: new module cs_serviceoffer (#33060) 2017-11-23 07:25:56 +01:00
e4194b20db Azure create virtual machine with an Availability Set associate (#32535)
* add availability set for vm

* add test

* add import

* fix

* add test assert and output

* fix lint and version added

* add null check

* fix mirror

* fix mirror
2017-11-22 20:53:53 -08:00
3129cbb9e1 [WIP] Add option to ipa_user for setting expiration date (#32369)
* Fixes #32058

* version_added
2017-11-22 21:29:46 -05:00
18a4cd3985 draft implicit localhost docs (#31840)
* draft implicit localhost docs

* updated per feedback

* corrected docs to follow desired behaviour

* Edits
2017-11-22 19:13:56 -05:00
a05bbb8a1b Update location of facts.py on module dev documentation (#32209)
* Update location of facts.py

I spent some time trying to find out where it was, since it's a 404 on a google search.

* Edits
2017-11-22 15:26:27 -08:00
be00d93eb4 update with implicit localhost (#33146)
* update with implicit localhost

* Minor edit
2017-11-22 14:48:40 -08:00
b865ddedac Change the default ansible-test docker image. 2017-11-22 14:47:30 -08:00
33ce1e1886 Documented use of ANSIBLE_STRATEGY variable (#32973)
Change-Id: I4a14520c14a9d93f06b235eb79720fc674e20cb5
2017-11-22 14:47:21 -08:00
633119df75 Disable flakey win_msg integration test. 2017-11-22 14:47:01 -08:00
f8a51355c7 Update playbooks_blocks.rst (#31088)
fix "block:" being referenced as "blocks:"
2017-11-22 14:40:41 -08:00
6674b8e155 Changed Indentation (#31031)
The children 'northeast', 'northwest', 'southwest' weren't properly indented in yaml code.
2017-11-22 14:39:24 -08:00
283fee90a7 Unifying wording and formatting of all include and import modules (#31938)
* Unifying wording and formatting of all include and import modules

* Changes based on comments from dharmabumstead

* Removed instances of the term ‘Ansible Engine’

* Removed instances of term ‘Ansible Engine’

* Updated term

* Updated wording

* Updated wording

* Removed the term ‘Ansible Engine’
2017-11-22 14:05:29 -08:00
496ce388ab documentation: render nested return dicts for more then one level (#33143)
* Render nested return value documentation for more then one level
in the generated webdocs.

* Remove unnecessary code and cleanup

* Implement recursive option documentation

* Build elbow intendation style for options and return documentation
2017-11-22 16:53:53 -05:00
673ec2cb78 Add changes to succeeded/failed tests to the 2.4 porting guide (#33201)
* Add changes to succeeded/failed tests to the 2.4 porting guide

* Edit for grammar and clarity
2017-11-22 16:14:31 -05:00
d8ae4dfbf2 Adding aliases for field attributes and renaming async attribute (#33141)
* Adding aliases for field attributes and renaming async attribute

As of Python 3.7, the use of async raises an error, whereas before the use
of the reserved word was ignored. This adds an alias field for field attrs
so that both async and async_val (interally) work. This allows us to be
backwards-compatible with 3rd party plugins that may still reference Task.async,
but for the core engine to work on Py3.7+.

* Remove files fixed for 'async' usage from the python 3.7 skip list
2017-11-22 12:35:58 -08:00
23f8833e87 fixed up get_options in AnsiblePlugin to use the correct plugin name 2017-11-22 15:35:31 -05:00
1ee511f82c Use an abspath for network inventory ssh key path. 2017-11-22 11:10:22 -08:00
9de76693b7 ovirt_vms: Fix issue in stopping stateless VMs (#32955)
Because of wrong condition defined, the module will wait indefinitely for
snapshots to be removed and will finally timeout after the timeout interval.
2017-11-22 19:51:20 +01:00
ee46cfd690 cloud: ovirt: fix missing doc nfs mount_options (#33140) 2017-11-22 19:49:45 +01:00
e763146f0c cloud: ovirt: Don't require all iscsi params to be passed to host (#33133) 2017-11-22 19:47:51 +01:00
3a6fad38fa Update vyos completion in network.txt. 2017-11-22 10:07:30 -08:00
887f227994 Use vyos/1.1.8 in CI. 2017-11-22 10:02:25 -08:00
218987eac1 ANSIBLE_SSH_USETTY configuration option (#33148)
* Allow the user to circumvent adding -tt on ssh commands to help aid in
debugging ssh related problems.
* Move config to the plugin
* Set version_added
* Change yaml section to "connection"
* Fix ssh unit tests
2017-11-22 11:19:43 -05:00
aa42a2680e Netscaler - less intrusive algorithm for syncing cs_policybindings (#32855)
* use less intrusive algorithm for syncing cs_policybindings

* fix some pylint and pep issues

* fix one other pylint and pep issue

* fix two lines between methods
2017-11-22 15:56:12 +00:00
69575e25d0 shuts down persistent connections at end of play run (#32825)
This change will now track any created persistent connection and shut it
down at the end of the play run.  This change also includes an update to
properly honor the reset_connection meta handler.
2017-11-22 15:30:06 +00:00
9d56ffa4ed Add a 'validate' parameter to the juniper_package network module (#33155)
* Add a 'validate' parameter to the juniper_package module to optionally skip checking configuration compatibility against the JUNOS package being installed

* Fixing CI failure - E309 version_added for new option (validate) should be 2.5

* Revert previous change and add version_added to 'validate' parameter
2017-11-22 20:58:01 +05:30
c0fced0d89 Add 'datacenter' keyword arg to secrets.py (#24598)
Fix adds documentation about 'datacenter' in environment variable which is required for gce.py dynamic inventory.
2017-11-22 15:17:29 +00:00
429af90027 Aci build url (#33017)
* ACI Buid URL: Refactor how ACI modules dynamically build proper URL.

* Remove MIM URl from update

* fix missing comma
2017-11-22 15:07:39 +00:00
e50f931cf3 restore hostpattern regex/glob behaviour
they are back to matching both groups and hosts when they are a glob/regex

fixes #32906
2017-11-22 09:33:38 -05:00
e4300e8d54 fixed syntax error (#33185) 2017-11-22 14:00:17 +00:00
3b0ff03547 Fix typo in gce_labels documentation (#33186) 2017-11-22 13:55:48 +00:00
4c94c6f9ba cloudscale_server: add timeout param and increase default timeout (#33088)
* Improve error message in cloudscale_server module

Fix punctuation and add the full contents of "info" to the output in
case of failed API calls. This is useful in case of connection timeouts
and other error conditions where there is no response body available.

* Increase timeouts in cloudscale_server module

Increase the timeouts to not fail in case the API calls take a bit
longer than usual. The default timeout of fetch_url is 10s which is
quite short. Increase it to 30s. The timeout for waiting for a server
change is increased as well as it calls the API in a loop. Therefore
this value should be larger than the API timeout.

* Send API parameters as JSON in cloudscale_server module

Use JSON to send the POST data to the API instead of an urlencoded
string. Urlencoding is not really a good match for some Python
datatypes.

This fixes an issue when submitting a list of SSH keys which did not get
translated properly.

* Fix typo in cloudscale_server documentation

* cloudscale_sever: Replace timeout const by api_timeout param

Replace the static TIMEOUT_API constant by a user configurable
api_timeout parameter. Also eliminate the TIMEOUT_WAIT constant by
2*api_timeout. This means that the timeout to wait for server changes is
always double the timeout for API calls.

* Use Debian 9 image for cloudscale_server tests
2017-11-22 10:30:31 +01:00
122398b081 Fix firewalld to fail with correct version numbers (#33144)
Currently it's reporting an inverted version number about the
python library and it shouldn't be. Also it's currently claiming
python2 as a requirement, which it is not.

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-11-22 08:39:06 +01:00
c6bb6c72cc Fix anomalous backslashes and enable pylint test. 2017-11-21 23:22:51 -08:00
9735a70059 Fix invalid string escape sequences. 2017-11-21 20:59:08 -08:00
6ac9d05de6 Removing obsolete version behavior callout notes - initial pass. (#33172)
* Removing obsolete version behavior callout notes - initial pass.

* Fixed example text punctuation.

* Removed old version callout.

* Typo fix

* Updated example

* Fixed awkward sentence

* Fixed incorrect feature name

* Reinstated current version callout
2017-11-21 20:14:27 -08:00
b6c401ccc8 Fixes #30863: support update source_address_prefix in azure_rm_securitygroup (#32614)
* compare source address prefix

* remove useless quote
2017-11-21 22:20:00 -05:00
1cc7f9f2ea Fix typo in EXAMPLES for azure_rm_resourcegroup_facts (#27019) 2017-11-21 22:13:42 -05:00
048c51c1f8 Ensure that readonly result members are serialized (#33169)
* fix for breaking metadata change in various Azure Python SDK bits; some members were marked `readonly` for validation, which the default msrest serializer ignores. Added `keep_readonly` flag to serializer call to ensure they're preserved.
2017-11-21 20:12:32 -05:00
6f4731ef11 Force all tests to run on docker image updates. 2017-11-21 15:02:07 -08:00
e8910e4bc6 removed superfluous type field from RecordSet constructor (#33165)
* fixes breaking change in Azure DNS Python SDK 1.2.0
* no apparent functional change (the arg appears to have been superfluous all along)
2017-11-21 14:39:01 -08:00
96b4f8b5c3 Update BOTMETA.yml 2017-11-21 14:17:12 -08:00
1ca0c0e7f7 Consolidate IAM policies into fewer, larger policies (#33122)
Due to IAM limits allowing at most 10 policies per group,
need to reduce the number of total policies in use.
2017-11-21 17:15:31 -05:00
0962a0d816 win_updates: removed scheduled task to use become instead (#33118)
* win_updates: removed scheduled task to use become instead

* updated docs to remove scheduled task info

* fix issue with only installing last update in group
2017-11-21 13:49:38 -08:00
ebd08d2a01 jsonify inventory (#32990)
* jsonify inventory
* smarter import, dont pass kwargs where not needed
* added datetime
* Eventual plan for json utilities to migrate to common/json_utils when we split
  basic.py no need to move jsonify to another file now as we'll do that later.
* json_dict_bytes_to_unicode and json_dict_unicode_to_bytes will also
  change names and move to common/text.py at that time (not to json).
  Their purpose is to recursively change the elements of a container
  (dict, list, set, tuple) into text or bytes, not to json encode or
  decode (they could be a generic precursor to that but are not limited
  to that.)
* Reimplement the private _SetEncoder which changes sets and datetimes
  into objects that are json serializable into a private function
  instead.  Functions are more flexible, less overhead, and simpler than
  an object.
* Remove code that handled simplejson-1.5.x and earlier.  Raise an error
  if that's the case instead.
  * We require python-2.6 or better which has the json module builtin to
    the stdlib.  So this is only an issue if the stdlib json has been
    overridden by a third party module and the simplejson on the system
    is 1.5.x or less.  (1.5 was released on 2007-01-18)
2017-11-21 13:41:27 -08:00
bd5dc01d65 AWS S3: fix method call for fakes3 S3 backend (#33085)
* AWS S3: fix method call for fakes3 S3 backend

Fixes #33083

Signed-off-by: Marc-Aurèle Brothier <m@brothier.org>

* Auto append port based on proto

Signed-off-by: Marc-Aurèle Brothier <m@brothier.org>
2017-11-21 15:51:16 -05:00
07bb7684b0 Add PS dependency analysis to ansible-test. 2017-11-21 12:30:16 -08:00
3456bba631 make vars only group declarations an error
fixes #32860
2017-11-21 14:40:02 -05:00
e45c763b64 Fix invalid string escape sequences. 2017-11-21 10:03:34 -08:00
f9cd50411f Enable Python 3.7 in ansible-test. 2017-11-21 09:24:04 -08:00
782aca9a72 fix typo
(cherry picked from commit 36a3388a3a)
2017-11-21 11:00:07 -05:00
be7a3adeb7 Fix ovs integration tests initial setup (#33136) 2017-11-21 13:34:27 +01:00
de1bfde2d8 Add very basic openvswitch_bridge integration test (#33134)
More to come on this module.
2017-11-21 13:24:48 +01:00
88a14465b7 VMware: clarified vmware_guest UUID usage (#33125) 2017-11-21 10:44:21 +00:00
fbe946719e VMware: Add fix for setting manual MAC address (#32885)
This fix adds ability to set MAC address maunally. Before adding
any MAC address, the value is validated. If value is not valid, then
MAC address is set to vCenter generated MAC address.
Also, added integration tests for this change.

Fixes: #21161

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-21 09:47:05 +00:00
3c1fb9b547 Use custom rpm repo script for dnf testing (#32737)
* Use custom rpm repo script for dnf testing

* Switch to a jinja2 test
2017-11-21 09:40:58 +01:00
0ddf092ae3 Add new filter to parse xml output for network use cases (#31562)
* Add new filter to parse xml output for network use cases

Fixes #31026
*  Add parse_xml filter
*  Add documentation for parse_xml filter

* Edited for clarity.

* Fix review comment and add unit tests

* Fix unit test CI failure

* Fix CI issues

* Fix unit test failures

* Fix review comments

* More copy edits.
2017-11-21 12:16:18 +05:30
50c9f91060 zabbix_host: make host_groups actually optional on update (#33099)
* When updating a host, host_groups need not necessarily be specified.

* Also set host_groups for later equivalency tests
2017-11-21 07:19:01 +01:00
5f5e150771 Limit paramiko to < 2.4.0 for python 2.6. 2017-11-20 21:19:11 -08:00
d9a52db17d Adding RPC attribute parameters to junos_rpc network module (#32649)
* Adding RPC attribute arguments to `junos_rpc` network module.

* Specifying module argument version.

* Fixing DOCUMENTATION block.

* First attempt at new test fixture.

* Updated RPC_CLI_MAP.

* Use `result` instead of `reply`.
2017-11-21 10:45:13 +05:30
e24e771b88 To set the right CLI context i.e. Privilege (Enable) Mode soon after connection. (#32966) 2017-11-21 10:43:18 +05:30
47eaf662a7 Fix issues with ironware modules (#33068)
- authorize was not working as expected
 - use end command to get to exec context instead of exit
 - error due to mishandling of global variable _DEVICE_CONFIG
2017-11-21 10:41:05 +05:30
d372cea2f8 VMware: change default host_filter to gueststate (#32839)
This fix changes default value of host_filter in vmware_inventory.py
and vmware_inventory.ini to 'runtime.powerstate' from 'guest.gueststate'.
This change is added as 'guest.gueststate' requires vmware tools to be
installed on given VM, which may not be the case everytime.

Fixes: #25086

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-21 04:32:18 +00:00
a6feadbba3 VMware: Allow users to specify DVS switch version (#32925)
This fix adds option to specify DVS Switch version which is tuneable parameter.
2017-11-21 04:29:52 +00:00
400d821fdb Added eagerzeroedthick disk option to disk spec for vmware_guest (#28121)
* Added eagerzeroedthick disk option to disk spec
* Updated docstrings for vmware_guest disk
* VMware: Integration test for disk type

Signed-off-by: Steve Jacobs <sjacobs@brokencrew.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-21 03:11:28 +00:00
a6e425e5a3 ios_logging: change IOS command pipe to section to include (#33100)
This improves compatibility with older IOS devices which do not
support "section" but "include" has been supported for a lot longer.
2017-11-21 03:09:51 +00:00
a9b15ce881 Scan group_vars/host_vars in sorted order 2017-11-20 21:57:42 -05:00
97dfa1d335 Added datacenter parameter to examples (#32539) 2017-11-20 21:44:27 -05:00
677aca1cc7 Add Python 3.7-dev to the default docker image. 2017-11-20 18:09:58 -08:00
cf662ed74b win_reboot: change to sample system uptime instead of checking port status (#31767)
* win_reboot: change to sample system uptime instead of checking port status

* added connection timeout back in as now we can manually set it per connection.

* some pep8 fixes

* fix up error message on timeout in case an exception wasn't fired

* Changed doc to English (US) and simplified uptime check

* moved conn timeout over to new config connection options
2017-11-20 16:01:22 -08:00
0b128e2e29 Add tests for ec2_vpc_route_table (#32036)
* Add tests for ec2_vpc_route_table

Initial tests for ec2_vpc_route_table ready for boto3 porting

* Turn AWS connection information into a YAML block
2017-11-20 17:31:08 -05:00
95a2140f4b Use show command to support wider platform set for nxos_interface module (#33037)
* Use show command to support wider platform set

* Fix unit tests
2017-11-20 18:59:09 +00:00
c64eed16fe letsencrypt: update agreement default to newest gathered 2017-11-20 12:09:11 -05:00
ddaf8673b9 botmeta: letsencrypt: add me as a maintainer (#33041) 2017-11-20 12:03:06 -05:00
560a3c3681 zabbix_host: Fix doc implying creation would work when in reality only an update does (#33095) 2017-11-20 17:34:13 +01:00
8e56133b3d updated docs to reflect list/loop lack of sqashing (#32522)
* updated docs to reflect list/loop lack of sqashing

* fix dnf

* line len
2017-11-20 10:16:19 -05:00
e19c994f57 fix item var in delegation (#32986)
* fix item var in delegation

* fixed task ref

* in case no loop
2017-11-20 09:29:55 -05:00
6bca5e5a4a add lookups to config system (#33026)
* add lookups to config system

use etcd as proof of concept

* some doc updates
2017-11-20 09:24:10 -05:00
53cbc9f6ee fix localized set options in callbacks
signature changed but callbacks overriding it were not updated

fixes #33006
2017-11-20 09:22:48 -05:00
84117e57ba nxos: 32 bits AS in as-dot format not recognized by regexp asn_regex (#30569)
* added test for 32 bits AS

* Lint not happy.
2017-11-20 10:09:16 +00:00
a9afb1e19e hacking/test-module: fix Python 3 compatibility (#33069)
Exception was:
Traceback (most recent call last):
  File "./hacking/test-module", line 268, in <module>
    main()
  File "./hacking/test-module", line 249, in main
    (modfile, modname, module_style) = boilerplate_module(options.module_path, options.module_args, interpreters, options.check, options.filename)
  File "./hacking/test-module", line 155, in boilerplate_module
    if module_style == 'new' and 'ANSIBALLZ_WRAPPER = True' in module_data:
TypeError: a bytes-like object is required, not 'str'
2017-11-20 08:03:55 +01:00
0324d5e850 Updating parameter to match vmware_portgroup parameter (#33059) 2017-11-19 15:01:45 +00:00
5962337332 Add additional facts to the fact gathering of vmware (#31632)
Adds facts about datastores, esxi_host, vm files, ha state, question, is_template, consolidation status and hw_files. Also, adds integration tests for vmware fact enhancement.
2017-11-19 14:52:38 +00:00
bf7f56f413 Fix typo in usage of encrypt_string command (#32961) 2017-11-19 14:20:57 +00:00
0334b3fd99 check if existing network is VDS and has port attribute (#31322) 2017-11-19 13:47:57 +00:00
ce04f6e961 Fix junos integration test fixes as per connection refactor (#33050) 2017-11-19 11:52:04 +05:30
2995439fbf Fixed simple typo on galaxy page (#33033) 2017-11-18 10:22:58 +01:00
c212c2e19f Add itertools.product as a filter (#32991) 2017-11-17 21:35:51 -05:00
781219bcfd Fix and re-enable zypper* integration tests in CI. 2017-11-17 14:37:40 -08:00
1980c9e773 Pass proper error value to to_text (#33030) 2017-11-17 16:00:29 -05:00
2ef438c962 Improve zypper refresh/clean for opensuse images. 2017-11-17 12:59:48 -08:00
b3e4a88b90 consul_session: PEP8 compliancy and documentation changes (#33000)
THis PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-17 21:48:36 +01:00
c94d57311c Adds bigip_vcmp_guest module (#33024)
This module can be used to manage guests on a vCMP provisioned BIG-IP.
vCMP is a hardware-only feature, therefore this module cannot be used
on the VE editions of BIG-IP.
2017-11-17 12:11:52 -08:00
67d5e1d3e7 fixed .loads error for non decoded json in Python 3 (#32065)
* fixed .loads error for non decoded json in Python 3

* fixed .loads error Python 3.5 - refactor code to one line

* fixed .loads error python 3.5 - mod to use to_text instead of .decode as per reviewer comment
2017-11-17 14:51:13 -05:00
5f36932adf pacemaker_cluster: PEP8 compliancy and doc changes (#33001)
This PR includes:
- PEP8 compliancy changes
- DOcumentation changes
2017-11-17 20:34:29 +01:00
a314faae0e cs_firewall: use list type for cidr (#33020) 2017-11-17 20:17:42 +01:00
37d8242e44 Fix hang on unkown host key for network_cli (#32937)
* Don't prompt on force_persistent either

* Propagate persistence setting to lower paramiko connection
2017-11-17 13:09:02 -05:00
1a2eb319fe Fix 'maintainers' key in BOTMETA for 'unixy' 2017-11-17 12:36:04 -05:00
a5c9726502 Unit tests: share common code (#31456)
* move set_module_args to units.modules.utils
* unit tests: reuse set_module_args
* unit tests: mock exit/fail_json in module.utils.ModuleTestCase
* unit tests: use module.utils.ModuleTestCase
* unit tests: fix 'import shadowed by loop variable'
2017-11-17 09:17:07 -08:00
71a6dcdf3e Fixes eos sending 'None' to device (#33015)
* Fix network_cli sometimes sending 'None' to device

* Also fix `--become-method=enable`
2017-11-17 11:33:54 -05:00
5747bf34d1 Network ACI: Add integration tests for several module (#33016) 2017-11-17 16:19:13 +01:00
a40ce1ba5e Handle virtual machine config element gracefully (#32924)
This fix uses '_get_vm_prop' API to handle virtual machine related
properties rather than failing with AttributeError.
Handled invalid request type while connecting to ESXi server, which
is caused by malformed request.

Fixes: #32477

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-17 06:02:30 +00:00
90e9969fb5 VMware: handle error for MarkAsTemplate API (#32968)
This fix adds exception handling for 'MarkAsTemplate' API
in vmware_guest module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-17 01:09:52 +00:00
8c5ee3461e win_stat: simplified tests before next change (#32996) 2017-11-16 16:22:57 -05:00
cfbe9c8aee [cloud] Add IPv6 support for ec2_vpc_subnet module(#30444)
* Add integration test suite for ec2_vpc_subnet

* wrap boto3 connection in try/except

update module documentation and add RETURN docs

add IPv6 support to VPC subnet module

rename ipv6cidr to ipv6_cidr, use required_if for parameter testing, update some failure messages to be more descriptive

DryRun mode was removed from this function a while ago but exception handling was still checking for it, removed

add wait and timeout for subnet creation process

fixup the ipv6 cidr disassociation logic a bit per review

update RETURN values per review

added module parameter check

removed DryRun parameter from boto3 call since it would always be false here

fix subnet wait loop

add a purge_tags parameter, fix the ensure_tags function, update to use compare_aws_tags func

fix tags type error per review

remove **kwargs use in create_subnet function per review

* rebased on #31870, fixed merge conflicts, and updated error messages

* fixes to pass tests

* add test for failure on invalid ipv6 block and update tags test for purge_tags=true function

* fix pylint issue

* fix exception handling error when run with python3

* add ipv6 tests and fix module code

* Add permissions to hacking/aws_config/testing_policies/ec2-policy.json for adding IPv6 cidr blocks to VPC and subnets

* fix type in tests and update assert conditional to check entire returned value

* add AWS_SESSION_TOKEN into environment for aws cli commands to work in CI

* remove key and value options from call to boto3_tag_list_to_ansible_dict

* remove wait loop and use boto3 EC2 waiter

* remove unused register: result vars

* revert az argument default value to original setting default=None
2017-11-16 14:58:12 -05:00
23b1dbacaf Config continued (#31024)
* included inventory and callback in new config

allow inventory to be configurable
updated connection options settings
also updated winrm to work with new configs
removed now obsolete set_host_overrides
added notes for future bcoca, current one is just punting, it's future's problem
updated docs per feedback
added remove group/host methods to inv data
moved fact cache from data to constructed
cleaner/better options
fix when vars are added
extended ignore list to config dicts
updated paramiko connection docs
removed options from base that paramiko already handles
left the look option as it is used by other plugin types
resolve delegation
updated cache doc options
fixed test_script
better fragment merge for options
fixed proxy command
restore ini for proxy
normalized options
moved pipelining to class
updates for host_key_checking
restructured mixins

* fix typo
2017-11-16 13:49:57 -05:00
46c4f6311a [cloud] Add retries/backoff to ec2_vpc_subnet module (#31870)
* Allow backoff for describe_subnets

Improve exception handling to latest standards

* Add integration test suite for ec2_vpc_subnet

* Add test for creating subnet without AZ

Fix bug identified by test

Fixes #31905
2017-11-16 13:09:42 -05:00
4f38c1fea0 Fix another bytes issue (#32951)
If results are bytestrings, they need to be cast to text before hitting
json.loads()
2017-11-16 13:05:24 -05:00
c1c0ad5d69 Fix eos call to prompt() (#32985)
* Remove the check entirely

The response tells you to authorize anyway
2017-11-16 12:48:53 -05:00
212d96f779 Add a little more explanation to ovirt_vms cloud_init parameter (#32977) 2017-11-16 12:40:57 -05:00
6e4aa49a31 No hardcoding roadmaps (#32981) 2017-11-16 08:03:10 -08:00
e4f7ff1244 Update ROADMAP.rst to include 2.5 roadmap (#32979) 2017-11-16 07:37:10 -08:00
7556ac91e5 [cloud] Allow ec2_lc module to use volume_type for block devices (#32421)
* Allow ec2_lc module to use volume_type for block devices

Makes ec2_lc consistent with ec2, ec2_ami, ec2_vol etc.

* Add deprecation message for device_type
2017-11-16 10:28:41 -05:00
921cc6d650 [cloud] New module elasticache_facts (#30492)
New module for obtaining facts from elasticache clusters

Fixes #30373

* Removed unnecessary boto3 and exception checking

* AnsibleAWSModule checks for lack of boto3
* boto3_conn handles error checking of AWS connection
2017-11-16 10:20:56 -05:00
60b29cf57d [cloud] Follow up on FIXMEs in ec2_ami & ec2_ami tests (#32337)
* Several tests were marked as FIXME and should have been fixed with
the boto3 move.

* Improved tags output. Add purge_tags option (default: no)

* Allow description and tags update

* Return launch_permissions

* Allow empty launch permissions for image creation

* Empty launch permissions should work the same way for image
creation as no launch permissions

* Cope with ephemeral devices in AMI block device mapping

* Ephemeral devices can appear in AMI block devices, and this information should be returned

* Fix notation for creating sets from comprehensions
2017-11-16 10:14:20 -05:00
1eae3b6b59 Fix example with proceccModel in win_iis_webapppool (#32971)
The attribute processModel.userName have to be written i camelCase. Otherwise this fails silently.
2017-11-16 15:31:10 +01:00
3fee14a49b I cannot keep up with all VMware related issues 2017-11-16 14:58:29 +01:00
f6b188e521 Fail module if unknown state passed to set_vm_power_state (#32631) 2017-11-16 08:44:27 +00:00
aef50eaa40 Integration Tests only: nxos_udld, nxos_udld_interface, nxos_vxlan_vtep_vni (#29143)
* it cases for vxlan_vtep_vni, udld

* platform specific testing

* fix vxlan_vtep for n7k

* fix udld_intf setup

* skip udld tests on titanium n7k

* remove hardcoding

* fix udld tests for titanium
2017-11-16 07:39:59 +00:00
ba0aade8f4 Fix ios_config integration test failures (#32959) 2017-11-16 12:37:47 +05:30
e61bcc3438 Provide clear error message after failure (#32928) 2017-11-16 06:42:27 +00:00
2d4c4e09db Add vmware fact about 'Cores Per Socket' (#32881)
This fix adds new fact - 'Cores Per Socket' about vmware guest machine.
Also, adds integration test for this change.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-16 06:22:32 +00:00
208208ab8f Fix nxos_snmp_host bug (#32916)
* Fix nxos_snmp_host bug

* Enable nxos_snmp_host tests
2017-11-16 06:17:42 +00:00
3f3c526026 Removes deprecated "append" param from snat pool (#32953)
This param was deprecated in 2.4 and slated for removal in 2.5. This
patch removes it.
2017-11-15 19:35:09 -08:00
aeb896375d New module for managing IPA Sub CA (#25640)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-16 02:21:59 +00:00
6506c4bfbc update azure maintainers list 2017-11-15 16:53:23 -08:00
ae148d1a21 Make everything in default callback use display (#32811)
Noticed that there was just one old and one new place in the default
callback that did not use Display.display() to show data.  Changed those
two places so that everything is uniform.
2017-11-16 10:53:01 +10:00
0c1f493b6c Adds module for managing bigip device connectivity (#32950)
This module is a critical part of the HA process for BIG-IPs.
2017-11-15 16:51:51 -08:00
1bc4940ee1 added powershell symlink util helper (#27153)
* Added symbolic link util for powershell

* updated module_util license to BSD
2017-11-16 10:12:02 +10:00
e16e6313c7 windows: fix for checking locked system files (#30665)
* fix for checking locked system files

* moved functions to share module util and created tests

* fixed windows-paths test based on win_stat changes
2017-11-15 19:04:03 -05:00
5e20fd0943 removed psobject to hashtables that were missed (#32710)
* removed psobject to hashtables that were missed

* fix up win_region change
2017-11-15 14:51:16 -08:00
d21f32168f win_module_utils: updated license to BSD to follow standards (#32949) 2017-11-15 14:43:34 -08:00
ef21038dd5 Fix ansible-test race calling get_coverage_path. 2017-11-15 12:57:18 -08:00
21c8ab537b getattr() with no default is an AttributeError if missing (#32946) 2017-11-15 15:40:32 -05:00
3089892e59 sl_vm: PEP8 compliancy and documentation changes (#32657)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-15 15:22:32 -05:00
53c5e5bf5a Fix 'save' parameter in asa_config (#32761) 2017-11-15 15:22:02 -05:00
97b844e660 letsencrypt: fix doc version_added (#32943) 2017-11-15 20:47:13 +01:00
f71816c192 Add support for generating full chain certificates from LetsEncrypt. (#22074)
* Add support for generating full chain certificates from LetsEncrypt.

* Add version_added field to document for fullchain option.

* Update version_added for fullchain option to be 2.4.

* Fix Pep-8 violation.
2017-11-15 20:31:26 +01:00
115f6f6732 Added helm release updates. Fixes #32545. (#32593) 2017-11-15 14:24:44 -05:00
86dc3c09ac Fix vault --ask-vault-pass with no tty (#31493)
* Fix vault --ask-vault-pass with no tty

2.4.0 added a check for isatty() that would skip setting up interactive
vault password prompts if not running on a tty.

But... getpass.getpass() will fallback to reading from stdin if
it gets that far without a tty. Since 2.4.0 skipped the interactive
prompts / getpass.getpass() in that case, it would never get a chance
to fall back to stdin.

So if 'echo $VAULT_PASSWORD| ansible-playbook --ask-vault-pass site.yml'
was ran without a tty (ie, from a jenkins job or via the vagrant
ansible provisioner) the 2.4 behavior was different than 2.3. 2.4
would never read the password from stdin, resulting in a vault password
error like:

        ERROR! Attempting to decrypt but no vault secrets found

Fix is just to always call the interactive password prompts based
on getpass.getpass() on --ask-vault-pass or --vault-id @prompt and
let getpass sort it out.

* up test_prompt_no_tty to expect prompt with no tty

We do call the PromptSecret class if there is no tty, but
we are back to expecting it to read from stdin in that case.

* Fix logic for when to auto-prompt vault pass

If --ask-vault-pass is used, then pretty much always
prompt.

If it is not used, then prompt if there are no other
vault ids provided and 'auto_prompt==True'.

Fixes vagrant bug https://github.com/hashicorp/vagrant/issues/9033

Fixes #30993
2017-11-15 14:01:32 -05:00
f93b98661a Add new module manageiq_policies (#32892)
* Add new module manageiq_policies

* add return example
2017-11-15 19:33:00 +01:00
7414405063 Back to 'prompt' for authorize prompt (#32932) 2017-11-15 12:22:14 -05:00
c56dcb7afa module_utils: vmware.py. Incorrect chain of attributes to obtain snapshots from virtual machine (#32669)
* Update vmware.py
Incorrect chain of attributes to obtain snapshots from virtual machine. Module 'vmware_guest_facts' uses method 'gather_vm_facts' of vmware.py and always gets empty list of snapshots.
* Added test for module vmware_guest_facts. Checked VM snapshots.
* Fixed tests for vmware_guest_facts. Ignored certificate for vmware_guest_snapshot module.
2017-11-15 16:00:22 +00:00
cabd7f078b Fix ec2_snapshot_facts traceback if a snapshot has been deleted (#32217) 2017-11-15 10:56:49 -05:00
53ade280a3 clarify docs for --flush-cache (#32799) 2017-11-15 10:40:35 -05:00
e2fef7beed nxos_facts: cdp support (#31202)
* nxos_facts get CPD neighbor

* nxos_fact: cdp support

* remove blank spaces

* add ansible_net_neighbors cdp informations
2017-11-15 07:38:19 -07:00
af0d42885d Remove GGabriele jedelman8 2017-11-15 14:37:16 +00:00
900abcddb3 Integrated publickey import and removal in iosxr_user (#32115)
* Integrated publickey import and removal in iosxr_user

* Fixed linting issues

* Added version added for publickeyfile option

* Added quotation marks to version, oops

* Added some integration tests, added some checks to prevent aggregate users with public keys.

* Added some integration test files

* Created mutually exclusive public_key and public_key_contents versions of config

* Modified tests to use both methods and test more logins

* Added supports for aggregates

* Incorporated provider auth

* Fixed some lint issues

* Fixed a YAML lint issue

* Implemented catches for unconfigured providers.

* Fixed catches, hopefully

* Another test

* Added groups support so you can add users to multiple groups

* Trailing whitespace
2017-11-15 07:34:36 -07:00
64f9ced750 ACI Module: Bug Fix for Python versions > 3.6.0 (#32660) 2017-11-15 07:20:08 -07:00
239464f804 ec2_key: add a test for the force option (#32748)
* ec2_key: test force option

* ec2_key: changes requested via review comments
2017-11-15 22:53:41 +10:00
d5e247243f ec2_key - clean up examples (#32714)
* ec2_key - clean up examples

* ec2_key: remove unnecessary example
2017-11-15 22:51:46 +10:00
9e15f82aa3 cloudstack: update copyright header (#32922) 2017-11-15 12:55:46 +01:00
43f89004a0 Refactor vmware_guest_facts (#31448)
This fix adds refactoring to vmware_guest_facts module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-15 01:56:50 -05:00
6c400d3bc8 Add new module - digital_ocean_certificate (#26632)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-15 01:33:01 -05:00
7170c26399 Ironware module_utils cliconf plugin minor change (#32920)
As per refactor in connection framework PR 32521
pass socket_path to Connection class while initiating
cliconf connection
2017-11-15 11:49:43 +05:30
52c87c4691 Fix typo in network_cli to fetch command prompt (#32899) 2017-11-15 09:06:28 +05:30
6472723ba8 Add missing ansible-test --remote-terminate support. (#32918)
* Expand ansible-test --remote-terminate support:

- windows-integration
- network-integration

These commands previously accepted the option, but did not support it.

* Terminate windows and network instances when done.
2017-11-14 17:08:48 -08:00
e5b3f60a74 Enos connection issue (#32895)
* Changes due to connection issues

* Adding changes pertaining to connection issue of Ansible

* Review comments of Kedar

* Adding EOL PyLint issue

* Fixing pep8  and yamlint issues
2017-11-14 16:00:16 -05:00
a1517234f6 Fix authorize: yes and become_method: enable (#32864)
* Update connection play_context when socket exists

* Don't fail on connections other than network_cli

* Fix enable prompt detection on ios & eos

* Check against "Module not found" error code, defined in modules/jsonrpc.py
2017-11-14 15:51:14 -05:00
3fedd88a9f Avoid AttributeError: internal_network on os_floating_ip (#32887)
Fixes #32884

Change-Id: I3be1dc81266b32dd8f545b743365c2bbc02dfdeb
Signed-off-by: Sorin Sbarnea <ssbarnea@redhat.com>
2017-11-14 13:42:20 -05:00
71fa60bc68 Fix prompt issue in asa terminal plugin (#32900) 2017-11-14 22:25:35 +05:30
7318b7c0b0 Keep newlines when reading LXC container config file (#32219) 2017-11-14 10:46:39 -06:00
afc460c943 tollerate 'string' descriptions 2017-11-14 11:18:48 -05:00
73d6975611 FIX: Missing space in intro_inventory.rst 2017-11-14 10:54:02 -05:00
fa764f6918 New Module vmware_host_facts (#26492)
Add new module  vmware_host_facts ,it can get remote vmware host system info like setup module

* modify ansible version
* optimized output for human readable
* add serial number get_system_facts() add ansible_product_serial
* fix pep8 issue and ansible module required format
* Use find_obj method instead get_obj
* add ansible_hostname ansible_distribution_build
* add integration test
* vmware_host_facts integration test add verify
* fix yamllint issue
* fix boilerplate test
* Update vmware_host_facts.py
* fix RETURN key's name
2017-11-14 15:41:55 +00:00
9cedb89644 Fix iosxr get_prompt return value failure (#32902) 2017-11-14 21:11:10 +05:30
49a1472656 undeprecated with_ (#32805)
* undeprecated with_
2017-11-14 10:36:41 -05:00
3ee2501c83 multiple fixes nxos (#32903)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-14 15:23:11 +00:00
177a4fb3ec Adding enos_command module and unit test (#32782)
* Adding git_command module and its UT file

* Changing Author Name and removing 2 blank lines

* Removing blank lines

* Adding enos_config and its UT files

* Removing config module as I am allowed to have only module per PR

* Work on Ganesh's Review comments

* John Review Comments on enos_command.py

* Review comments of John
2017-11-14 15:09:29 +00:00
58e255c2d9 Fix IndexError raised on galaxy-install
This patch fixes IndexError, that may be raised When trying
to install a role with `ansible-galaxy` in case of
access error to roles directory.

Issue: ansible/galaxy#149
2017-11-14 09:54:52 -05:00
992f6d8bf4 unixy maint info 2017-11-14 09:39:21 -05:00
8472a53bea Add prompt check in action plugin for network platform (#32787)
* Add prompt check in action plugin for network platform

In case of ignore_errors for a wrong configuration
the prompt is left in configuration mode and moved to
next task, if the next taks requires prompt to be
in operational state it results in failure.
Hence add a check to ensure right prompt at start of
each task run.

* Add prompt check in action plugin for network platform

*  In case of ignore_errors for a wrong configuration
   the prompt is left in configuration mode and moved to
   next task, if the next taks requires prompt to be
   in operational state it results in failure.
*  Hence add a check to ensure right prompt at start of
   each task run.
*  Fix CI issue

* Fix CI issues
Fix review comment
Change iosxr exit command to abort as per review comment
2017-11-14 17:37:52 +05:30
414eaefcb5 Fix idempotency issue for network modules. (#32838)
After the connection refactor if response value returned from
the remote device is empty in that case an `ok` return value is send
to module side code. To avoid this do not overwrite the empty response
received from remote device in `jsonrpc` reply.
2017-11-14 11:58:33 +01:00
11de330372 change inventory_hostname to ansible_host to fix test (#32890)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-14 10:44:47 +00:00
c40de24e9c fix mtu check nxos_interface (#32880)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-14 10:40:37 +00:00
c3636108bc Change netconf port in testcase as per test enviornment (#32883) 2017-11-14 15:11:44 +05:30
ceefeeb279 fix dci failure nxos (#32877)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-14 07:17:21 +00:00
a17244f896 ios_vlan DI module (#32490)
* ios_vlan DI module

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

* Integration test

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

* comment out testcases since the image is not available in dci

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

* add aggregate test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-14 05:50:17 +00:00
1360ae6518 nxos_config and nxos_facts - fixes for N35 platform. (#32762)
* update nxos_facts to handle errors in n35 platform

* switch show commands to output text

* replace basestring which is not supported in python3

* do it like the other modules: use string_types

* incorporate PR review
2017-11-14 05:03:37 +00:00
f891e92581 ec2_key: fix fingerprint generation in tests (#32817) 2017-11-14 14:40:55 +10:00
e23928cb41 ec2_key: document return values (#32813) 2017-11-14 14:39:54 +10:00
6957339fce [Docs] Fix old YAML style in async docs (#31421)
* [Docs] Fix old YAML style in async docs

This patch fixes some old-style YAML in the documentation for
asynchronous playbooks.

* Removed hard-to-localize colloquialisms
2017-11-13 18:32:37 -08:00
1fe608afbf Fix for database names that contain colons
Bug fix: Permissions were not parsed correctly if the database name contains a colon (:) character. For example, a privilege string of "*.*:USAGE/`lnx-www-prod:wordpress`.*:ALL" would fail with "invalid privileges string: Invalid privileges specified: frozenset(['WORDPRESS`.*'])". This 1-line fix works around the problem.
2017-11-13 20:23:57 -05:00
f4f5c4d92a Documenting second parameter of the default filter (#31184)
* Documenting second parameter of the default filter

* Edited for clarity and grammar.

* Adding missing colon
2017-11-13 15:51:22 -08:00
ea3638b580 Add proper check mode support to the script module (#31852)
* Do not run script in check mode

Fixes #30676

* Reformat script integration test

* Add integration tests for check mode of script module

* Fix name on test

* Cleanup temp file

* win_script integration test syntaxt changes

* Add check mode tests for win_script

* Use proper variable in test

* Fail if source file does not exist

* Verify script is accessible and don't copy in check mode

Use shlex to properly split shell arguments, though a path with spaces in it still needs to be quoted in the playbook.
Add note to docs describing such.
Improve error message if file is not found indicating there may be a space in the path.

* Properly encode path now that path is split using shlex

* Allow for spaces in both path and script name

* Add unicode character test to Linux script tests

* Add Linux test for space in path to script
2017-11-13 15:33:44 -08:00
474bf208e9 syslog_json: fix typos in documentation 2017-11-13 17:11:15 -05:00
701b38ff62 Remove angstwad at his request, remove myself from things I no longer maintain (#32865) 2017-11-13 15:36:13 -06:00
414d0e92ac cloud: ovirt: ovirt_cluster.py Fix issue with non required parameter 'external_network_providers' (#32797) 2017-11-13 15:59:52 -05:00
db6a72ebf9 fixes eos connection checks and checks configured connection (#32828)
This change will check the configured connection first and then check
the local provider values.
2017-11-13 14:28:55 -05:00
b9bdb05459 fixes asa action plugin for connection=local (#32827)
* fixes asa action plugin for connection=local

This change fixes asa modules when using connection=local to load the
provider values.

* fix up pep8 issues
2017-11-13 14:24:13 -05:00
b70e48a54d fixed issues with lookup url docs 2017-11-13 13:43:19 -05:00
99d4f5bab4 Remove uses of assert in production code (#32079)
* Remove uses of assert in production code

* Fix assertion

* Add code smell test for assertions, currently limited to lib/ansible

* Fix assertion

* Add docs for no-assert

* Remove new assert from enos

* Fix assert in module_utils.connection
2017-11-13 11:51:18 -05:00
464ded80f5 Add link dest to synchronize module (#32746)
* Clean up after two recent synchronize tests

- add clean up after the last two tests in synchronize to make them
  match with the expectations in the previous tests

Signed-off-by: Robert Marshall <rmarshall@redhat.com>

* Add link-dest functionality to synchronize module

- add the link-dest option to the synchronize module code
- add tests for the link-dest option
- add documentation of the link_dest option to synchronize
- modify changed flag so it can properly work around rsync
  upstream not flagging hardlinks as a change properly in
  formatted output

Signed-off-by: Robert Marshall <rmarshall@redhat.com>

* Minor change to test
2017-11-13 11:13:25 -05:00
f49555d494 nxos_bgp_neighbor_af feature idea disable-peer-as-check (#32665)
* nxos_bgp_neighbor_af feature idea disable-peer-as-check

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

* Add unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-13 14:48:31 +00:00
e4052c1261 Add mtu option nxos_interface feature idea (#32680)
* Add mtu option nxos_interface feature idea

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

* Add unit test for mtu feature

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-13 14:48:04 +00:00
b0e7c71716 nxos_interface TypeError fix (#32114)
* nxos_inteface TypeError fix

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

* Make sure that run_commands does not list of strings for json output

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

* return default value to handle exception

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-13 10:47:20 +00:00
de8d00b401 Fix snmp bugs on Nexus 3500 platform (#32773)
* Add n35 platform support

* Fix regex bug and add snmp_location it tests

* Enable nxos_snmp_location tests
2017-11-13 08:03:06 +00:00
d97080174e Some cleanups to nxos module_utils (#32804)
* When splitting, use rsplit and 1 just in case the string has more pipe
  characters than anticipated
* When converting to text, make decoding errors an error instead of
  silently corrupting data
* When converting to text for message strings, use the default error
  handler as that is already surrogate_then_replace
2017-11-13 05:07:35 +00:00
10866bfb8b Exception handling in vmware_inventory for vcsim (#32700)
* vmware_inventory changes to support vcsim
* updated debug message per maintainer request
2017-11-12 21:29:25 -05:00
c9e6da338c update sros local action plugin to support network_cli (#32830)
* update sros local action plugin to support network_cli

This updates the sros local action plugin to only start the connection
if connection=local is specified.  This is to support network_cli
connection plugin

* fix up pep8 issues
2017-11-12 19:57:04 -05:00
a0c0076cfb added note about serial behaviour (#32461)
* added note about serial behaviour
2017-11-12 14:05:34 -08:00
faa74a8ccd Add the template lookup escaping to the 2.4 porting guide (#32760)
* Add the template lookup escaping to the 2.4 porting guide
2017-11-12 14:01:14 -08:00
5625720c64 Fix typo in documentation (#32821) 2017-11-12 09:37:22 +01:00
1a0fbd424e Remove hypen from vmware powerstate (#32295)
This fix removes hypen while comparing to current
virtual machine's powerstate.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-11 22:09:28 -05:00
e8c599b0f7 Avoid re.split as it's a bit less efficient and a bit harder to read. 2017-11-10 17:27:05 -08:00
e07cbb033f Keywords docs (#32807)
* Fixup keyword dumping

* Clarify introductory text
* Turn links in the keyword description into seealso entries in the rst.

* Have plugin_formatter cleanup trailing whitespace

The indent filter in jinja2 < 2.10 indents blank lines by default which
leads to trailing whitespace.  Cleanup after that filter.

* Edits

* Copy edit
2017-11-10 16:59:26 -08:00
54648ac3e9 updated changelog with playbookd_dir 2017-11-10 14:26:36 -08:00
57990f5c0e Correct typo on required keyword (#32790) 2017-11-10 16:21:08 -05:00
69f13bbb6c atomic_container: drop duplicate 'latest' choice (#32794)
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2017-11-10 16:21:00 -05:00
9c58827410 Better handling of malformed vault data envelope (#32515)
* Better handling of malformed vault data envelope

If an embedded vaulted variable ('!vault' in yaml)
had an invalid format, it would eventually cause
an error for seemingly unrelated reasons.
"Invalid" meaning not valid hexlify (extra chars,
non-hex chars, etc).

For ex, if a host_vars file had invalid vault format
variables, on py2, it would cause an error like:

  'ansible.vars.hostvars.HostVars object' has no
  attribute u'broken.example.com'

Depending on where the invalid vault is, it could
also cause "VARIABLE IS NOT DEFINED!". The behavior
can also change if ansible-playbook is py2 or py3.

Root cause is errors from binascii.unhexlify() not
being handled consistently.

Fix is to add a AnsibleVaultFormatError exception and
raise it on any unhexlify() errors and to handle it
properly elsewhere.

Add a _unhexlify() that try/excepts around a binascii.unhexlify()
and raises an AnsibleVaultFormatError on invalid vault data.
This is so the same exception type is always raised for this
case. Previous it was different between py2 and py3.

binascii.unhexlify() raises a binascii.Error if the hexlified
blobs in a vault data blob are invalid.

On py2, binascii.Error is a subclass of Exception.
On py3, binascii.Error is a subclass of TypeError

When decrypting content of vault encrypted variables,
if a binascii.Error is raised it propagates up to
playbook.base.Base.post_validate(). post_validate()
handles exceptions for TypeErrors but not for
base Exception subclasses (like py2 binascii.Error).

* Add a display.warning on vault format errors
* Unit tests for _unhexlify, parse_vaulttext*
* Add intg test cases for invalid vault formats

Fixes #28038
2017-11-10 14:24:56 -05:00
e7941b0d4e avoid chroot paths (#32778)
* avoid chroot paths

fixes #32764

* check name
2017-11-10 13:26:49 -05:00
7a82c49a5f Fix documentation for mount state (#32647)
* Fix documentation for mount state

Fixes https://github.com/ansible/ansible/issues/18948

Signed-off-by: Jose A. Rivera <jarrpa@redhat.com>

* Remove redundant line
2017-11-10 12:31:40 -05:00
33a704cc61 Add documentation for the aws_ssm lookup plugin. (#32763) 2017-11-10 12:15:19 -05:00
35f79370e1 mock ncclient import in test_connection.py (#32786) 2017-11-10 11:53:04 -05:00
4c58ad1266 pacman: fix closing parenthesis (#32783) 2017-11-10 09:52:40 -05:00
8a21fa2c07 remove cpuHotAddEnabled, memoryHotAddEnabled defaults from configSpec (#25202)
* add hardware.hotadd_cpu, hardware.hotadd_memory parameters
* use hotadd_{cpu,memory} paramters on create integration tests
2017-11-10 13:09:30 +00:00
4756b392ea Apply fix to allow the root resource pool of a cluster to be chosen (#31641)
Whitespace cleanup
2017-11-10 13:51:36 +01:00
639bac11d4 vmware cfg backup module (#21070)
* vmware cfg backup module
* used ansible's urllib
* pep8 changes
* pep8 changes
* added ansible metadata
* user can define also the backup filename
* fixed required_if values
* Changes for vmware_cfg_backup as per recommendation
* small changes (pep, specific imports etc)
* added import from future
2017-11-10 06:07:30 +00:00
bac759e282 fixed up typo in azure_rm_virtualmachine docs 2017-11-10 14:57:12 +10:00
9eb5921c1c fix AttributeError eos_static_route (#32779)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-10 04:48:05 +00:00
aef98fedeb Add new AWS modules to changelog 2017-11-09 22:49:45 -05:00
5ff36c3423 Enable autoloading of inventory plugins (#32709)
* Automatically loads and executes an inventory plugin specified by a standard YAML inventory config file containing a `plugin` key at its root.
* Moved inventory PluginLoader to a shared global instance.
2017-11-09 19:38:34 -05:00
abc4210a33 azure_rm_virtualmachine: add custom image support (#32367)
* azure_rm_virtualmachine: added support for specifying custom image

* Use separate parameter for custom_image, add very basic test

* missed the version_added tag for doco

* removed whitespace I accidentally left in

* merged custom image into the image dict and added more tests

* added one more test
2017-11-09 18:48:14 -05:00
85f727ad4b clean args only if needed 2017-11-09 17:21:26 -05:00
ff7c349f11 Provide details via DCI Env (#32770) 2017-11-09 22:12:50 +00:00
59d5481abb fixes to events/callbacks (#32633)
* fixes to events/callbacks

  - made note of 'not called' methods for future fixes
  - removed uncalled v2_runner_on_file_diff because dupe of v2_on_file_diff, which is called
  - removed v2_runner_on_no_hosts due to existing pb level ones, which are called
  - removed v2_on_setup, it is just a task, triggers normal task events
  - v2_on_notify is now called when a handler is notified
  - TODO: async, cleanup? and import events
    these currently occur in code that has no access to sending events

* corrected display
2017-11-09 17:12:37 -05:00
0e74731d73 Added callback that removes callback noise
for those that only want logging but no events to screen
2017-11-09 17:12:13 -05:00
6d597ac05a Update win_copy for #32677 (#32682)
* Update win_copy for #32677

enable large zip file support in win_copy

* Update win_copy.py
2017-11-10 06:34:29 +10:00
9c0275a879 Connection plugins network_cli and netconf (#32521)
* implements jsonrpc message passing for ansible-connection

* implements more generic mechanism for persistent connections
* starts persistent connection in task_executor if enabled and supported
* supports using network_cli as top level connection plugin
* enhances logging for persistent connection to stdout

* Update action plugins

* Fix Python3 RPC

* Fix Junos bytes<-->str issues

* supports using netconf as top level connection plugin

* Error message when running netconf on an unsupported platform
* Update tests

* Fix `authorize: yes` for `connection: local`

* Handle potentially JSON data in terminal

* Add clarifying detail if possible on ConnectionError
2017-11-09 15:04:40 -05:00
897b31f249 Use same TEST seperater as Shippable (#32758) 2017-11-09 18:23:10 +00:00
bed78872f9 Synchronize: Document the private_key option (#32754)
`synchronize` has supported the `private_key` option for a long time,
apparently. But for some reason it was never documented.

Today I managed to workaround the synchronize quoting bug by just using

```
private_key: /path/to/id_rsa
```

instead of

```
rsync_opts:
  - "--rsh 'ssh -i /path/to/id_rsa'"
```

So, I'll just go ahead and document this useful option ...
2017-11-09 12:49:49 -05:00
a1ea29f249 Remove jwhitbeck from BOTMETA (#32751) 2017-11-09 12:16:19 -05:00
37b0537279 Fix ios_config file prompt issue (#32744)
Fixes #23263

Add a carriage return (\r) at end on copy config
command which results in prompt on cli terminal
2017-11-09 22:43:49 +05:30
316e7939d6 [cloud] Improve aws testing and use {{ region }} var (#26892)
* Protect AWS credentials from accidental commits

* Improve documentation for IAM policies

* Update ELB tests to be multi region

Allow AZs to reflect the region in which the tests are run.

This will not work for regions with fewer than three AZs,
but those are relatively rare
2017-11-09 11:56:31 -05:00
dbadb5a014 Add details about snapshot in result (#32730)
This fix adds details about snapshots in result of
vmware_guest_snapshot, when operation is successful.

Fixes: #32154

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-09 11:42:30 -05:00
1a3037ff63 Making options of type list (fixing #32704) (#32706) 2017-11-09 10:57:27 -05:00
465b86f593 updated per combine 2017-11-09 10:02:29 -05:00
ee80215fa9 Combine lists of dicts (#32686)
* allow combine to take lists of dicts

* updated as per feedback
2017-11-09 10:02:38 -05:00
9c629f8a1c updated chlog, moved missed comment 2017-11-09 09:59:43 -05:00
76202bc7c3 removed since 1.2 2017-11-09 09:59:43 -05:00
fedd1779cc Add ISSU capability and fix workflow bug for nxos_install_os module (#32540)
* Initial issu support

* Enhance ISSU support

* Additional refactoring to simplify code flow

* Remove debugs and bug fixes

* Update doc example output

* Update provider line in task example

* Remove unneeded else clause and comments

* Fix ansible-doc errors

* Satisfy ansibot requirements

* Update header docs

* Update nxos_install_os.py
2017-11-09 14:54:19 +00:00
db749de5b8 namespace facts
updated action plugins to use new guranteed facts
updated tests to new data clean
added cases for ansible_local and some docstrings
2017-11-09 09:48:14 -05:00
e0cb54a2aa Remove myself from bot (#32574)
Remove myself (ivanvanderbyl) from bot
2017-11-09 14:09:28 +00:00
f1fe467c22 nso_config module for setting configuration in Cisco NSO (#30973) 2017-11-09 13:34:41 +00:00
4443da2d79 Remove debug (#32736)
* Make script executable
* Tidy up comments
2017-11-09 12:38:23 +00:00
4464635787 Specify branch details, add verbose, disable colour (#32731) 2017-11-09 11:43:41 +00:00
356901b72d yum: case for multilib when installing from a file (#32236) 2017-11-09 06:04:53 -05:00
38444bb76c yum: the rpm command requires newline in --qf (#32244) 2017-11-09 05:41:47 -05:00
714598e91b acl: do not remove all default entries (#32615) 2017-11-09 10:31:33 +01:00
39595771fa Integration test for git archive without update (#32390)
* Unit test for git archive without update

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

* Clean clone the repo first
2017-11-09 10:23:26 +01:00
1b26cce57e Fix platform agnostic failure for eos modules (#32712)
Platform agnostic action plugin (net_base) calls
`get_provider_argspec()` to fetch the provider specific
details for each platform. This fix adds the function in
eos module_utils and retuns a dict of provider spec.
2017-11-09 11:33:57 +05:30
437babbd07 get path from play if task does not have
fixes #28451
2017-11-09 00:50:58 -05:00
306c3508b2 Deprecate ec2_ami_find (#32501) 2017-11-09 11:38:05 +10:00
2f93b7bcb5 win_become: add info about recent admin changes (#32583)
* win_become: add info about recent admin changes

* edits from review
2017-11-09 10:02:33 +10:00
15c10981a0 win_dsc: update documentation for latest DSC changes (#32581)
* win_dsc: update documentation for latest DSC changes

* review changes
2017-11-09 10:02:17 +10:00
59c30595c1 stacki_host: PEP8 compliancy and documentation changes (#32651)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-08 23:16:49 +01:00
facbf7f14d Remove the params option from jenkns_plugin and yum_repository (#32708)
* Remove the params option from jenkns_plugin and yum_repository

It was decided that these options which override Ansible module options
from a generic, unchecked dict are an antipattern for Ansible Modules
and must be removed:

https://meetbot.fedoraproject.org/ansible-meeting/2017-09-28/ansible_dev_meeting.2017-09-28-15.00.log.html

Fixes #30874
2017-11-08 13:59:59 -08:00
80967380d3 Add error handling for user login (#32613)
This fix adds additional error handling for vmware connect
method, where username provided user does not have required
permissions to use/login ESXi.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-09 06:48:22 +10:00
8e081b7e30 Moving modules from lenovo to cnos (#31401)
* Moving modules from lenovo to cnos

* Merge conflicts

* Update cnos_conditional_template.py

Removed
180:5: E265 block comment should start with '# '
188:34: E226 missing whitespace around arithmetic operator

* Update cnos_template.py

155:5: E265 block comment should start with '# '
162:34: E226 missing whitespace around arithmetic operator

* Update cnos_vlan.py

210:1: E302 expected 2 blank lines, found 1

* Update cnos_backup.py

Adding 
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_bgp.py

Added
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_backup.py

Added a line extra

* Update cnos_command.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_conditional_command.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_conditional_template.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_factory.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_facts.py

Adding 
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_image.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_interface.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_portchannel.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_reload.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_rollback.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_save.py

Add
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_showrun.py

Add
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_template.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_vlag.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_vlan.py

Adding
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

* Update cnos_backup.py

Moving it to top of file

* Update cnos_backup.py

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Moving future and metaclass to top

* Putting condition to bye pass paramiko

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

*  Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Condition to byepass paramiko import error

* Removing unused import and white spaces

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Dealing with white space and import issues

* Update cnos_template.py
2017-11-08 19:20:50 +00:00
0b320ba15c Generate whitelist of current files using underscore variable and enable test 2017-11-08 09:32:58 -08:00
59b49329b1 Module for running templates and workflows on vDirect (#31243)
Modure for running configuration templates and workflows on Radware vDirect server
2017-11-08 16:41:44 +00:00
a06f06a9a3 Module for committing pending configuration on Radware devices (#31776)
With this module, pending configurations can be commited
on Radware ADC devices.
2017-11-08 16:41:20 +00:00
760ea4b49e apk: Override system repositories (#32689)
Override system repositories when repository option is specified. This fixes inconsistencies when using check mode.
2017-11-08 11:13:56 -05:00
6aa95ce5fd Fix ios and vyos net integration test issue (#32692) 2017-11-08 21:39:21 +05:30
9d98452032 New enos_facts, + module_utils/enos.py. modifying copyright year in rest all (#31696)
* Squashing all commits to one as suggested by John

* Adding Unit test method for the module enos_facts.py

* Pep8 and Ylint issues addressed

* Trying again to remove blank line. Some scripts are required for this.

* Bug Fixing for interfaces

* Editing for over indenting issue

* E203 whitespace before ','

* Update enos.py

Added warnings argument as to check_args method

* Update enos_facts.py

Added warnings to check_args method
2017-11-08 15:55:46 +00:00
e5dbf63b65 Fix #31694: running with closed stdin on python 3 (#31695) 2017-11-08 11:59:42 +01:00
c737e93a34 netscaler: PEP8 compliancy and documentation changes (#32653)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-08 02:27:57 -05:00
56eb997bae cs_nic: PEP8 compliancy and documentation changes (#32655)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-08 02:14:12 -05:00
4cc7a89244 Add trishna to committer list (#32663)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-08 06:46:16 +00:00
ff20ac6c52 Add ganeshrn to committer list (#32662) 2017-11-08 11:12:26 +05:30
5336d14d9d fix eos_static_route test typo (#32661)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-08 05:21:35 +00:00
57106662db Get (potentially) new composite host vars from inventory (#32606)
* Get new composite host vars from inventory

* Remove spaces from blank line
2017-11-07 23:10:00 -05:00
1fd454e5b5 Add yaml output plugin (#32246)
* Add yaml output plugin

Using YAML instead of JSON for detailed output can (IMO) improve
readability; especially for tasks with either lots of output, or
multi-line output.

* Fix yaml output plugin documentation

 * Added copyright header to yaml.py
 * Moved mention of yaml output plugin to `New Modules` section

* Use AnsibleDumper in yaml output plugin

Also moved the `represent_scalar` setup into the init method. As a
global statement, it was causing exceptions trying to get an `id`
field that does not exist.

* Remove trailing whitespace

* Remove useless json.loads/dumps from yaml output
2017-11-07 22:00:11 -05:00
431042da8e OC Module - Disable complex list merging. Fixes #31196 (#31387)
* Minor fix.  Fixes #31196

* Disable complex list comparison and merge. Fixes #31196
2017-11-07 21:52:43 -05:00
9b896ca712 add kedarX to commiters list (#32659) 2017-11-08 08:03:37 +05:30
90b867b7a5 bigip_virtual_server: PEP8 compliancy and documentation fixes (#32652)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-07 20:52:30 -05:00
134b9f50c3 Do not set a default value for description in the iam_role module. (#32629) 2017-11-07 20:14:13 -05:00
d22627d944 handle ignore_errors in loop
ensures we get both a templated ignore_errors and a
correct 'summary' result for ignore_errors when used in loops

fixes #32384
2017-11-07 19:53:03 -05:00
680d06d1ab [cloud] remove ec2_asg usage of Python base logging - fixes #32476 (#32508)
* replace logging with module.debug in ec2_asg

* Make module global in ec2_asg.

* Fix the debug messages

* pep8
2017-11-07 16:46:49 -05:00
2b08fd3fb8 ovirt_cluster: Add external network providers (#32433) 2017-11-07 16:01:42 -05:00
10bfa89f06 zfs: PEP8 compliancy and documentation changes (#32648)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-07 15:33:32 -05:00
c93ddf5473 Move profile and region checking to module_utils.ec2 (#31921)
* Move profile and region checking to module_utils.ec2

Remove ProfileNotFound checking from individual modules

There are plenty of `if not region:` checks that could be removed,
once more thorough testing of this change has occured

The ec2_asg, iam_managed_policy and ec2_vpc_subnet_facts modules
would also benefit from this change but as they do not have tests
and are marked stableinterface, they do not get this change.
2017-11-07 13:56:17 -05:00
cd80f26035 Add mkrizek as a commiter (#32644) 2017-11-07 18:51:58 +01:00
d60a1f39d6 Update committers (#32646) 2017-11-07 12:44:55 -05:00
ddae61aab0 Update people section of committer guidelines. 2017-11-07 09:29:25 -08:00
4fe2c8fece added missing sam 2017-11-07 12:20:43 -05:00
5a1006452b Fix typos 2017-11-07 17:45:07 +01:00
8478b5b6f8 add shertel as a commiter (#32639) 2017-11-07 11:11:53 -05:00
d3e16fa15b win_defrag: Fixes to documentation (#32634) 2017-11-07 16:35:54 +01:00
dace517133 Fix error in YAML example 2017-11-07 16:30:53 +01:00
9d156c6cb1 docker: PEP8 compliancy and documentation changes (#32628)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-11-07 15:35:50 +01:00
4afb3bf76c Fix small typo (#32625) 2017-11-07 14:22:15 +01:00
585ecc2867 gce: PEP8 compliancy Fixes (#32311)
* gce: PEP8 compliancy Fixes

* Documentation updates

* Documentation updates

* Documentation update
2017-11-07 14:19:17 +01:00
6ddc7c8524 Pep8 puppet.py (#32313)
* fix pep8 issue in consul_kv.py

* fix pep8 issue in aos_login.py

* fix pep8 issue in puppet.py

* Restore legacy-files.txt
2017-11-07 14:00:39 +01:00
d21a6aa147 Ansible system module: sanity pep8 fixes (#32314)
* Ansible system module: pep8 fixes

* Clean up documentation

* Blank line change not required by PEP8

* Update legacy-files.txt

* Documentation updates

* Update documentation

* Documentation update
2017-11-07 13:46:55 +01:00
48ab1a1334 eos_static_route DI module (#32587)
* eos_static_route DI module

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

* Integration test

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

* Add net_static_route test

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

* Validate ip address

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-11-07 11:13:03 +00:00
1857d11034 ovirt: PEP8 compliancy fixes (#32316)
* ovirt: PEP8 compliancy fixes
This PR includes:
- PEP8 compliancy fixes

Signed-off-by: Satyajit Bulage <sbulage@redhat.com>

* Improve documentation

* Update documentation

* Update documentation

* Update documentation

* Fix legacy-files.txt

* Update documentation

* Fix PEP8 issue

* Fix PEP8 issue

* Fix another PEP8 issue

* More typo fixes

* Yet another PEP8 typo
2017-11-07 11:50:33 +01:00
a2d34e914e PEP8 fixes: Ansible system module and playbook base.py (#32322)
* Ansible files module sanity pep8 fixes

* Ansible system module and playbook base.py

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Undo empty lines not required by sanity checks

* Various changes

* Various changes

* Various changes

* Various changes

* Undo blank lines not required by sanity checks

* Various changes

* Various changes

* Various changes

* Various changes

* Various changes

* Undo blank line changes not required by sanity checks

* Various changes

* Various changes

* Various changes

* Various changes

* Various changes

* Missing piece after merge

* Blank lines

* Blank line

* Line too long

* Fix typo

* Unnecessary quotes

* Fix example error
2017-11-07 09:38:59 +01:00
a5da2e44a1 ironware_config module (#32187) 2017-11-07 08:22:22 +00:00
806f43a9c0 ironware_facts module (#32186) 2017-11-07 08:19:56 +00:00
6d1d06e0f7 Fix junos netconf port issue in integration test (#32610) 2017-11-07 11:41:51 +05:30
2bf6ac6c78 Adds bigip_device_trust module (#32608)
This module can be used to manage trusts between two bigip devices.
2017-11-06 20:14:49 -08:00
4eccb447cf Lookup plugin for the OpenShift Container Platform. 2017-11-06 19:21:52 -05:00
8a24116dcb remove experimental warning from become/runas (#32604)
* updated docs/changelog accordingly
2017-11-06 15:37:45 -08:00
Rob
8b3ca4c537 Fix returning module parameters for iam_role (#30669)
* remove iam_role= from module.exit_json() to match return docs.

* Add back old iam_role= for backwards compat
2017-11-06 16:34:51 -05:00
a026d64c08 [cloud] Option to add description to iam_role (#32582)
* Option to add description to role

* set default to remove conditional
2017-11-06 15:12:12 -05:00
6b9faaf90e [cloud][docs] Improve exception handling guidelines for AWS modules(#30745)
Better document what exceptions to handle, when and why.
Describe how to handle client auth exceptions, and that
AWSRetry retries on `XYZNotFound` exceptions.
2017-11-06 15:05:32 -05:00
8ecc7bc4a1 minor become/runas cleanup (#32564)
* removed/blobified unused PInvoke stuff
* added try/finally around impersonation to ensure RevertToSelf is called in all cases
* added a few explanatory comments
2017-11-06 11:24:04 -08:00
16e98c8c5b Fix a typo in the examples (#32599) 2017-11-06 19:39:10 +01:00
f79a6040ab Create a short license for PSF and MIT. (#32212)
Modify selectors, six, and urls.py (match_hostname) to use the short license
2017-11-06 10:25:30 -08:00
749197b436 Updating the options to allow decryption and new save_when. (#32602) 2017-11-06 18:20:12 +00:00
708829fab9 Use to_native when validating proxy result (#32596)
* Use bytes directly instead of converting to text
2017-11-06 09:20:07 -08:00
930fde5f70 vmware_dvs_portgroup: Add configuration of vlan trunk, security settings and port policies and integration tests (#32298)
* Add configuration of vlan trunk, security settings and port policies, and tests

This commit adds the following capabilities to the
vmware_dvs_portgroup module:
- Support for VLAN trunk portgroup
- Support for all security settings (promiscuous, forged transmits & mac
address changes)
- Support for all the port specific policies
- port specific policies match the vCenter UI behaviour (for instance:
block override is enabled by default)
- Cleanup and use of proper API entities not root entities
- Integration testing

* Cleanup of docs and adding more examples
2017-11-06 11:46:51 -05:00
03a06fdc0f module_utils/manageiq: add find_collection_resource_or_fail 2017-11-06 11:41:57 -05:00
4bcab82cdb 2.5 roadmap documentation (#32333)
* 2.5 roadmap

* Update ROADMAP_2_5.rst

Minor edits for caps.

* Formatting

* Network Documentation wording & formatting

* Remove smart quotes

* Update ROADMAP_2_5.rst

* Update ROADMAP_2_5.rst

* Update ROADMAP_2_5.rst

* Update ROADMAP_2_5.rst
2017-11-06 08:40:32 -08:00
c11c882345 Update vmware integration tests (#31273)
* Boilerplat fixed
* Standardized vcsim variables in all modules

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-06 11:28:15 -05:00
28b86b1148 **Temporary**
The copy module has been failing since we changed the default of the
file module's follow parameter.  Make this change to try to get tests
working and then we'll diagnose and fix this afterwards.
2017-11-06 07:56:01 -08:00
91ce5c70d3 Fix duplicate type keyword 2017-11-06 14:10:17 +01:00
fcab13a668 PEP8 fixes: Ansible source_control module (#32323)
* PEP8 fixes: Ansible source_control module

* Some more cleanup changes

* More cleanups

* Fix copyright statement
2017-11-06 14:00:33 +01:00
d9ef167e78 PEP8 set the line limit (#32578)
Highlight that the line length is limited to 160 characters now, since the test will fail if the line is longer than 160 chars.
2017-11-06 13:38:54 +01:00
dc40efc13f ipa_dnsrecord: Allow for TXT Records (#32427)
* ipa_dnsrecord: Allow for TXT Records

* Clarified version.

- Added note about in which version TXT-record was added.
2017-11-06 04:15:18 -05:00
9e59ccca9f Updated changelog to include latest Windows become changes 2017-11-06 15:09:35 +10:00
978a979566 win_dsc: improved parameter handling (#31556)
* win_dsc: improved parameter handling

* removed uneeded try/catch leftover from testing

* removed undeed return values

* added custom DSC to fully test out casting

* fix up codestyle issues

* using new Requires ps version check

* fixed up error message check on earlier ps version
2017-11-06 09:44:04 +10:00
55bc8291d6 Add the uid-/gidnumber as an argument to ipa_user (#32561)
* Adds the uid-/gidnumber as an argument to ipa_user

* Fixes issue #32555
* Adds the uidnumber which is called UID in the IPA web interface most
often, but called uidnumber in the JSON-API of IPA's `user_mod`
call.
* Adds the gidnumber which is called GID in the IPA web interface, but
called gidnumber in the JSON-API
* Code changes analogue to PR #32369

* Removed wrong version_number from telephonenumber

Remove wrongly placed version_number information

* Put arguments in different lines

Following PEP-8 the uidnumber and gidnumber are on different lines in the update method
2017-11-05 22:53:36 +01:00
a8ab1a0b20 yum: use the C locale when screen scraping (#32203) 2017-11-05 09:28:05 -05:00
162ca628d4 fix typo/ URI error (#32531)
URI uses singular: "Listener"

Using current command Listener(s) - plural generates the following error:
PS C:\windows\system32>   winrm enumerate winrm/config/Listeners
WSManFault
    Message
        ProviderFault
            WSManFault
                Message = The WS-Management service cannot process the request. The resource URI does not support the Enumerate operation.

Error number:  -2144108495 0x80338031
The WS-Management service cannot process the request because the WS-Addressing Action URI in the request is not compatible with the resource.
2017-11-05 11:46:07 +00:00
b5f1fc850b Allow user to specify maintenance DB (#32510)
This fix allows user to specify alternative maintenance DB
required for initial connection in Postgresql_db module.
Also, adds pep8 related fixes.

Fixes: #30017

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-05 05:44:40 -05:00
9a6615a905 Make newer stuff PEP8 compliant (#26951)
So we fixed everything that was not a module to be PEP8 compliant, and
in the meantime these 5 new files were additionally disabled from PEP8
testing.

This fixes it.

Also update Copyright/License statements.
2017-11-05 11:27:41 +01:00
769881198f Sets sane defaults for follow in file modules (#31430)
* Sets sane defaults for follow in file modules
* Add a note in replace for removal of `follow` option
2017-11-03 17:13:58 -07:00
15b492ca57 win_become: get admin token and fix async (#32485)
* win_become: make it easier to become with an admin token

* Fixed up pep8 whitespace

* fix for Server 2008

* Added support for async and become on newer hosts and fix warnings
2017-11-03 16:14:48 -07:00
9cfd0a58b0 Use region derived from get_aws_connection_info() in dynamodb_table to fix tagging bug (#32557) 2017-11-03 16:15:53 -04:00
dbfe22ac4f Add Digital Ocean inventory script maintainer and tagged support by community (#30801) 2017-11-03 14:24:54 -04:00
e65045f51f Add echo option to pause module (#32205)
* Enable ECHO in prompt module

Fixes #14160

* Add option for controlling echo behavior with pause module

* Improve option logic

Allow all options to be used in varying combinations, rather than being mutually exclusive.
Always capture output and return it, even when a time limit is set.

* Add version_added to docs

* Improve behavior of echo output

Set a few more flags to allow interactive deletion and hide control characters.
Do not capture or echo input when a time is set. Tried to get this working nicely, but ran into too many issues/oddities to keep it. Maybe in the future if there is demand for capturing/echoing input when a time is set I'll take another pass at it.
2017-11-03 13:32:36 -04:00
6ce3972f21 Script to generate DCI Coverage (#32550) 2017-11-03 16:28:26 +00:00
6bc3f98eee Adding missing arguments: 'values' and adding default value for 'tags' argument in AWS Data Pipeline (#32517) 2017-11-03 10:05:23 -04:00
06363f6ede Removes bigip_snmp from skip file (#32530) 2017-11-03 07:00:49 -07:00
45e35be4c1 iam.py: return iam.role dict when creating roles (#28964) 2017-11-03 09:55:27 -04:00
53940670fd Removes bigip_qkview from skip file (#32529) 2017-11-02 21:27:11 -07:00
c76ce54aee Add -f/--list_files option to the ansible-doc command for faster list (#32524)
Add -f/--list_files option to the ansible-doc command for faster listing of plugins and show where they were found.
2017-11-02 21:29:55 -04:00
45787f6ef2 Removes bigip_provision from skip file (#32525) 2017-11-02 17:40:41 -07:00
5b1db00b65 win_service: quoted path fix (#32469)
* win_service: fix for path in quotes

* Added tests to verify behaviour doesn't regress
2017-11-03 09:55:03 +10:00
be4a0f1f3d Set example ansible.cfg *includes_static options to default value 2017-11-02 19:42:08 -04:00
c34c1b6ebd Fix typo/link in plugins/cache 2017-11-02 19:40:09 -04:00
86e75865c3 fix typo. (#24617) 2017-11-02 19:30:29 -04:00
e582a69e9c show specific undefined var errors on -v in debug (#32206)
* show specific undefined var errors on -v in debug

allows users to get more specific information about undefined errors
as they might be looking at a complex data structure and need to find
the specific leaf that has the issue

* now tests works at all verbosity levels

* updated to unicode objects
2017-11-02 18:11:31 -04:00
9d28973b5e ini plugin should recursively instantiate pending
solves inconsistent behaviour on ini host format depending on definition order
fixes #32196
2017-11-02 17:57:20 -04:00
9a13bf9bff Adds partition support to bigip_asm_policy (#32519)
This functionality requires version 3.0.4 of the f5-sdk
2017-11-02 13:23:59 -07:00
64871470e2 Removes bigip_pool from the skip file (#32516) 2017-11-02 13:10:37 -07:00
ab71a9de14 Removes bigip_irule from the skip file (#32509) 2017-11-02 11:38:39 -07:00
d166bba126 Fix non-ascii errors in config manager 2017-11-02 11:05:13 -07:00
1e340b1940 fix typo in azure_rm_vm plan 2017-11-02 09:11:43 -07:00
1140d6ecd7 Explain -EnableCredSSP in header
The new Windows documentation references the top of this file for a list and explanation of options, however `-EnableCredSSP` was missing from this list.
2017-11-02 16:59:13 +01:00
7cf3811d29 acl: add integration tests (#32494) 2017-11-02 16:55:42 +01:00
67b1d0f274 CloudFormation module: get StackEvents when ClientRequestToken is not used (#32434)
* When getting the stack events we need to consider the case where we don't have ClientRequestToken fixes #32396

* Adding tests for the case when the ClientRequestToken is not present in the stack creation.

* Renaming the stack that the test for Client Request Token requires so it won't cause collisions with the basic test.
2017-11-02 11:41:49 -04:00
43914b3837 Fix include_role unit tests (#31920)
* Ensure include_role unit tests check something

This is not the case: get_tasks_vars doesn't yield

* Fix include_role unit tests

Since e609618274, include_role are not
static anymore.
2017-11-02 10:36:15 -05:00
6b6df43eae Removes bigip_iapp_template from the skip file (#32488) 2017-11-02 07:47:28 -07:00
ee26ecfcfd ovirt_templates: wait for OK state when importing (#31634) 2017-11-02 09:24:42 -04:00
1c0dd5406b label nxos files (#32200) 2017-11-02 12:15:20 +00:00
843fba509f Documentation typo fixes (#32473) 2017-11-02 11:15:53 +00:00
7fe69daa4d Modules metadata: fix invalid GitHub ID in author field (#31856)
* Replace Twitter username with GitHub ID

See 8bfa19c4af

* Replace Twitter username with GitHub ID

See 22766906b0

* Fix GitHub ID: add missing letters

See:
- nxos_banner.py: 9c6ee8d0bb
- nxos_logging.py: e37e736ddb
- net_user.py: f6a4803669

* Remove nonexistent author, use GitHub organization

See https://github.com/ansible/ansible-modules-core/pull/2880

Not sure how Ansibullbot will handle an organization ID, but
other deprecated modules already use it.

* Replace Twitter username with GitHub ID

* Replace Twitter username with GitHub ID

See bf59d1cc1e

* Replace Twitter username with GitHub ID

See d02a9016a2

* Author: use GitHub ID

See 0847bfecd6

* Replace Twitter username with GitHub ID

See a59684fddd

* Replace Twitter username with GitHub ID

See 94f9bb962f

* Replace Twitter username with GitHub ID

See 40b7dffea8
2017-11-02 06:52:18 -04:00
690a626d0d Issue #32416. Fix exit from configuration mode in case of command failure (#32417) 2017-11-02 11:55:37 +05:30
6a0e8cae10 Fix net platform agnostic network module integration tests (#32489) 2017-11-02 11:36:18 +05:30
015baf5149 Removes bigip_iapp_service from skip list (#32482) 2017-11-01 21:47:56 -07:00
60281b85fe Refactored bigip_device_dns (#32483)
Module was using old coding standards. This updates the module
2017-11-01 20:31:26 -07:00
cbc5c2d556 Removes bigip_hostname from skip file (#32479) 2017-11-01 19:56:20 -07:00
9dc9313c65 win_package: add support for arguments as list (#32024)
* win_package: add support for arguments as list

* re-added failure tests as they were accidentally commented out

* changed exit_code in failure messages to rc
2017-11-02 09:39:21 +10:00
56a7278256 win_find: allow module to skip on files it fails to check (#32105)
* win_find: allow module to skip on files it fails to check

* fixed up test creation to work pre psv5
2017-11-02 09:35:19 +10:00
3e080ad53d Fixes typos in changelog/comment (#32464) 2017-11-02 09:07:42 +10:00
86141c3e03 [ec2_ami_facts] new boto3-based module as a replacement for ec2_ami_find (#32252)
* [ec2_ami_facts] new boto3-based module as a replacement for ec2_ami_find

- new boto3-based module to gather facts about ec2 images
- intended to replace ec2_ami_find which uses boto
- an ami find task (using new module) added to the ec2_ami integration test

* [ec2_ami_facts] Use AnsibleAWSModule. Catch BotoCoreError.

* add ec2_ami_facts alias to tests

* [ec2_ami_facts] return ami launch permissions as well
2017-11-02 08:56:58 +10:00
e33c24f585 fix issue with eos config replace not working (#32468) 2017-11-01 18:56:32 -04:00
ea2afc6ebc Fixes #32092 (#32412)
* Fixes #32092

* Linter fix
2017-11-02 08:54:11 +10:00
ded023bb3b add plan support to azure_rm_virtualmachine (#32401)
* allows third party billing plans to be specified for an instance
2017-11-02 08:50:29 +10:00
d5d4683047 Removes bigip_snmp_trap from skip file (#32470) 2017-11-01 15:20:28 -07:00
e3f1198a67 Removes bigip_ucs from skip file (#32462) 2017-11-01 14:22:35 -07:00
d43985aa46 windows development: info about module_utils and requires (#32060)
* windows development: info about module_utils and requires

* Edits.

* update for CI fix

* removed link to Python module utils
2017-11-02 07:15:25 +10:00
ca8668f08b Use playbook callbacks for adhoc commands too
This makes adhoc mirror playbook callback functionality by running a
callback before and after all tasks have run. Adhoc commands now call:

- v2_playbook_on_start
- v2_playbook_on_stats

NOTE: When v2_playbook_on_start is called, a dummy playbook is provided
that says its _file_name is __adhoc_playbook__. All callback plugins
that provide v2_playbook_on_start access the _file_name attribute, so
this should maintain backward compatibility when those plugins are
called with adhoc commands even though they would not have been called
previously. The adhoc play is also added to _entries for any private
callback plugins that might be using this callback.
2017-11-01 16:46:22 -04:00
f0e69c60fb added entry for config 2017-11-01 16:38:15 -04:00
0f7fcd2b40 config lookup plugin (#32392)
* config lookup plugin

* added info about ansible-config list

* fixed typoes

* now with option and error handling

* fixed import, better docs
2017-11-01 16:38:03 -04:00
51c5b51ea3 Handle error message from psycopg2 using to_native (#32371)
This fix adds handling of error/exception message using
to_native API instead of decoding.
Also, fixes PEP8 errors.

Fixes: #31825

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-01 16:11:52 -04:00
61ca2a711d Update docs for expire option in postgresql_user (#32418)
This fix adds documentation update and example update
for user's password expiration option 'expire' in postgresql_user.
Now, option is more clear and explicit about default value.

Fixes: #30195

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-01 16:04:34 -04:00
c098c42ab9 vultr: new module utils and common docs (#30868)
* vultr: new module utils and common docs

* vultr: minor fixes after review
2017-11-01 20:16:59 +01:00
869cf3fbdb Fix example on comparing master config (#32406)
Current example produces error message: 

"msg": "Unsupported parameters for (ios_config) module: diff_config Supported parameters include: after,auth_pass,authorize,backup,before,defaults,diff_against,diff_ignore_lines,force,host,intended_config,lines,match,multiline_delimiter,parents,password,port,provider,replace,running_config,save,save_when,src,ssh_keyfile,timeout,username"
2017-11-01 19:03:38 +00:00
9d4e0a8acb Fixes default format of network_group_modules to ini list. Removing trailing whitespaces from comments for style consistency. Fixes #26154 (#32460) 2017-11-01 19:02:08 +00:00
27188d46a9 Adds bigip_iapplx_package module (#32456)
This module can be used to manage the iAppLX packages you have
installed on a device. It can install and remove packages in
their RPM format.
2017-11-01 12:00:06 -07:00
52c97a1cf4 added doc notes about vars plugins in precedence 2017-11-01 11:40:49 -07:00
c239749052 Removes bigip_user from skip file (#32451) 2017-11-01 10:37:23 -07:00
83674af284 Removes virtual_address from skip file (#32425) 2017-11-01 09:49:06 -07:00
2c99cbc874 eos_eapi: adding the desired state config to the new vrf fixes #32111 (#32112)
* adding the desired state config to the new vrf fixes #32111

* fix default vrf initial configured

* add unit test
2017-11-01 22:18:52 +05:30
4faf4ff215 Fixed typo (#32450) 2017-11-01 16:46:19 +00:00
93c965f7f7 Add final block to list of blocks. (#32172) 2017-11-01 22:10:20 +05:30
2b22d36b88 Handle error in user addition in postgresql_user (#32443)
The fix adds exception handling while user add operation in
postgresql_user module.

Fixes: #29738

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-01 12:21:50 -04:00
4fb9e54c50 calculate max fail against all hosts in batch
currently it is doing only from the 'active' hosts in the batch which means
the percentage goes up as hosts fail instead of staying the same.
added debug info for max fail

fixes #32255
2017-11-01 08:45:31 -07:00
41685fb516 fix precedence issue with facts and vars (#32302)
avoid making gathered facts high precedence, only set_fact is supposed to be.
vars set via set_fact with cacheable are higher precedence than plain facts.

Previously (after 6fbd0a8bb5) regular facts would end up with a
higher precedence than host or play vars, but they should not be. Facts were getting added to 'non_persistent_facts' (equivalent to 'register' vars) which is higher precedence than facts should be.

added 'cacheable set_facts' to precedence docs

'ansible_facts_cacheable' ->  '_ansible_facts_cacheable' (made 'private')
2017-11-01 11:42:17 -04:00
d1e55551e9 seboolean: add integration tests (#32438) 2017-11-01 15:22:39 +01:00
26583adb58 Fix wrong prompt issue for network modules (#32426)
* Fix wrong prompt issue for network moodules

Fixes #31161
Fixes #32416

*  Store the device prompt in case of error
   from remote device
*  Check for prompt value in ios action plugin

* Add integration test
2017-11-01 19:38:19 +05:30
0405edcac8 Improve efs_facts (#31817)
Avoid an infinite loop when no EFS resources are present

Use standard ansible approaches to pagination, retries,
exception handling, tag processing
2017-11-01 10:05:14 -04:00
bc4ba6b638 Iptables unit tests (#30762)
* Add some tests for iptables

* Fix remove bug (calls 2 times check to remove a chain)

* Add me as maintainer

* Fix PEP8

* Doc: Give more information on issue #18988

* Fix #18988 and test it

* Fix doc (thanks Pillou)

* enable PEP8 check for iptables
2017-11-01 12:08:57 +01:00
1068aa3ce7 Fixing nxos_vlan to match platform agnostic net_vlan part2 (#32410)
* adding active and suspend to state to match net_vlan module

although this is backwards compatible (for now)

* removing bad config

* getting rid of bad yml syntax
2017-11-01 14:56:38 +05:30
d7c8fdbd79 add check mode for acs delete (#32063) 2017-11-01 02:01:59 -04:00
42655f737a Clarify the release and maintenance cycle (#32402)
* Clarify the release and maintenance cycle
* Namespace refs a little
* Fix an unrelated problem with plugin return docs to fix docs build
2017-10-31 22:08:14 -07:00
fc4580b4cc Removes bigip ssl certificate from skip file (#32424) 2017-10-31 21:17:07 -07:00
6193d5bc65 Removes gtm wide ip from skip file (#32422) 2017-10-31 20:45:42 -07:00
8868b5fa85 Removes gtm pool from skip file (#32419) 2017-10-31 20:12:53 -07:00
312155a641 Add ec2_vpc_route_table example, fix typo (#32415)
* Add an example in the `ec2_vpc_route_table` module of deleting a
route table.
* Fix a typo in the AWS development guidelines, from `fail_json.aws()` to
`fail_json_aws()`.
2017-11-01 12:34:34 +10:00
a1d60741a7 consul_kv: PEP8 compliancy and doc fixes (#32340)
This PR includes:
- PEP8 compliancy
- Doc fixes
2017-10-31 22:27:56 -04:00
daaf8ca86c Fixes skip imports for bigip_configsync_action module (#32413) 2017-10-31 19:22:36 -07:00
25bfea836d Fix reference to EPEL packages, pleasing Shippable CI 2017-11-01 02:15:17 +01:00
ef32d67868 add user agent for cloud shell (#32332) 2017-10-31 17:43:48 -07:00
7db28d5e4d add new MS maintainers to team_azure 2017-10-31 17:07:29 -07:00
8f2b243a3e Fixes bigip_config to remove from skip file (#32409) 2017-10-31 15:48:23 -07:00
3e80f9caf4 luseradd defaults to creating w/o need for -m (#32411)
and -M is incorrect in this case
2017-10-31 14:25:29 -07:00
8c5cd9c530 Removes bigip_command from the skip file (#32407)
Includes fixes and enhancements to make it unnecessary to include this
module in the skip file
2017-10-31 13:50:28 -07:00
bd321a0af6 adjust nohome param when using luser
fixes #32199
2017-10-31 16:35:03 -04:00
95b31a3b61 Playbook dir option (#32275)
* initial add of basedir

Allows you to set a 'playbook dir' for adhoc, inventory and console to allow for 'relative path loading'
2017-10-31 15:41:30 -04:00
8037eb7474 Various fixes for bigip_remote_syslog (#32404)
This patch addresses a number of issues, large and small, that were
identified by users in the downstream repo.

* formatting of some code
* specific option combinations leading to errors
* missing includes for unit tests
2017-10-31 12:32:50 -07:00
43714a0091 corrected package docs 2017-10-31 15:31:42 -04:00
710d1f074e Allow health_check_port to be a string (#32228)
Setting health_check_port to 'traffic-port' allows the health
check to use the target's traffic port.
2017-10-31 10:27:12 -04:00
d23da2e494 add support to vmware_guest for template => vm conversion (#31607)
* add support to vmware_guest for template => vm conversion

While the vmware_guest currently supports conversion of VMs to templates
using the is_template argument, it does not support the inverse:
converting templates back into VMs.  This change adds that
functionality.

When converting a template back into a VM, the extra config option
"uuid.action" is also set so that VMware will automatically create a new
UUID for the converted VM.  If the "uuid.action" setting is already
configured, it will not be modified.  Setting this prevents an
interactive question from being raised when attempting to boot the VM.

* Add integration tests for vmware_guest is_template

* Add additional idempotency test for vmware_guest is_template
2017-10-31 09:12:40 -04:00
e3a847a142 git: fix archive when update is set to no (#31829) 2017-10-31 13:56:40 +01:00
52aa522c19 google: PEP8 compliancy fixes (#32309)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes

Signed-off-by: Satyajit Bulage <sbulage@redhat.com>
2017-10-31 10:53:31 +01:00
5d1ed1fc25 Fix platform agnostic network integration test cases (#32378)
* Fix platform agnostic network test cases

* Fix vyos_interface CI failure
2017-10-31 15:21:27 +05:30
53fead7c96 ios_logging: Fix some smaller issues, add unit test (#32321)
* ios_logging: Fix typo in documentation

* ios_logging: Fix traceback when setting buffered destination without size

When the size parameter is not configured while configuring the buffered
destination, a traceback occurs due to the fact that validate_size expects the
parameter to be an int. Explicitely converting value to int makes the
check work for every case.

* ios_logging: Update size parameter documentation

Update the documentation of the size paramter to reflect the current behaviour
of setting a default of 4096 for the buffered dest.

* ios_logging: Add unit test

Add unit test for ios_logging testing the behaviour clarified in the previous
commits.

* ios_logging: Fix python 2.6 compliance
2017-10-31 09:25:07 +05:30
a2e4196c11 [aws] Document boto3 requirement (#32329) 2017-10-31 09:49:30 +10:00
be9cc70b74 Fix patching to epel package 2017-10-30 14:39:45 -07:00
11faafcbf7 Fix error when there are no docker volumes present yet (#28145)
* Fix error when there are no docker volumes present yet

* fixes suggested by Shippable
2017-10-30 15:53:08 -04:00
c3564096cd Inventory and varmanager updates (#32054)
* better parsing erros

* fix inventorydata serialization

* dicts fix
2017-10-30 14:55:13 -04:00
e70c0afc5e now with_dict allows for direct 'lookup' usage
fixes #32067
2017-10-30 14:52:58 -04:00
77061f5521 ec2_lc - cast volume_size for an EBS volume to an int (#32291) 2017-10-30 14:41:40 -04:00
75a6f9dbc2 remove misleading group vars as they are flat (#32276)
* remove misleading group vars as they are flat

* fixed vars display
2017-10-30 12:59:43 -04:00
e05dacfe91 more info on yaml errors
print yaml's 'problem'
2017-10-30 12:39:30 -04:00
64220fcbcc ensure we always have a basedir 2017-10-30 12:28:09 -04:00
1a43038bc2 Pep8 aos login.py (#32312)
* fix pep8 issue in consul_kv.py

* fix pep8 issue in aos_login.py
2017-10-30 21:56:34 +05:30
f7f262adc7 Add the ability to rename a snapshot, or change it's description. (#31441)
Also add tests for vmware_guest_snapshot, but disable them due to
vcsim not fully supporting such operations yet.

Implement changes suggested in review.  Also fix same in remove_or_revert_snapshot() for consistency
2017-10-30 12:20:03 -04:00
f78f93e646 Added some more info about the aws_s3 module's overwrite option (#31819) 2017-10-30 11:22:05 -04:00
ded0b6ed83 Change the ssh+sudo debug messages to vvv for easier troubleshooting in awx+tower 2017-10-30 10:41:50 -04:00
4a19482413 Add check for sv binary (#32250)
* Add check for sv binary

This commit adds a check for the sv binary. If the binary is not present
then the module will fail.

Resolves issue #32248

* Change sv check to suggestion by @bcoca
2017-10-30 09:59:41 -04:00
9cff2c376b fix pep8 issue in consul_kv.py (#32310) 2017-10-30 11:37:52 +01:00
b0954dbeb4 Fix typo 2017-10-30 11:14:06 +01:00
005c1ce7ba Sort the PEP8 legacy files (#32339) 2017-10-30 10:36:47 +01:00
8724ff3eae pamd: fix issue with trailing commas in module_arguments 2017-10-30 08:24:21 +01:00
7f92741c3d Remove references to provider in documentation, update license (#32242) 2017-10-30 12:34:29 +05:30
6bc85744ef win_uri: fix elif to elseif (#32330) 2017-10-30 10:43:43 +10:00
310eb833a4 EC2 AMI boto3 modifications (#28506)
Migrate ec2_ami module to boto3
2017-10-30 10:20:27 +10:00
16bbc19674 subversion: PEP8 compliancy and doc fixes (#30909)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-30 01:09:00 +01:00
86bb82a220 user: PEP8 compliancy and doc fixes (#30895)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-30 01:06:37 +01:00
63edeb1644 systemd: PEP8 compliancy and doc fixes (#30892)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-30 01:04:57 +01:00
8b2bf09c49 service: PEP8 compliancy and doc fixes (#30890)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-30 01:03:54 +01:00
edc0ff481c seboolean: PEP8 compliancy and doc fixes (#30888)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-30 01:02:45 +01:00
32775b0caa hostname: PEP8 compliancy and doc fixes (#30886)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-30 01:00:49 +01:00
3ae42afbc7 getent: PEP8 compliancy and doc fixes (#30885)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-30 00:58:04 +01:00
11f8d9659d at: PEP8 compliancy and doc fixes (#30881)
This PR includes:
- PEP8 compliancy fixes
- Documentation changes
2017-10-30 00:56:54 +01:00
babc2354a5 lineinfile: pylint fixes and docs (#30854)
This PR includes;
- pylint fixes
- Documentation updates
2017-10-30 00:55:14 +01:00
2f8c88b687 file: pylint fixes and docs (#30849)
This PR includes;
- pylint fixes
- Documentation updates
2017-10-30 00:53:44 +01:00
a6415f9ad9 copy: pylint and docs (#30847)
This PR includes;
- pylint fixes
- Documentation updates
2017-10-30 00:52:45 +01:00
e365085644 acl: pylint fixes and docs (#30841)
This PR includes;
- pylint fixes
- Documentation updates
2017-10-30 00:52:10 +01:00
c46401e41f tempfile: PEP8 compliancy, pylint and docs (#30859)
This PR includes;
- PEP8 compliancy fixes
- pylint fixes
- Documentation updates
2017-10-30 00:51:19 +01:00
f64a8f58a3 synchronize: PEP8 compliancy, pylint and docs (#30858)
This PR includes;
- PEP8 compliancy fixes
- pylint fixes
- Documentation updates
2017-10-30 00:49:47 +01:00
19c3c7fe44 blockinfile: PEP8 compliancy, pylint and docs (#30845)
This PR includes;
- PEP8 compliancy fixes
- pylint fixes
- Documentation updates
2017-10-30 00:43:18 +01:00
fb18e27d87 assemble: PEP8 compliancy, pylint and docs (#30844)
This PR includes;
- PEP8 compliancy fixes
- pylint fixes
- Documentation updates
2017-10-30 00:41:47 +01:00
0129b96065 archive: PEP8 compliancy, pylint and docs (#30842)
This PR includes;
- PEP8 compliancy fixes
- pylint fixes
- Documentation updates
2017-10-30 00:39:30 +01:00
a4e077b357 Fix typos and docs 2017-10-30 00:37:06 +01:00
08d81b970d Amazon kms_facts module (#26733)
* Amazon kms_facts module

Facts module for Amazon's Key Management Service

* kms_facts provide aliases

Return aliases for keys
Provide `alias` as a filter
Cope when tags can't be listed
Ensure everything is properly snake cased

* Rename kms_facts to aws_kms_facts

There may be conflicting KMS modules for other providers otherwise.

* Fix documentation, add aliases cache

Aliases are called many times, so add a cache

* Reduce amount of info on deleted keys

Getting info on a key is costly (2s) per key, so reduce
info on deleted keys.

* Add policy information to facts

* aws_kms_facts version update

Fix ridiculously long RETURN line

* Remove dangerous-default-value from aws_kms_facts
2017-10-30 09:10:11 +10:00
e3fc53b6fc Added info to win_service docs (#32320)
* Added info to win_service docs

* minor typo fix
2017-10-30 05:43:18 +10:00
27694f6909 PEP8 compliancy for os_server_volume module (#32306) 2017-10-29 14:15:32 +05:30
b456e637e0 become-user example was incorrect
Example was incorrect:
--become-user doesn't imply --become (http://docs.ansible.com/ansible/latest/become.html)
2017-10-29 00:58:26 -04:00
87f663b950 ios_system: Fix typo in unit test (#32284) 2017-10-29 09:45:13 +05:30
2e12a5f8c2 Revert "Removed a force conditional (#28851)" (#32282)
This reverts commit 07acc579db.

On closer examination of this code, the conditional that had force in it
was not a parent of this one.  So handling of force is needed i both
branches.

See the recent comments on #23391
2017-10-28 18:35:32 +10:00
c4a7297222 minor format change 2017-10-28 01:36:13 -04:00
2a5f6c28cf Adds bigip_asm_policy module (#32281)
This module can be used to import asm policies from file or existing
template. Supported file types are xml, compact xml, and binary
2017-10-27 22:31:52 -07:00
47fb002c88 (minor) fix broken link, awkward phrasing (#32085)
* (minor) fix broken link, awkward phrasing

Simple transposition error was resulting in a link not
being properly htmlified.

Also clean up redundant 'this' and trailing whitespace.

Signed-off-by: Ed Santiago <santiago@redhat.com>

* Edits
2017-10-27 21:39:23 -07:00
9712761367 testfix: IP address based on dci (#32279)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-28 10:05:29 +05:30
a16db95ddb Adds the bigip_ssl_key module (#32270)
This module's purpose is to specifically manage the ssl keys. It
is essentially the key component of the bigip_ssl_certificate module.
The modules were separated and the key portion deprecated from
bigip_ssl_certificate in favor of this module.
2017-10-27 12:52:52 -07:00
80031720d1 Deprecate old community guide (#32266)
For anywhere we still have links, we want to deprecate this page and point them to the right new page.
2017-10-27 17:49:08 +01:00
c5b4d53c09 Update index.rst to point to new community guide (#32263)
We made this change a couple of months ago, deprecating community.html in favor of community/index.html and its full guide, but the change was never made here in the index.
2017-10-27 17:48:14 +01:00
ef42eaeaa1 set the zip_safe flag to False (#32194)
The references to __file__ within code base make the zip_safe
method of installing not possible.
2017-10-27 12:47:45 -04:00
e010fcf7e1 added debug info when skipping undef 2017-10-27 12:16:16 -04:00
be821845e2 Fix eos_user tests (#32261) 2017-10-27 17:52:56 +02:00
df66a4603a Moving guidelines to the official docs (#32260)
Redirecting contributors to the updated docs.
2017-10-27 11:40:42 -04:00
84729e1f42 Update CONTRIBUTING.md to point to the right stuff (#32258)
We reorged these pages and these links haven't caught up, fixing
2017-10-27 11:27:25 -04:00
63a0083cf1 Fix rest of ios_interface issues (#32257) 2017-10-27 17:10:16 +02:00
4b35793f62 Fix lookup source tests on ios_system (#32254)
In IOS-XE, you need to pass an interface to lookup-source, otherwise
it fails with bad syntax.
2017-10-27 16:26:18 +02:00
27b2c3bd25 lambda: fix undefined variable and initially define account_id as None (#32249) 2017-10-27 09:40:01 -04:00
cd76e987f3 Change MTU values on ios_interface tests (#32251)
If setting 1500, we don't have 1500 in config as that's default value.
That causes issues on asserts.
2017-10-27 15:38:25 +02:00
033a6a1560 [ec2_ami_copy] Add return documentation (#32012) 2017-10-27 09:05:50 -04:00
81f34cd01c Remove asa_template action plugin (#32233)
Since the asa_template module has been deprecated this action plugin
is no longer needed.
2017-10-27 13:53:09 +01:00
7553c42e09 Fixes #31090. In network parse_cli filter plugin, this change moves the creation of a (#31092)
new match(block). It previously only occurred if a new match occurred,
but suggest it should occur when an end of a block match is found.
2017-10-27 17:45:36 +05:30
747bea9a27 Enable authorize on disabling auto neg task (#32243) 2017-10-27 13:18:08 +02:00
3d59eada20 Disable auto neg on test interfaces on IOS-XE (#32241)
As by default they are set on auto, test setting the speed on them
fail, we need to disable it upfront.
2017-10-27 12:55:46 +02:00
2aae66fa07 Fixes ios_logging unit test (#32240) 2017-10-27 16:12:17 +05:30
7d5dccefe5 - Fix logging module issue where facility is being deleted along with host (#32234)
- Remove default facility, as facility is not standard on remote syslog server
2017-10-27 15:31:17 +05:30
9752ce368d Remove ip nameservers on ios_system/set_name_servers teardown (#32239)
Not sure why lookup source-interface, the only thing tested on that
file is adding/removing name servers, no lookup is set.
2017-10-27 11:57:18 +02:00
a5f6c726f0 Add vyos_vlan DI module (#32072)
* Add vyos_vlan DI module

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

* Add integration tests

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

* Improve logic and add more test

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

* update boilerplate

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-27 15:21:37 +05:30
80c8b99a62 Handle ip name-server lines containing multiple nameservers (#32235)
In CSR, multiple nameservers are defined in one line, whereas on IOS
it's on multiple ones.
This change handles both.
2017-10-27 10:55:52 +02:00
d088b7ab93 Route53 return values (#31962) 2017-10-27 13:27:01 +10:00
a199d9d91e [ec2_vpc_nacl_id] Add nacl_id alias for nacl_ids option (#32223) 2017-10-27 13:21:53 +10:00
f2023a84a6 Enable TLS1.1 and TLS1.2 for win_package (#32184) 2017-10-27 12:03:52 +10:00
638de22b35 Update tests for required_if changes
These tests are doing string matches on the error condition.  Update
them to match the new strings.  This is probably okay to push out to old
releases even though it's technically backwards incompatible because
production playbooks won't be checking that a parameter was missing.
Param missing is something detected and fixed while writing the playbook.
2017-10-26 17:37:11 -07:00
8c41fee7bf Fix typo 2017-10-26 17:37:11 -07:00
0769460820 format error messages from module_utils.basic nicer
* lists are printed as a string, separated by a comma and a space
* require_if tells if is_one_of was True or False
2017-10-26 17:37:11 -07:00
c714da7fac cloudformation_facts: don't fail on nonexistent stack - fixes #23419 (#23758)
* Allow cloudformation_facts to exit gracefully if stack does not exist

make cloudformation_facts pep8

remove from legacy files

remove unnecessary if statement

Allow cloudformation_facts to exit gracefully if stack does not exist version 2

fix documentation errors

add an example for a hard-fail if a stack doesn't exist

* Remove extra whitespace

* Use the .response attribute since .message isn't present with Python 3

* Don't fail if no stack name is provided and no stacks exist.
2017-10-26 15:18:31 -04:00
6a6ea663ea Return all elements in a more robust way
If a trailing ':' is set or not, always return all secrets from a path. This was a bug mostly fixed by this PR.

Update examples.
2017-10-26 13:24:39 -04:00
6b6746dcee Update hashi_vault.py
Add ability to lookup entire objects in HashiCorp Vault.
When used with auth_method allow skipping SSL verify.
2017-10-26 13:24:39 -04:00
9322486ac3 Exclude stack policy when running in check mode. (#31940)
Fixes #31931
2017-10-26 12:32:48 -04:00
17a008654a Cast target port to an int in elb_target_group. Fixes #32098 (#32202) 2017-10-26 12:09:49 -04:00
104934c095 Enable ECHO in prompt module (#32083)
* Enable ECHO in prompt module

Fixes #14160

* Set flags to make it possible to edit echoed input as well as hide control charcters

Only do this if a time limit is not set.

* Consolidate settings
2017-10-26 12:05:08 -04:00
c822292347 Integration Tests only: add static route, snmp_user, snapshot and hsrp it cases (#28933)
* add static route and hsrp it cases

* add snmp_user and snapshot it

* password strength correction

* fix typo

* add compare snapshot as it is fixed in the code now

* skip snapshot tests for titanium

* titanium and nxapi conditions added
2017-10-26 11:27:55 -04:00
8ab4412684 aws_kms: handle updated policy format+cleanup (#30728)
* aws_kms: handle updated policy format+cleanup

- create slightly updated policy in that handles lists instead of a single string; the previous version's policy was being rejected if the key was new enough to have the updated base policy.
- removed `dry_run` conditionals, not committing the policy anyhow.
- return the policy in the return data. Leaving undocumented for now.
- update exception handling: don't rethrow in `do_grant`, don't pass anything to `format_exc`.

* whitespace/indent fail

* fix list-plus-brackets

* str and list fixes for ryansb

* port changes from #31667 over, better listification
2017-10-26 09:13:29 -04:00
ea05035be2 Use latest available template (#31780)
* Use latest available template

Documentation states:
template_version: version number of the template to be used for VM. By default the latest available version of the template is used.

This was not true because if parameter was not specified, template[0] is choosen, without checking if is the latest. Now, sorting + selecting the latest selects the one with the latest version number.

* Sort in reverse order, style cleanup

Applied fixes from comment
2017-10-26 09:12:34 -04:00
4f01ad41bd ovirt_hosts: Don't fail upgrade when NON_RESPONSIVE state (#32123) 2017-10-26 09:03:29 -04:00
13807e7ee8 [cloud][docs] Add a cloudformation_facts example (#31964) 2017-10-26 08:29:10 -04:00
838c1ba6c7 [cloud] Bugfix for aws_s3 empty directory creation (#32169)
* [cloud] Bugfix for aws_s3 empty directory creation

* Update integration tests
2017-10-26 08:17:13 -04:00
0b357ba223 [ec2] Move note about state=restarted (#31961) 2017-10-26 21:37:33 +10:00
91b5a9b868 [ec2-ami] make examples less verbose; fix default values in docs (#32008)
* make ec2-ami examples less verbose

* Fix default values in docs to be the actual default values

Fix default values for `architecture`, `virtualization_type` and
`wait_timeout` in docs to be the actual default values.

* Added note about examples not containing auth details
2017-10-26 21:33:39 +10:00
3e0f67786f [ec2_vpc_subnet_facts] Add subnet_id alias for subnet_ids options (#32023) 2017-10-26 21:32:46 +10:00
61554143d0 Document return values of ec2_eip (#32018)
- added RETURN value for ec2_eip
- removed note about what is returned
- removed a duplicate example
2017-10-26 21:31:57 +10:00
78347e12a3 No need to set a default tenancy and it prevents the creation of spot lcs (#31270)
The full traceback is:
Traceback (most recent call last):
  File "/tmp/ansible_82dk2ynr/ansible_module_ec2_lc.py", line 317, in create_launch_config
    connection.create_launch_configuration(**launch_config)
  File "/usr/lib/python3.6/site-packages/botocore/client.py", line 312, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/usr/lib/python3.6/site-packages/botocore/client.py", line 601, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (ValidationError) when calling the CreateLaunchConfiguration operation: Placement tenancy is not supported for spot instances.

fatal: [localhost]: FAILED! => {
    "changed": false, 
    "error": {
        "code": "ValidationError", 
        "message": "Placement tenancy is not supported for spot instances.", 
        "type": "Sender"
    }, 
    "failed": true,
2017-10-26 05:43:38 -04:00
3d09c4bb4f Remove bogus interface description (#32183)
The interface has already that description from a task earlier, thus that change
is not introduced susbequently and we don't have to assert for it.
2017-10-26 11:24:35 +02:00
b2dd5466ac Use sane mtu values on ios_interface tests (#32180)
Anything lower than 1500 won't work on CSR nodes.
2017-10-26 10:53:45 +02:00
c07b30951f Remove duplex option on ios_interface (#32178)
Turns out on devices where only Gigabit is available (like our
csr nodes in CI), duplex is not configurable, thus the test fail.
Removing, since we are testing modification of other properties like
description and mtu and have good coverage.
2017-10-26 09:52:33 +02:00
cf1337ca9a Update ansible-test sanity command. (#31958)
* Use correct pip version in ansible-test.
* Add git fallback for validate-modules.
* Run sanity tests in a docker container.
* Use correct python version for sanity tests.
* Pin docker completion images and add default.
* Split pylint execution into multiple contexts.
* Only test .py files in use-argspec-type-path test.
* Accept identical python interpeter name or binary.
* Switch cloud tests to default container.
* Remove unused extras from pip install.
* Filter out empty pip commands.
* Don't force running of pip list.
* Support delegation for windows and network tests.
* Fix ansible-test python version usage.
* Fix ansible-test python version skipping.
* Use absolute path for log in ansible-test.
* Run vyos_command test on python 3.
* Fix windows/network instance persistence.
* Add `test/cache` dir to classification.
* Enable more python versions for network tests.
* Fix cs_router test.
2017-10-26 00:21:46 -07:00
602a618e60 eos_user: sends user secret first on user creation fixes #31680 (#32162)
* fix command order

* add integration test

* test cleanup

* remove redudant commands
2017-10-26 12:40:58 +05:30
87989b5c63 Fix ec2_lc failing to create multi-volume configurations (#32163) 2017-10-26 15:21:47 +10:00
ca71a50459 Avoid default inventory proccessing for pull (#32135)
* Avoid default inventory proccessing for pull

- now pull's own special inventory processing should work correctly
- also removed ineffective set_defaults

fixes #31449

* use class property instead

* only do localhost for adhoc

(cherry picked from commit aad5d1432583c4aa4105b774f38c80498e85de59)
2017-10-25 19:55:48 -04:00
11153df0a1 Adding a regex for stderr catching. (#31945) 2017-10-25 14:51:49 -07:00
09f55d300b Fix issue #32138 - fix examples typo (#32140) 2017-10-26 07:44:15 +10:00
8724c069d7 Add delayed start to win_nssm (#32017)
* Adds start_mode=delayed option for win_nssm

It translates to Start=SERVICE_DELAYED_AUTO_START in nssm.

* Adds documentation for the start_mode=delayed option of win_nssm

Also, reformats the start_mode values into a list.
2017-10-26 07:02:14 +10:00
23a81af4f1 Adds name fact when retrieving nodes (#32165) 2017-10-25 13:31:20 -07:00
01af68911f Change 'connection' to 'inventory' in description
Fixing a copy/paste typo.
2017-10-25 16:25:19 -04:00
d7d1402bb7 reverse order of release numbers 2017-10-25 13:23:46 -07:00
cc4bbb2929 Various bigip_pool fixes (#32161)
* corrects copyrights and mocks in unit tests
* fixes module code to include code to cleanup tokens
2017-10-25 12:57:21 -07:00
cf2c22770a Update release and maint for new release 2017-10-25 12:52:22 -07:00
14583e4f9d Update 2.4.1 release date 2017-10-25 12:41:59 -07:00
8aeb239f73 [cloud] Update ec2_vpc_net_facts to use Boto3 (#25375)
* update ec2_vpc_net_facts module to boto3

updated with RETURN values and other requested changes

removed errant extra blank line

another errant extra line removed...auto-linter not working apparently

updates per review

fix typo in RETURN docs

* fix trailing whitespace issue
2017-10-25 13:26:16 -04:00
7938e9f73e Set speed to 1000 on ios_interface tests (#32153)
csr and ios have only 1000 as value in common, using 10 or 100 will
cause CI failures.
2017-10-25 18:17:32 +02:00
ab84718a01 NXOS: Integration tests to Ansible (part 3) (#29030)
* Add nxos_file_copy IT

* Restructure nxos_igmp tests

* add nxos_igmp_interface IT

* add nxos_igmp_snooping IT

* add nxos_ntp_auth IT

* Add nxos_ntp_options IT

* update nxos.yaml with new tests

* update nxos_ntp_options test

* update nxos_ntp_auth IT
2017-10-25 11:41:23 -04:00
279b7ce671 Add DO SSH key facts module to changelog 2017-10-25 11:38:27 -04:00
2d766fd31a Discover ios_interface interface on basic tests (#32149)
We run these tests on IOS and IOS-XE, which have different interfaces
available for performing tests.
2017-10-25 17:38:18 +02:00
6790a0f75f [cloud] Add new module digital_ocean_sshkey_facts (#26365)
* do_sshkeys_facts module

* Fix

* Fix version

* Configure timeout and validate_certs for fetch_url

* Add support for new DO_OAUTH_TOKEN env var

* rename module prefix from do_* to digital_ocean_*

* Fix python 2.6 positional index

* Use modules_utils digital ocean lib

* Update metadata version

* Update version added

* Update module from boilerplate

* Update examples

* Add timeout documentation

* Fix typo
2017-10-25 11:34:39 -04:00
d2cb676c4c Add a validate example to blockinfile. (#32088) 2017-10-25 15:11:49 +01:00
0e36854213 consul_kv: Fix name & formatting (#32132)
* Fix name & formatting
* Fix examples
2017-10-25 15:39:49 +02:00
ca115b0a8e Fix quotes on ios_ping test (#32131) 2017-10-25 14:16:28 +02:00
d686c3b4d4 Set authorize yes on IOS interface discovery tests (#32128) 2017-10-25 13:47:28 +02:00
dc0aa75029 Introspect platform before running ios tests (#32125)
In some IOS tests, we can't just assume a certain interface, as
we test on IOS and IOS-XE and in our CI they scheme numbering is
different.
Introspect version on the tests where needed.
2017-10-25 12:44:25 +02:00
a9d8157e81 Replace Gigabit0/0/0/2 for Gigabit0/0/0/1 on iosxr_interface.intent (#32120) 2017-10-25 11:23:15 +02:00
3f86cfac1f Default ansible_ssh_port to 22 on ios_user tests (#32118)
The csr nodes do not have ansible_ssh_port on group_vars, as it uses
standard 22 port, therefore default to it on tests needing it.
2017-10-25 11:07:07 +02:00
676d446cfc Add ansible_ssh_port to iosxr_user auth tests (#32117)
The CI nodes listen on port 8022, we need to plumb that to avoid
test failures.
2017-10-25 10:56:28 +02:00
f079a33563 Replace GigabitEthernet0/0/0/5 for GigabitEthernet0/0/0/2 in iosxr_interface intent tests (#32116)
There's no 5 interface present in CI nodes.
2017-10-25 10:53:30 +02:00
1af72afdef inserts enable cmd hash with auth_pass used (#32107)
eapi transport was not passing the auth_pass to the remote device with
it was provided.  this fix will now insert the correct command hash into
the jsonrpc request.

fixes #30802
2017-10-24 21:59:49 -04:00
1dd55acbc2 ec2_group: add rule description support - fixes #29040 (#30273)
* ec2_group: add support for rule descriptions.

* Document rule description feature and add an example using it.

* Fix removing rule descriptions.

* Add integration tests to verify adding/modifying/removing rule descriptions works as expected.

* Add permissions to hacking/aws_config/testing_policies/ec2-policy.json for updating ingress and egress rule descriptions.

* ec2_group: add backwards compatibility with older versions of botocore for rule descriptions.

* Add compatibility with older version of botocore for ec2_group integration tests.

* ec2_group: move HAS_RULE_DESCRIPTION to be checked first.

* Make requested change

* Pass around a variable instead of client

* Make sure has_rule_description defaults to None

* Fail if rule_desc is in any ingress/egress rules and the the botocore version < 1.7.2

* Remove unnecessary variable

* Fix indentation for changed=True when updating rule descriptions.

* minor refactor to remove duplicate code

* add missing parameter

* Fix pep8

* Update test policy.
2017-10-24 21:18:56 -04:00
3b6c095104 added .vscode to gitignore file (#32106) 2017-10-24 17:24:38 -07:00
d067166cfc Segment out the update method (#32103)
This patch changes the base parameters class to segment out the
update method. This is done often throughout the f5 modules, so
this just bakes it into the mod utils so that I can delete it
from each module
2017-10-24 16:13:14 -07:00
5663d11b94 Add missing packages to default docker image. 2017-10-24 14:37:26 -07:00
4dce9dc796 Add ansible_distribution_major_version to macOS (#31708) 2017-10-24 17:33:27 -04:00
c4af03118b Add support for tags and instance attributes for destination variable for the ec2 dynamic inventory. (#29033) 2017-10-24 16:09:59 -04:00
8a9a9b84dd [ec2-ami] Use required_if with state parameter (#32009)
* [ec2-ami] Use required_if with state parameter

* Update failure msg on delete ami with no image_id task in integration test
2017-10-24 16:01:33 -04:00
6203e899f0 Fix service_mgr fact collection (#32086)
The platform/distro/etc facts were being passed in
correctly, but service_mgr.py was looking up the
wrong names ('system' vs 'ansible_system') resulting
in service_mgr falling back to default 'service' result.

Fixes #30753, #31095
2017-10-24 15:15:01 -04:00
ad3f4b953a Fun with callbacks (#32031)
* Functional-ish unix-ish callback plugin

* fix var

* Don't display include or include_vars

* Correctly display debug output and failed output in loops

* Linter fixes, documentation, and GPL oneliner
2017-10-24 12:38:49 -04:00
506e6a0b2d removing deepcopy as it does not work
it cannot  handle deep crossreferenced objects
need to find alternative approach.
2017-10-24 11:12:18 -04:00
725ae96e1b Prefer the stdlib SSLContext over urllib3 context
We do not go through the effort of finding the right PROTOCOL setting if
we have SSLContext in the stdlib.  So we do not want to hit the code
that uses PROTOCOL to set the urllib3-provided ssl context when
SSLContext is available.  Also, the urllib3 implementation appears to
have a bug in some recent versions.  Preferring the stdlib version will
work around that for those with Python-2.7.9+ as well.

Fixes #26235
Fixes #25402
Fixes #31998
2017-10-24 07:22:53 -07:00
ee6ba5d590 yum: allow for downgrade using rpm file (#31647) 2017-10-24 14:33:38 +02:00
1d86205933 Correct formatting --arguments (#31808)
* Correct formatting

* Use RST :option:

* ansible-pull --vault-password-file

* Streamlined the language a bit in the intro.

* Exclamation point removal!
2017-10-24 13:23:04 +01:00
9d6fd4ebcc Network docs should link to network integration pages (#31795) 2017-10-24 08:17:03 +01:00
69cf5f9486 Fix documentation bug for asa_config (#32007)
The documentation mentioned the "commit" and "update" parameters which
didn't exist.
2017-10-24 09:24:37 +05:30
e2bed36d12 - Adds iosxr_netconf module to configure netconf service on IOSXR (#31715)
* - Adds iosxr_netconf module to configure netcong service on Cisco
  IOS-XR devices

* - Adds Integration test for module
- Handles diff return from load_config

* - Adds unit test for iosxr_netconf module
2017-10-24 08:49:23 +05:30
b3cf1e39bb add user-agent to Azure API calls (#31872)
* addi Ansible user-agent in Azure API calls

* fix import error
2017-10-23 16:53:35 -07:00
905d71d46a fix eos terminal plugin to recognize ospf error message (#32039)
The eos terminal plugin did not correctly catch the error message
returned with trying to configure more than one ospf instance.  This
change updates the terminal plugin to catch that scenario
2017-10-23 17:27:58 -04:00
b004a6373a windows: add #AnsibleRequires for Windows modules (#31683)
* windows: add #AnsibleRequires to set whether a module requires module or a specific version

* fix up pep8 issues

* changed psversion to use the actual ps Requires -Version syntax

* missed the check on #Requires -Version

* fix #Requires module extensions
2017-10-23 14:21:30 -07:00
0c34cdd0f7 fix #Requires to be valid in real Powershell (#31858)
* module_utils #Requires should not have .psm1 extension if "real" Powershell will ever execute them
* updated validate-modules to enforce this
* added check to disallow multi-module syntax on Ansible.ModuleUtils #Requires
2017-10-23 11:40:54 -07:00
11c225e039 Start using ClientRequestTokens in event lists (#31997)
* Start using ClientRequestTokens in event lists

* Include request token in all reqs that support it (basically all but check mode/changeset)

* Update placebo recordings

* Add comments for CRQ popping
2017-10-23 14:39:13 -04:00
70c58e74ab Remove elasticdog from pacman module maintainers. (#32051) 2017-10-23 13:49:51 -04:00
4bd16216fe ini inventory: document value parsing workaround
Fixes #31656
2017-10-23 09:56:49 -07:00
7197186366 minor text fixes 2017-10-23 11:18:28 -04:00
531d6c50bf Added regex to recognize prompt (#31947) 2017-10-23 19:34:10 +05:30
4ffd60a406 nosh system module: fixes and improvements (#32014)
* nosh system module: fixes and improvements

documentation:
* fleshed out and fixed to better follow the official guidelines

consistency:
* the following facts will now always be returned on success: name,
service_path, enabled, preset, user, status
* state is only returned when the state option is used
* state and status will be null if the service is not loaded by the end
of the task

* [nosh]: PEP8 fix
2017-10-23 09:19:22 -04:00
465fe5802b -Fixes JSON parsing(use JSON object instead of string) for facts modules. (#31818) 2017-10-23 17:48:52 +05:30
2765ee4b9a Enable use of empty manageiq arguments (#31774)
* anable use of empty manageiq arguments

* make default verify_ssl true
2017-10-23 13:33:57 +02:00
6693cc3f5a Using shorthand for disabling paging to avoid the syntax difference between versions. (#31942)
Fixes #31855
2017-10-23 10:15:30 +02:00
529b7a7b78 fix nxos_igmp_snooping (#31688)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-23 09:40:07 +05:30
8e44cd5d10 win_command win_shell: add stdin option (#31619) 2017-10-23 09:50:19 +10:00
b663f602bc windows argv to string module utility (#28970)
* windows argv to string module utility

* rebased PR with latest devel branch
2017-10-23 09:49:40 +10:00
ed342e8ce3 Remove toLower on source (#31983)
Having this here breaks any source URLs that require case sensitivity.
2017-10-23 07:18:00 +10:00
e7d7a29a46 composer: return skipped if command has no --dry-run (#32010) 2017-10-22 10:04:46 +02:00
74bd13727a move zabbix modules into their own namespace below monitoring/ (#31992) 2017-10-21 10:07:51 +02:00
965e4151df Adds the bigip_policy module (#31915)
this module allows one to manage policies and re-order their
corresponding rules
2017-10-20 18:05:55 -07:00
8085c38e05 Refactors the bigip_gtm_facts module (#31917)
Includes pep fixes and inlining code with current conventions
2017-10-20 18:05:45 -07:00
ab8bacdf5e make sure patterns are strings
fixes #31978
2017-10-20 18:18:41 -04:00
08fcf0346b add newly merged windows module (#31989)
per: https://github.com/ansible/ansible/pull/30473
2017-10-21 07:29:44 +10:00
383170e9e1 dont add all group vars to implicit on create
they already get added in vars manager on use.
fixes #31420
2017-10-20 16:53:35 -04:00
90e8071d48 fix inventory loading for ansible-doc
fixes #31995
2017-10-20 16:46:56 -04:00
36b13e3e3d Fix ansible-test default image. (#31966)
* Add openssh-client to default docker container.
* Include Azure requirements in default container.

To do so, handling of pip requirements was updated to install each
set of requirements separately and then run a verification pass to
make sure there are no conflicts between requirements.

* Add missing --docker-no-pull option.
* Add documentation for the azure-requirements test.
2017-10-20 08:48:01 -07:00
93288ba9b6 zabbix_proxy: implement validate_certs and use mod_doc_fragment (#31990)
* use zabbix mod_doc_fragment and implement validate_certs

* Fixes example to match documentation and provided choices
2017-10-20 10:29:19 -04:00
fd574c069e remove fixme from docs 2017-10-20 09:59:23 -04:00
8f8d5b41d7 Fix description parameter to check_all_properties (which was mangled in an earlier update) (#31987) 2017-10-20 09:53:58 -04:00
8f4aab6d28 Updated win_owner.py documentation to reflect recurse options (#31974)
Updated win_owner.py documentation to reflect recurse options 'yes' and 'no' instead of 'True' and 'False'
2017-10-20 12:45:31 +02:00
aca8a3b4d7 ovirt_vms: Don't start VM if state is present (#31698) 2017-10-20 05:59:45 -04:00
d6b564966f ovirt_host_networks: Fix label assignment (#31969) 2017-10-20 05:42:26 -04:00
98eac19e81 Added Support for creating a Zabbix Inventory. It is possible to tag the (#23792)
* Rebase with update of remote repository

* Add Example

* Reference to example

* Fix error with collon (ansibot saw a yaml not a string)

* Change inventory mode to manual
add link to inventory documentation of zabbix

* Fix:
The test ansible-test sanity --test pep8 [?] failed with the following error:

lib/ansible/modules/monitoring/zabbix_host.py:532:1: E302 expected 2 blank lines, found 1
The test ansible-test sanity --test validate-modules [?] failed with the following error:

lib/ansible/modules/monitoring/zabbix_host.py:0:0: E309 version_added for new option (inventory_zabbix) should be 2.5. Currently 2.4
2017-10-20 04:45:29 -04:00
2fb8df503e Fix typo in ipa_user module documentation example. (#31928) 2017-10-20 09:07:45 +02:00
0c10e1ebe4 Handle timezone updates on Ubuntu 16.04+ on containers (#27546)
* Handle timezone updates on Ubuntu 16.04+ on containers

Although Ubuntu 16.04 will use timedatectl by default,
containers without a working timedatectl need to use the
old method.

A bug in Ubuntu for the old method means having to write
a nasty hack

https://bugs.launchpad.net/ubuntu/+source/tzdata/+bug/1554806

* Add tests for timezones

Ensure timezone changes work across various OSs
2017-10-20 16:02:38 +10:00
9007b51f93 New module: Add monitoring/zabbix_proxy module. (#24657)
* Implements zabbix_proxy module.

* Fixes formatting

* Bugfix

* Bugfix and various module documentation fixes.

* Iteritems python3 compatibility fix.

* PEP8 cleanup
2017-10-20 05:36:51 +02:00
5cccad8ed4 new windows module, win_audit_rule (#30473)
* added win_audit_rule with integration test

* Updated integration testing to target files as well as directories
and registry keys. Split testing files apart to be more organized.

Updated powershell for better handling when targetting file objects
and optimized a bit. Removed duplicated sections that got there from a
previous merge I think.

* Decided to make all the fact names the same in integration testing.
Seemed like there would be less change of accidentally using the wrong
variable when copy/pasting that way, and not much upside to having
unique names.

Did final cleanup and fixed a few errors in the integration testing.

* Fixed a bug where results was displaying a wrong value

Fixed a bug where removal was failing if multiple rules existed due to
inheritance from higher level objects.

* Resolved issue with unhandled error when used didn't have permissions
for get-acl.

Changed from setauditrule to addauditrule, see comment in script for reasoning.

Fixed state absent to be able to remove multiple entries if they exist.

* fixed docs issue

* updated to fail if invalid inheritance_rule when defining a file rather than warn
2017-10-20 11:20:33 +10:00
bb4b98a82e Adds regex for stdout needed for changing root password and regex for stderr catching problems with the password. (#31955) 2017-10-19 16:52:14 -07:00
3c271e6bf6 Remove unsupported comments from aliases. 2017-10-19 14:44:13 -07:00
a2970f5e8e Add UCS maintainers
Also fix to use implicit labeling (based on path) and create an aci_team entry
2017-10-19 23:41:06 +02:00
5b7d161b10 firewalld: don't reference undefined variable in error case (#31949)
* firewalld: don't reference undefined variable in error case

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>

* firewalld: don't set exception as var and not use it

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-10-19 17:09:06 -04:00
f76afab6e5 Add new default Docker container for ansible-test. (#31944)
* Add new default Docker container for ansible-test.
* Update ansible-test change classification.
* Update list of disabled pylint rules.
* Fix pylint issues with ansible-test.
2017-10-19 13:37:22 -07:00
fbbffbabde Mdd module unit test docs (#31373)
* new documentation for unit testing - especially module unit testing

* unit test documentation reformatting and further fixes

* unit test documentation - point to online coverage reports & fix bad spaces

* Small copy edits.

* First pass copy edit / rewrite. More info needed.

* testing documentation - clean up structure, especially code coverage - reduce repetition

* module unit test documentation - improved introduction

* testing documentation - more fixes from and inspired by review from dharmabumstead

* testing documentation - fixes from mattclay + some other minor tweaks

* More copy edits.

* testing documentation - further fixes from review

* Copy edits

* Copy edits

* More copy edits.
2017-10-19 13:36:57 -07:00
c02173880a git: remove duplicate ssh_wrapper cleanup (#31827) 2017-10-19 21:03:27 +02:00
d2e01477eb add root_device_type filter. (#31911)
* add root_device_type filter.

This module is due for a refactor, but I'm piling on.

* add version added
2017-10-19 14:59:15 -04:00
2ffe3c42bb fixed caches (#30667) 2017-10-19 14:23:22 -04:00
0b8e38d022 Relicense fact code I wrote to 2 clause BSD 2017-10-19 10:38:39 -07:00
be3f911ce3 Typo on "Prompts" page (#31882) 2017-10-19 10:50:27 +10:00
73abce83a9 iam_managed_policy: use python 3 compatible policy comparison - fixes #31474 (#31535)
* Move compare_policies and hashable_policy functions into module_utils/ec2

* Use compare_policies which is compatible with python 2 and 3.

* rename function to indicate internal use

* s3_bucket: don't set changed to false if it has had the chance to be changed to true already.
2017-10-19 08:55:45 +10:00
883169ab6b Relicense convert_bool to 2-clause BSD
This code originated in module_utils/basic.py which was BSD licensed.
In moving it and making it aplicable to other pieces of code that were
using similar functions, I added onto it a little.
2017-10-18 14:33:28 -07:00
1932101f7e Add Simplified BSD license to repo (#31913)
* changed basic.py Simplified BSD license header to new 1-line format
* created `licenses` dir at repo root to contain any future secondary licenses
2017-10-18 14:15:56 -07:00
2c8382eb87 Ensure valid_plugin_bin is defined
Fixes #31824
2017-10-18 14:05:03 -07:00
7fe6a8dab7 add all group vars back to implicit localhost
fixes #31857
reverts #31425
2017-10-18 13:57:55 -07:00
bd0e1b8743 Fix header direct_connect module_utils 2017-10-18 12:08:19 -07:00
eb899c9bcd Fix docker_secret integration test dependencies. 2017-10-18 10:42:31 -07:00
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
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
3182a878b5 Fix small typo 2017-10-18 16:47:58 +02:00
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
1b63885fc5 [cloud] Check instance public-IP property before transforming to dict (#31849) 2017-10-18 09:17:06 -04:00
598084fbc8 Document backup_path (#31844)
Fix a few consistency issues at the same time
2017-10-18 14:07:28 +01:00
6bf0cc36a7 Bump the vcsim container version (#31861) 2017-10-18 08:40:23 -04:00
e2fc61c554 Add yum integration tests using fake repo (#31646) 2017-10-18 13:07:48 +02:00
567e989581 Fix exception upon display.warn() (#31876)
Fixes #31875
2017-10-18 13:04:59 +02:00
a7df2322e4 ovirt: Add env variables to dynamic inventory (#31821)
This patch add new environment variables to oVirt dynamic inventory
to be consistent with all other oVirt modules:

 OVIRT_URL
 OVIRT_USERNAME
 OVIRT_CAFILE
 OVIRT_PASSWORD

Those variables are used as fallback if user don't specify a ini file,
with appropriate variables there.
2017-10-18 11:26:03 +01:00
4602a4e117 ovirt, azure_rm_common (#31877) 2017-10-18 11:24:28 +01:00
a35b4449ee Add support to pass a Makefile (#31853) 2017-10-18 11:19:24 +01:00
4acd0de8f0 Remove extraneous comment block (#31865) 2017-10-18 11:08:29 +01:00
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
7623c2fbda Disable flakey win_rabbitmq_plugin test. 2017-10-17 14:03:25 -07:00
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
6c3339402a Improve python 2/3 ABC fallback for pylint. (#31848)
* Improve python 2/3 ABC fallback for pylint.
* Allow longer method names in ansible-test.
2017-10-17 12:49:10 -07:00
70ae7382e5 Allow AWS region to be detected from boto profiles (#31768) 2017-10-17 15:43:30 -04:00
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
efec43dd1e hostname: fix for a new version of rhel (#31839)
Fixes #31811
2017-10-17 13:43:54 -04:00
264452e0a8 Fix bad syntax in test_infra integration test. 2017-10-17 09:53:54 -07:00
2c5ce656b0 Reenable 'test' label for test related pull requests (#31472)
* Reenable 'test' label

See #29660 comments

* packaging is not a valid GitHub label anymore
2017-10-17 12:42:09 -04:00
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
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
ee4e1be7cd Fixed redshift_subnet_group typo (#31836) 2017-10-17 09:16:59 -04:00
5a6ee054c0 Network command module for Brocade IronWare routers (#31429) 2017-10-17 13:54:32 +01:00
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
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
836677522d fixed up code-block for powershell block 2017-10-17 13:36:49 +10:00
888de842b3 win_regedit: fix extra info coming into stdout (#31813) 2017-10-17 11:58:32 +10:00
87db43afce Remove duplicate import 2017-10-16 21:50:31 -04:00
940bf1f627 Fallback to the newer object type for dvswitch 2017-10-16 21:50:31 -04:00
cc287daa3b Enable tracing and log collection in the vcsim container 2017-10-16 21:50:31 -04:00
e5eedfe4b8 Allow the user to declare an env var to set the vcsim container image 2017-10-16 21:50:31 -04:00
21cdddce74 correctly deal with changed (#31812) 2017-10-17 11:44:17 +10:00
5751b9b224 Update BOTMETA.yml 2017-10-17 05:39:25 +05:30
4ac475a967 win_dsc: link module documentation to main RST page (#31814) 2017-10-17 09:43:38 +10:00
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
68f177d381 py2/py3 safer shas on hostvars (#31788)
* py2/py3 safer shas on hostvars

* plain bytes
2017-10-16 16:43:56 -04:00
7acce3b958 Update the NetApp team (#31794)
Add a new maintainer to the NetApp team.
2017-10-16 16:01:08 -04:00
618627febd remove hosts from removed when rescuing
fixes #31707
2017-10-16 15:14:41 -04:00
f012c94fa5 Handle bad options syntax in validate-modules. 2017-10-16 11:38:14 -07:00
07f1e7540b move to use ansible logging 2017-10-16 11:34:55 -07:00
844e58aedb Define new_target_group before. Fixes #31378 (#31379) 2017-10-16 14:33:47 -04:00
c0fc797a06 fix html formatting 2017-10-16 14:27:46 -04:00
a26a2841ff fix closure issues
fixes #31786
2017-10-16 11:26:28 -07:00
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
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
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
b44c38930b Run OS X tests in 3 groups in CI. 2017-10-16 09:41:50 -07:00
a84545dc33 Fix typo 2017-10-16 20:58:27 +05:30
29a5938fb1 Update --extra-vars documentation. Fixes #11647 (#31433)
* Update --extra-vars documentation to address #11647

* Fix some grammar

* Fix indentation

* Reshuffle and add versionadded tags

* Remove code-block tags

* Add lf after versionadded lines
2017-10-16 10:50:38 -04:00
9bc60cd05e Fix -M/--module-path option for ansible-doc and ansible-console (#31744)
Fixes #31743
2017-10-16 10:47:40 -04:00
2d2656049a Update BOTMETA.yml 2017-10-16 19:55:11 +05:30
d6520c64b3 gce_instance_template: fix allow the setting of the service account (#29154) 2017-10-16 16:00:07 +02:00
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
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
6984eecdb9 zabbix: add validate certs param (#31739) 2017-10-16 15:42:28 +02:00
2087dc7384 Make RPM spec compatible with RHEL 6 (#31653)
* Make RPM spec compatible with RHEL 6

* Define __python2 macro only when undefined
2017-10-16 09:19:53 -04:00
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
f94ef03625 Fixes #30529 nxos_facts ipv6 interface (#31286)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-16 18:19:44 +05:30
052f4d2571 ovirt_networks: Fix label assigment condition (#31772) 2017-10-16 04:58:51 -04:00
e648a00312 Fix #24964 comparaison string vs integer (#31701) 2017-10-16 04:44:12 -04:00
f84b5b6059 Update ssm lookup to support getting parameters by path (#31752) 2017-10-16 10:31:57 +10:00
2fc1d6618f fix the handeling of empty auth_key (#31753) 2017-10-15 19:30:34 -04:00
b058b8e653 Update k8s_common.py 2017-10-15 14:52:39 -04:00
20d2a83e13 use to_str instead of json.dumps when serializing k8s object for logging 2017-10-15 14:52:39 -04:00
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
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
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
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
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
386515281e additional configmanager tests
left placeholders for more
2017-10-13 20:25:12 -04:00
8b8d5aaca7 cs_instance: remove CloudStackException dep (#31724)
- fixes dep
- fix docs
2017-10-14 00:09:57 +02:00
614a53734c Fix Debian packaging Dockerfile and docs. 2017-10-13 15:07:02 -07:00
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
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
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
34e2019251 [cloud] Require src parameter when aws_s3 is used with mode 'put' (#31657) 2017-10-13 13:57:40 -04:00
e26955fc9a [cloud] Document alias for aws_s3 'overwrite' option. (#31638) 2017-10-13 13:55:24 -04:00
1234a79349 Fix gender pronouns and the odd typo (#31709) 2017-10-13 13:52:38 -04:00
e2f16cfaf7 Port vault-keyring.py to properly load the config. Fixes #31304 (#31315) 2017-10-13 13:46:24 -04:00
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
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
8d4c059275 cloud: ovirt: Add ovirt_disk_facts module (#30422) 2017-10-13 10:32:41 -04:00
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
42deaf2c71 updating argument validation for activation keys to match subscription-manager command line, fixes #27283 (#30236) 2017-10-13 08:59:49 -04:00
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
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
91ab88dac7 pip: Use chdir directive in the venv path (fixes #25122) (#26865) 2017-10-13 12:39:47 +02:00
046d430a26 Fixes #31056 (#31057) 2017-10-13 10:38:44 +05:30
8a86746223 Fix typo in playbooks_error_handling (#31636) 2017-10-12 21:08:35 -07:00
e0c2b6bbb4 Rename ssm_parameter_store module and ssm lookup to be prefixed with aws (#31662) 2017-10-13 13:52:10 +10:00
f2fed10ad8 update Windows docs (#30783)
* first round of splitting and expanding Windows docs

* Added info about WinRM and started the usage page

* more details onf usage around command/shell

* added more info

* missed a page

* added info about hotfix and ps upgrade script

* Added DSC information

* filled in FAQ and fixed up links

* changes per PR review and typo fixes found by myself

* fixed sanity check

* updated external script URLS

* Edits

* Edits

* Edits

* Copy edits.

* More copy edits.

* Added info about becoming a local service account

* some formatting changes on become and DSC indent fix

* Copy edits/rewrites

* Copy edits/rewrites

* minor updates to UAC text, typos

* minor wording updates

* minor wording tweaks/typos

* minor wording tweaks/typos

* minor tweaks/typos

* fix indent issue

* fix title underline length

* fix quote issue
2017-10-12 18:40:47 -07:00
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
12c8dd1893 config tests
also a couple of fixes to manager
2017-10-12 19:26:39 -04:00
80b0e0e05a Remove cryptography version limit in Azure tests.
No longer needed now that cryptography 2.1.1 has been released.
2017-10-12 15:34:36 -07:00
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
6d16739926 [cloud] Support changeset_name parameter on CloudFormation stack create (#31436) 2017-10-12 15:44:06 -04:00
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
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
840a57a4ed s3_sync: fix broken import (#31460) 2017-10-12 20:48:05 +02:00
83dec70ad8 validate that existing dest is valid directory 2017-10-12 14:19:58 -04:00
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
1bf09a7d84 warn on bad keys in group 2017-10-12 12:02:11 -04:00
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
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
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
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
c05a7add5f Only install pyvmomi if user is root (#31628) 2017-10-12 10:20:33 -04:00
b68fe2cd23 highlight dynamic parts of error msg 2017-10-12 10:00:06 -04:00
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
e5c0958dbb ovirt_templates: Fix exlusive parameter (#31470) 2017-10-12 08:49:38 -04:00
23c47a65c1 ovirt_networks: Add label to network (#31517) 2017-10-12 08:49:30 -04:00
c71394a13a ovirt_clusters: add alias performance_preset for memory_policy (#31523) 2017-10-12 08:49:22 -04:00
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
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
295a0e9225 Create document fragment for enos modules (#31512) 2017-10-12 13:33:04 +01:00
ead00e9cae create terminal plugin for enos modules (#31510) 2017-10-12 13:32:27 +01:00
fa9421ef98 create cliconf plugin for enos - enos.py (#31509) 2017-10-12 13:31:57 +01:00
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
05ec376197 Multiple Parallels host support for ansible-test. (#31552) 2017-10-12 01:22:18 -07:00
03e18aa52e Remove cryptography install from CI other test. 2017-10-12 00:36:12 -07:00
c002b47a79 fix nxos_vlan unexpected deprecation warning (#31624)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-12 12:00:35 +05:30
9d811a34c4 pep8 fixes for vmware modules (#31537)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-10-12 07:50:05 +02:00
e7145e249f fix ios_interface test unsupported param (#31622)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-12 11:17:06 +05:30
e5f837661b botmeta: maintain cloudstack module utils (#31613) 2017-10-12 14:20:56 +10:00
540d53327d cs_instance_facts: fix pep8 (#31606) 2017-10-12 14:00:14 +10:00
9333684929 botmeta for lib/ansible/plugins/filter/network.py (#31608) 2017-10-12 13:56:00 +10:00
8acb901bf2 Update Azure tests to limit cryptography version. (#31616)
* Revert "Work around cryptography 2.1 requiring pip 8.1.2+"

This reverts commit a10a80b8a3.

* Update Azure tests to limit cryptography version.
2017-10-11 19:18:16 -07:00
03ec3cd572 [aws_s3] different fail msg depending on whether version is specified (#31598) 2017-10-12 12:12:55 +10:00
3ef4f7e847 Fix static determination for include_tasks
An incorrect removal of a conditional resulted in include_tasks falling
through to the old static detection mechanism incorrectly. This restores
the previous conditional check.

Fixes #31593
2017-10-11 17:30:45 -07:00
0371d0deda Fix Inventory Plugin Loading (#31605)
This change makes the PluginLoader use DEFAULT_INVENTORY_PLUGIN_PATH setting.
Inventory Plugins were only being loaded the 'inventory_plugins' folder of the current directory,
as well as the ansible-provided inventory plugins (e.g. `/path/to/site-packages/ansible/plugins/inventory`).
2017-10-11 17:28:11 -07:00
30822e5f91 Corrects examples in the find module. (#31522) 2017-10-12 09:43:18 +10:00
a10a80b8a3 Work around cryptography 2.1 requiring pip 8.1.2+ 2017-10-11 16:23:44 -07:00
f38b8d9997 Remove boundary_meter module as the hosted service it configured has been removed. (#31506)
References #29387
2017-10-12 09:12:37 +10:00
0bce693046 ovirt_templates: Add seal parameter (#31482) 2017-10-12 09:04:26 +10:00
e872763877 cs_portforward: remove CloudStackException dep (#31610)
- fixes pep8
- fixes doc
2017-10-12 00:25:01 +02:00
94a558887a Fix typo in command output of encrypt_string example. (#31601) 2017-10-11 14:24:33 -07:00
7fce636c2b windows: removed #Requires from PS pipelines as it causes STDERR false positives (#31558) 2017-10-11 14:16:58 -07:00
20e546258d Adds new committer to Ansible core (#31544)
This is me (Tim) signing and agreeing to the committer guidelines.
2017-10-11 22:08:47 +01:00
6f9e2b9a63 Add ellipsis to indicate YAML example is excerpt, not standalone 2017-10-11 17:04:12 -04:00
dc48d6879d zabbix_host: added zabbix host property (description) (#25969)
* zabbix_host: added zabbix host property (description)

* zabbix_host: fixed error E309 version_added for new option (description) should be 2.4

* zabbix_host: deleted unwanted else for update description

* lib/ansible/modules/monitoring/zabbix_host.py: increased version_added to 2.5 for option description

* lib/ansible/modules/monitoring/zabbix_host.py: allow to change the description

* lib/ansible/modules/monitoring/zabbix_host.py: added new lines back to fix pep8 issues
2017-10-11 22:26:43 +02:00
c1121dd5fb cs_securitygroup_rule: remove CloudStackException dependency (#31603)
- fixes pep8
- fixes docs
2017-10-11 22:23:00 +02:00
af6e89fbc8 cs_securitygroup: remove CloudStackException dep (#31597)
- fixes pep8
- fixes docs
2017-10-11 20:58:08 +02:00
0c416b5891 tests: cs_snapshot_policy: add integration tests 2017-10-11 18:35:54 +02:00
4dc3874176 cs_snapshot_policy: fix VM not found in non-default zone 2017-10-11 18:35:54 +02:00
d6e1f02990 cs_snapshot_policy: remove CloudStackException dependency 2017-10-11 18:35:54 +02:00
97d5e0d027 Remove log of command executed in persistent connection (#31581) 2017-10-11 19:03:21 +05:30
865a38bb8d Changed src_intf and dst_intf to list type (#31479) 2017-10-11 14:21:02 +01:00
9580a6569e Fix #21112 : Adding support for configuring a CD-rom iso image (#28155)
* Initial CD-ROM support

* create cdrom bugfix

* Improving CDROM change detection and fixing template creation bug
Running MarkAsTemplate on an existing template will fail with an error

* Better change detection for guest ID
Should only mark a change in case it actually changes

* Adding integration tests

* Pep8 compliance fixes

* Adding CDROM support, including iso, client and none types

* Updating added release version for CDROM option
2017-10-11 14:29:13 +02:00
c976ac7ed6 change ports to non well known ports and drop time_range for N1 (#31261) 2017-10-11 17:37:01 +05:30
748adf7a8e New module: Add monitoring/zabbix_template module. (#25566)
* Implements zabbix_template module.

* Fixes formatting

* Fixes formatting2

* Add templates_clear

* fix some bug

* Fixes formatting

* update ansible 2.5
2017-10-11 12:59:30 +02:00
025386c56b Fix nxos_banner removal idempotence issue in N1 images (#31259)
* Fix nxos_banner removal idempotence issue in N1 images

* handle pep8 error
2017-10-11 16:26:17 +05:30
7acb0bb187 Parameterize the ssh port on ios_user tests (#31573)
On CI we use 8022 for SSH, thus we need to explicitly pass
ansible_ssh_port to the ssh command to work.
2017-10-11 12:44:57 +02:00
ac95ecaf13 Remove duped authorize on ios_ping anchored tasks (#31572)
Otherwise, we get warnings.
2017-10-11 12:28:10 +02:00
c75c4cbfc8 Introspect the management IP on ios_ping (#31571)
On our CI we don't have external connectivity, so let's ping to
the management interface IP.
Also, ignore errors on the expected failures tests.
2017-10-11 12:10:11 +02:00
88da95bb77 Fix rollback in junos_config (#31424)
* Fix rollback in junos_config

Fixes #30778

*  Call `load_configuration` with rollback id in case
   the id is given as input
*  Pass rollback id to `get_diff()` to fetch diff from device

* Fix unit test
2017-10-11 10:25:56 +05:30
2ed46e04f4 more updates to plugin/config generation (#30787)
* fixed module generation

added missing lookup page
point to plugins when plugins
made modules singular
add display for verbose an debug messages
nicer templating, changed generation order for ref
corrected links
moved most of lookup docs to plugin section

* Copy edits
* Fixed typos
* Clarified wording
2017-10-11 00:15:25 -04:00
3886f80e44 fix paths to actually be config file relative (#31533)
* fix paths to actually be config file relative

also allow to unfrack paths for 'not cwd'
only use -i 'localhost,' for adhoc in pull
2017-10-10 19:17:17 -07:00
dde2c96d67 Try to cleanup after the rpm_key test 2017-10-10 17:40:35 -07:00
a4ceb4c35f improve become/runas error messaging on bogus/missing username (#31551) 2017-10-10 16:53:21 -07:00
751f577de1 ignore chouseknecht as azure_rm module maintainer 2017-10-10 16:52:16 -07:00
d84df2405d move from with_<lookup>: to loop:
- old functionality is still available direct lookup use, the following are equivalent

  with_nested: [[1,2,3], ['a','b','c']]

  loop: "{{lookup('nested', [1,2,3], ['a','b','c'])}}"

- avoid squashing with 'loop:'
- fixed test to use new intenal attributes
- removed most of 'lookup docs' as these now reside in the plugins
2017-10-10 15:43:49 -04:00
bd17edd5ed Run neighbors intent tests for ios_interface only if show lldp contains netdev (#31539) 2017-10-10 21:26:47 +02:00
24c360287e yum: fix crashes installing from file/url 2017-10-10 11:39:47 -07:00
89d09bae21 [cloud] Fix ec2_group when security group lacks a VPC (#31526) 2017-10-10 13:15:11 -04:00
6fee6f71f7 aws_s3: fix upload_file's ExtraArgs - fixes #31232 (#31487)
* Module option metadata are extra arguments rather than S3 object metadata: update ExtraArgs variable.

* Remove hyphens from ExtraArgs to maintain backwards compatibility

* Map lowercase extra args to CamelCase

* Maintain backwards compatibility by guessing at content type rather than always defaulting to binary/octet-stream.

* Fix ExtraArgs for non-hyphenated options

* Simplify logic
2017-10-10 13:12:58 -04:00
2610b521bc Remove sysctl entries when state=absent (#31486)
* Remove sysctl entry when state=absent
* Cleanup sysctl integration test syntax
* Correct grammar on error message
* Add sysctl integration test for state=absent
2017-10-10 09:01:33 -07:00
a48532de5f Use default values for object returned from aws to prevent TypeError (#31455)
* Use default values for object returned from aws to prevent TypeError
NoneType exception fixes #31454
2017-10-10 10:08:06 -04:00
9a8055a8e5 add note on how to avoid service start in apt 2017-10-10 09:24:09 -04:00
5ccc1072ea [rpm_key] Fix to import first key on the system (#31514)
* [rpm_key] Fix to import first key on the system

Fixes: #31483

* [rpm_key] removed unsafe_shell and "throwaway" underscore

* [rpm_key] adding test to add the first key on system
2017-10-10 13:31:20 +02:00
ada6159ece first path check missing forward slash between dcpath and datacenter (#31481)
* fixed folder path logic

* fixed folder path logic

* fixed folder path logic
2017-10-10 03:14:12 -04:00
2b63ae61f2 minor updates + tests to win_firewall_rule as per jborean93 review (#29148)
* Added warning for 'force' option

* Changed 'profiles' type to list

* Changed 'interfacetypes' type to list

* Added deprecation warning and fixed doc

* updated force parameter
2017-10-10 16:23:08 +10:00
b454115e9f Update test cases
* Remove cloudstack, f5, and nxos from the wildcard import whitelist
* Remove nxos and f5 from the get_exception whitelist
* Remove some files from the pep8 legacy whitelist
2017-10-09 21:41:02 -07:00
2db9b6d2ca Remove wildcard import in test_nclu 2017-10-09 21:41:02 -07:00
4cad720b22 Remove wildcard imports from cloudstack modules.
Also add boilerplate.
2017-10-09 21:41:02 -07:00
2f8831c787 Fix get_exception and wildcard imports for nxos modules 2017-10-09 21:41:02 -07:00
c81314dcb9 Add a hack to test whether type=path should be used in a module 2017-10-09 21:15:56 -07:00
75eed6a51a Port arg specs from type='str' to type='path' 2017-10-09 21:15:56 -07:00
dc69af50dc clarified inventory_dir changes for 2.4 (#31484)
* clarified inventory_dir changes for 2.4

added example on how to restore (mostly) old behaviour for add_hosts

fixes #30901
2017-10-09 20:56:32 -07:00
74107ff7cc better message for unsupported include/imports
adhoc cannot currently execute these actions
2017-10-09 20:49:11 -07:00
aade5234a9 Fix urlparse import for Python3 (#31240)
* Fix urlparse import for Python3 in

* contrib/inventory/consul_io.py
* contrib/inventory/rudder.py
* contrib/inventory/windows_azure.py
* lib/ansible/module_utils/known_hosts.py
* lib/ansible/modules/cloud/centurylink/clc_firewall_policy.py
* lib/ansible/modules/cloud/docker/_docker.py
* lib/ansible/modules/cloud/ovirt/ovirt_disk.py
* lib/ansible/plugins/action/ce_template.py
2017-10-09 20:18:09 -07:00
2b2e3e688f updated changelog for win_become with service accounts 2017-10-10 11:04:09 +10:00
82fa922491 win_become: Added support to become a service user (#30407)
* win_become: Added support to become a service user

* fixes for linting

* changes to get local and network service working

* fixed linting issues again

* pleasing pepe
2017-10-09 17:58:29 -07:00
4e22677e7d revert namespaced facts changes to package/service
fixes #31485
2017-10-09 16:31:58 -07:00
0c64bbcd6f Document return values for aws_s3 (#31158)
* Document return values for aws_s3
2017-10-10 09:26:42 +10:00
91a36faddb New module: Add module for Amazon Systems Manager Parameter Store (cloud/amazon/ssm_parameter_store) (#23460)
- new module: ssm_parameter_store
- new lookup: ssm

* lookup module ssm - adjust error message

* Pacify pylint erroring on botocore not found

* adjust to version 2.5
2017-10-10 09:04:40 +10:00
665d838fc2 added optional environment passthrough for MacOS 10.13 compatibility (#31500) 2017-10-10 08:41:06 +10:00
f2bc89a880 win_copy: added decrypt option (#31291) 2017-10-10 08:21:25 +10:00
Rob
1353aae456 [cloud] Fix #31271 - cast all tag values as strings (#31272)
* Fix #31271 - cast all tag values as strings

* Replace `str` with `to_native`
2017-10-09 17:10:54 -04:00
2ba5998c94 [cloud] Ensure absence of public_dns_name doesn't halt ec2 module (#31476) 2017-10-09 17:04:25 -04:00
75c5d0fedc Adds the bigip_remote_syslog module
This patchs add a remote-syslog module that can be used by people
to manage their (basic, not HSL) syslog configuration
2017-10-09 13:21:16 -07:00
5bf9f271b3 win_copy: Add missing check_mode fix (#31469)
* Add missing check_mode fix

* Refactor conditional to use the one embedded in Remove-Item
2017-10-09 20:37:33 +02:00
1c9bffe248 pip module: fix TypeError (#31395)
* pip: add test: an error occurs when pip not found
* pip: fix TypeError exception when pip executable isn't found
2017-10-09 10:01:21 -07:00
5e9384300d Add boilerplate and remove wildcard imports for openstack modules (#31461)
* Add boilerplate and remove wildcard imports for openstack modules
* Remove openstack files that are now pep8 compliant from the legacy list
2017-10-09 09:56:26 -07:00
e609618274 Template role_name when statically including via include_role (#31463)
Also trims out code which was incorrectly setting is_static=True for
include_role.

Fixes #30700
2017-10-09 11:39:29 -05:00
7d49b27218 added toggle to control vars plugin behviour
this should allow user to control how they want the playbook dirs inspected
for additional vars, default now reverts to 2.3 behaviour (top).
corrected paths order
minor doc reword
2017-10-09 12:31:15 -04:00
adcd185273 version is string and should be 2.9 2017-10-09 12:15:56 -04:00
6b34dc788a [feat] module apt: add warning on deprecated states 2017-10-09 12:14:36 -04:00
958ad7726a Properly handle user selection of None as vars_files (#31313)
* Properly handle user selection of `None` as vars_files

In a playbook, if a user has a playbook like:

```
- hosts: localhost
  connection: local
  vars_files:
  tasks:
  - ....
```

Then `vars_files` will be none, and cause a `TypeError` in vars-manager when it
tries to iterate over them. To avoid this, I changed the getter to either send
back the vars files from the user, or an empty list when the user passed
`None`.

* Only replace None with an empty list, not all falsey values

* Catch error when vars_files isn't iterable

* Move whole `for` loop into try/except and catch TypeError

* Line length
2017-10-09 11:27:50 -04:00
ef72eda172 Adding doc for the description argument of lxd_profile module 2017-10-09 11:11:58 -04:00
9c81257ce3 Remove wildcard imports from amazon modules (#31451)
* Remove wildcard imports from amazon modules
* Remove files from legacy pep8 that now pass
2017-10-09 07:38:41 -07:00
1037c211d9 Update playbooks_lookups.rst
fix doublequote being used in place of the colon
2017-10-09 10:00:05 -04:00
63e59a9825 maven_artifact: Add classifier to default dest (#24518) 2017-10-09 07:56:33 -06:00
870974e0be ec2_vpc_route_table: fix broken import (#31459) 2017-10-09 20:20:31 +10:00
13631ececa yum: check if env groups are installed (#31182) 2017-10-09 06:01:34 -04:00
d025aca66f Add optional port parameter to nsupdate module (#31446)
An example of when it's useful to be able to specify a custom port
number is when one is using an (ssh) tunnel to update a hidden master.
2017-10-09 05:51:17 -04:00
0be8ac6797 ec2_vpc_igw: fix broken import (#31458) 2017-10-09 15:36:12 +10:00
ae5d8e5ebb modprobe: PEP8 compliancy and doc fixes (#31255)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
- Make module a bit more consistent with existing practices
2017-10-08 09:21:58 -04:00
4804e99b44 Change ping docs to refer to win_ping (#31444) 2017-10-08 08:33:51 +01:00
a9942353fe revert ocalhost getting 'all' vars (#31425)
back to previous implicit localhost behaviour

fixes #31420
2017-10-06 19:11:00 -04:00
e4c61ea9a1 fix 'return false' from parse
this was abandoned early on the manger side  but seems like we left behind on plugin side.
more flexible extensions with yaml plugin
validate data correctly for yaml/constructed
fixed issue with only adding one child to keyed, the group only got the host that forced it's creation

fixes #31382
fixes #31365
2017-10-06 13:25:06 -04:00
f2ade09dce use configured ansible_shell_executable
refine args/shell/executable hanlding
2017-10-06 08:56:21 -04:00
48f4643a66 nxos_snmp_* fixes : Fixes #30997, #30999 (#31000)
* add codeblock to handle 5K platform for nxos_snmp_host

* fix get_snmp_traps for 5K platform

* Make shippable happy
2017-10-06 18:21:59 +05:30
0218fdcd80 Fixes #30846 (#30862) 2017-10-06 17:10:03 +05:30
146f90e16b Fixed RST hyperlink issues (#31394) 2017-10-06 01:30:10 -07:00
9a1b495894 Fix idempotency if zabbix_host when visible_hostname is not set (#31388) 2017-10-06 03:28:17 -04:00
c4b51009f0 win_copy: allow src to have invalid windows chars (#31392)
* win_copy: allow src to have invalid windows chars

* create file with colon instead of avoid checkout errors
2017-10-06 15:23:37 +10:00
14b9a6b350 Add example showing how to add host to multiple groups (#31152)
* Add example of how to add host to multiple groups

* use 'name' task keyword for comments
2017-10-06 01:02:53 -04:00
044dd699c2 Addition of TCP protocol to ELB target group (#31228)
* Addition of TCP protocol to ELB target group as target groups support HTTP/S and TCP now

* Fixup stickiness type so that it checks if the current_tg has the stickiness_type key in the dict, as TCP ones do not
2017-10-06 00:27:30 -04:00
15dffe04dd fix misformatted docsite link (#31384)
reason: The link is showing verbatim in the docs, where it should only
show "knowledge base article".

Also, generating the docs shows a lot of:

docs/docsite/rst/win_acl_module.rst:424: WARNING: Unknown target name: "know ledge base article<https://access.redhat.com/articles/rhel-top-support-policies>".
2017-10-05 18:52:30 -07:00
d332367018 Allow an Elastic IP to be re-associated in ec2_eip (#27389)
Trying to associate an already-associated ElasticIP was failing.

This is however supported by the `boto` method that is used
under the hood, `associate_address`:

To quote `boto` documentation:
```
This option to allow an Elastic IP address that is already
associated with another networkinterface or instance to be
re-associated with the specified instance or interface.
```

This defaults to False, both per backwards-compatibility
and to mirror the boto default value.

Fixes #27385
2017-10-06 09:51:36 +10:00
a6e27a903a better chown errors 2017-10-05 18:40:41 -04:00
7417282d37 Do not run systemctl daemon-reload in check mode 2017-10-05 18:40:02 -04:00
fad3a4dc83 Fix typo in vault decrypt error message (#31335) 2017-10-05 18:09:22 -04:00
336723d293 Allow zabbix_host to change proxy to no proxy, fixes #24735 (#29123) 2017-10-05 17:51:37 -04:00
13e89b17cc remove explicit provider reg from azure_rm (#31369)
* now that it's handled automatically as of msrest > 0.4.9
2017-10-05 12:48:13 -07:00
efe3c94b1b [cloud] ec2.py: warn that removing a public ipv4 address is not permitted - fixes #30679 (#30952)
* Add a warning to ec2.py if assign_public_ip is different from the matching instance(s) since it isn't a modifiable attribute.

* remove comments
2017-10-05 15:32:52 -04:00
f219d6b96d [cloud] EC2_ASG Set desired capacity to min_size if no instances exist (#30987)
* Set desired capacity to min_size if no instances exist

* Improve readability of if/then clause

* Only update null desired_capacity to min_size on initial create

Any future updates to the ASG will be able to reference the existing
capacity.
2017-10-05 14:56:46 -04:00
cb01f33d1e refactor azure dynamic inventory script configparser import to support python3 (#31370)
* refactor configparser import to support python3

* change ModuleNotFoundError to ImportError
2017-10-05 11:49:35 -07:00
e859d0da9c data should be redacted in docker_secret (#31366) 2017-10-05 14:07:23 -04:00
b79d15e67f Improve and link Network Proxy docs (#31316)
* Improve and link Network Proxy docs

It is possible for proxy issues to cause "unable to open shell", so
detail there.

Having the "how-to" in the debug page makes more sense than on the
porting page, so move it.

Fixed a few formatting issues at the same time.

* Edits

* typo
2017-10-05 18:47:32 +01:00
95e1d91d5d Mention Ansible in package descriptions
These values are used by software updaters to show which applications
are being updates to the user. In the case of Ubuntu, it will now show
clearly that it is updating Ansible instead of a radically simple IT
automation platform.
2017-10-05 08:41:15 -07:00
08bffbcbaa yum: add integration tests for installing from URL (#30616) 2017-10-05 15:25:45 +02:00
e7902d888c Make ansible_selinux facts a consistent type (#31065)
* Make ansible_selinux facts a consistent type

Rather than returning a bool if the Python library is missing, return a dict with one key containing a message explaining there is no way to tell the status of SELinux on the system becasue the Python library is not present.

* Fix unit test
2017-10-05 09:19:08 -04:00
488534b906 yum: add integration test for incompatible arch rpm (#31185) 2017-10-05 14:57:15 +02:00
4337b7a777 Fix rpm_key absent. (#31045)
When keyid is 8 charactes long, drop_key function cuts everything
issuing an error: "package gpg-pubkey- is not installed"
2017-10-05 14:45:14 +02:00
2e4dcc9dda Fix nxos terminal regex to parse xml response (#31283)
Fixes #26130

Modify nxos terminal regex to parse a xml response.
2017-10-05 15:32:43 +05:30
266c2f5831 fixes #31080 (#31081) 2017-10-05 14:33:59 +05:30
9f72b32c5d nxos_config intended_config docfix (#31337)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-10-05 14:25:50 +05:30
bed7cd8b11 restore connection options from cli
fixes #30720
2017-10-04 23:14:26 -07:00
6f3c7a8d86 updated dig lookup for bot 2017-10-04 21:34:03 -04:00
d2c7539ae8 removed example for restricted facts namespace
(cherry picked from commit e1fab37316)

fixes #31330
2017-10-04 20:39:01 -04:00
e167c9338c Avoid msrest version 0.4.15 for Azure modules.
This version has known regressions preventing modules such as
azure_rm_dnsrecordset from working.
2017-10-04 15:59:52 -07:00
52497920fa We want the ini and env vars to both override in the same order
There's an ssh version and a generic version.  We want the ssh version
to override the generic version in both cases.
2017-10-04 13:06:56 -07:00
6459bacb6b Revert "fix git wrapper (#29069)"
This reverts commit f8005d2737.

fix needs to be rethought as it applies to only newer git versions
and use of env shell breaks with non 'bourne compatible' shells
2017-10-04 12:55:57 -07:00
a333f2e5b0 Fix ansible-test config management. 2017-10-04 12:52:36 -07:00
aa658c64ec Allow any_errors_fatal to be set in playbook - fixes #30691 (#30839)
* Allow any_errors_fatal to be set in playbook.
* Default to the config file value for any_errors_fatal only if it isn't already provided.
* add _get_attr method
2017-10-04 12:52:27 -07:00
f3f0ba87ce Corrects Copyrights and License headers (#31324)
The format has changed for these in the dev_guide. This corrects
them for the F5 modules
2017-10-04 20:16:17 +01:00
8aa33419c9 check type to avoid typeerror tb
fixes #31290 by giving more meaningful message
2017-10-04 15:14:10 -04:00
115b4fdc9b yum: fix name parsing out of envra (#31247) 2017-10-04 20:48:00 +02:00
5085c3b859 made note about cwd not working for hostlist anymore (#31258)
* made note about cwd not working for hostlist anymore

fixes #31041

* Edits
2017-10-04 14:18:43 -04:00
3717ff64cf Adds the bigip_monitor_https module (#31205)
This patch adds the https_monitor module which allows people
to create and manage HTTPS monitors.
2017-10-04 17:18:59 +01:00
dbae704d3c correctd inventory_file to return full path
fixes #31294
2017-10-04 11:53:25 -04:00
2b08e00a54 Update uptime.py example script with changes to the API. Fixes #31229 2017-10-04 08:50:10 -07:00
f00d47fac0 dont follow symlinks for inventories
now symlink dir is checked for locality of group/host_vars

fixes #31195
2017-10-04 11:04:32 -04:00
852d457549 turn all inventory cache 'off by default' 2017-10-04 10:51:39 -04:00
46621a3ddd updated constructed docs to clarify use of ext 2017-10-04 08:44:45 -04:00
54ca841611 cloud:ovirt:ovirt_storage_domains.py: Don't require extra params when state==absent (#30337)
Make sure that example in docs is usable:

 # Remove storage domain
 - ovirt_storage_domains:
     state: absent
     name: mystorage_domain
    format: true

Without this PR data_center and host parameters where required when we wanted to
remove some storage domain.

Also fixes a regression when trying to remove a detached
storage domain.
2017-10-04 05:27:25 -04:00
65749bd432 Return None for DC in case of detached storage domain (#29175)
The following patch fixes a regression when trying to remove a detached
storage domain.
As part of the remove process the ovirt_storage_domains module first
tries to move the domain to maintenance and detach it.
In case of removing a detached storage domain with no DC attached to it
The maintenace process will fail with 404 (not exists) exception when
trying to fetch the DC using empty Guid.
The fix proposes a solution to return None value in case of a detached
storage domain.
2017-10-04 04:43:42 -04:00
5e3177e29d ovirt_clusters: Fix fencing and kuma comparision (#30302) 2017-10-04 04:43:35 -04:00
70f221d57a ovirt_vms: Raise proper error when template isn't found (#30306) 2017-10-04 04:43:28 -04:00
04f0b5adca cloud: ovirt_datacenter.py: Add 'force' parameter for removing dc (#30352) 2017-10-04 04:43:20 -04:00
47e9353a31 ovirt_hosts: print error when host for iscsi login not found (#30928) 2017-10-04 04:33:45 -04:00
3978baf32f ovirt_vms: Support to specify VM id (#31253)
Fixes: https://github.com/ansible/ansible/issues/30873
2017-10-04 04:32:49 -04:00
9c6ad3d076 Add update_only parameter for yum module (#22206)
* Add update_only parameter for yum module

When using latest, `update_only: yes` will ensure that only existing
packages are updated and no additional packages are installed.

* Update yum.py

Update version added for `update_only` parameter to 2.5

* add unit tests for update_only flag in yum module
2017-10-04 10:25:13 +02:00
1378861fe7 Fixes nxos_igmp_interface idempotence issue for N1 images (#31220) 2017-10-04 12:53:44 +05:30
795d19bc78 Revert "Temporarily disable OS X in CI."
This reverts commit b26ae1809c.
2017-10-03 23:03:58 -07:00
c41f781e1d Make YUM repo URL clickable again (#31264)
Make YUM repo URL clickable again
2017-10-03 22:32:20 -07:00
00df1fda10 Correctly write SELinux config file (#31251)
* Add new lines to end of config file lines

* Properly write out selinux config file

Change module behavior to not always report a change but warn if a reboot is needed and return reboot_required.

Improve the output messages.

Add strip parameter to get_file_lines utility to help with parsing the selinux config file.

* Add return documentation

* Add integration tests for selinux module

* Use consistent capitalization for SELinux

* Use atomic_move in selinux module

* Don't copy the config file initially

There's no need to make a copy just for reading.

* Put message after set_config_policy in case the change fails

* Add aliases to selinux tests
2017-10-03 23:38:58 -04:00
aa4b3f14c5 corrected version added 2017-10-03 21:50:13 -04:00
e61c2799ff win_become: move error handling to Ansible outside of shell (#31227)
* win_become: move error handling to Ansible outside of shell

* trimmed the output so double newlines don't get set

* added test for non-zero exit code

* missed issue URL on test

* changed exit to SetShouldExit
2017-10-03 21:42:27 -04:00
34878926ca fix monit version check
it was erroneously checking > 3.18 instead of > 5.18

Fixes #30614
2017-10-03 15:18:29 -07:00
b26ae1809c Temporarily disable OS X in CI. 2017-10-03 14:58:16 -07:00
5a91ed0a3b Switch CI for OS X back to a single job. (#31265)
* Update Shippable scripts for group/non-group use.
* Switch CI for OS X back to a single job.
2017-10-03 14:37:05 -07:00
9c6d7ddeb5 report extra info in verbose and if needed 2017-10-03 16:48:21 -04:00
8f62be7b7c win_reg_stat actually sets properties to be a dictionary, not a list (#31252) 2017-10-04 07:19:32 +11:00
bba941cd5b win_copy: fix for copying encrypted file without pass (#31084)
* win_copy: fix for copying encrypted file without pass

* fix pep8 issue

* reduced the diff and fixed some minor issues
2017-10-03 12:51:57 -07:00
72237b63e7 Run OS X and FreeBSD CI tests using groups. (#31254)
* Run OS X and FreeBSD CI tests using groups.
* Improve readability of Shippable jobs.
2017-10-03 12:43:46 -07:00
65393e4747 Fix ansible_distribution on Ubuntu 10.04 (#31108)
The /etc/os-release based distro detection doesn't
seem to work for Ubuntu 10.04 (no /etc/os-release?).

So it was testing the next case which was /etc/lsb-release to
see if it is 'Mandriva'. Since the check for existence of
(/etc/lsb-release, Mandrive) was the first non-empty dist
file match, 'ansible_distribution' was being set to 'Mandriva'
expecting to be corrected by the data from the dist file content.

But since the dist file parsing for Mandriva didn't match for
Ubuntu 10.04 /etc/lsb-release _and_ there is no Debian specific
lsb-release check, 'ansible_distribution' stayed at 'Mandriva'
and the dist file checking loop keeps going and eventually off
the end of the list before finding a better match.

Adding a debian/ubuntu specific check for /etc/lsb-release after
the debian os-release sets the info correctly and stops further
checking of dist files.

Fixes #30693
2017-10-03 15:32:33 -04:00
6caac2743a Add support for LVM to filesystem module (#21620)
And since LVM2_member is not a very userfiendly name, add
a mechanism for more user friendly names.
2017-10-03 15:26:25 -04:00
fc557b6442 Module granting project_access to various resources 2017-07-16 12:22:17 +02:00
7525 changed files with 537214 additions and 143361 deletions

2
.gitattributes vendored
View File

@ -1,4 +1,2 @@
CHANGELOG.md merge=union
.github/ export-ignore
hacking/ export-ignore
ticket-stubs/ export-ignore

785
.github/BOTMETA.yml vendored

File diff suppressed because it is too large Load Diff

3
.github/CODE_OF_CONDUCT.md vendored Normal file
View File

@ -0,0 +1,3 @@
# Community Code of Conduct
Please see the official [Ansible Community Code of Conduct](https://docs.ansible.com/ansible/latest/community/code_of_conduct.html).

View File

@ -1,48 +1,43 @@
<!---
Verify first that your issue/request is not already reported on GitHub.
Also test if the latest release, and master branch are affected too.
-->
THIS FORM WILL BE READ BY A MACHINE, COMPLETE ALL SECTIONS AS DESCRIBED.
Also test if the latest release, and devel branch are affected too.
ALWAYS add information AFTER (OUTSIDE) these html comments.
Otherwise it may end up being automatically closed by our bot. -->
##### SUMMARY
<!--- Explain the problem briefly -->
##### ISSUE TYPE
<!--- Pick one below and delete the rest: -->
<!--- Pick one below and delete the rest -->
- Bug Report
- Feature Idea
- Documentation Report
##### COMPONENT NAME
<!--- Name of the module/plugin/task/feature -->
<!--- Insert, BELOW THIS COMMENT, the name of the module, plugin, task or feature.
Do not include extra details here, e.g. "vyos_command" not "the network module vyos_command" or the full path-->
##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes below -->
<!--- Paste, BELOW THIS COMMENT, verbatim output from "ansible --version" between quotes below -->
```
```
##### CONFIGURATION
<!---
If using Ansible 2.4 or above, paste the results of "ansible-config dump --only-changed"
<!--- If using Ansible 2.4 or above, paste, BELOW THIS COMMENT, the results of "ansible-config dump --only-changed"
Otherwise, mention any settings you have changed/added/removed in ansible.cfg
(or using the ANSIBLE_* environment variables).
-->
(or using the ANSIBLE_* environment variables).-->
##### OS / ENVIRONMENT
<!---
Mention the OS you are running Ansible from, and the OS you are
<!--- Mention, BELOW THIS COMMENT, the OS you are running Ansible from, and the OS you are
managing, or say "N/A" for anything that is not platform-specific.
Also mention the specific version of what you are trying to control,
e.g. if this is a network bug the version of firmware on the network device.
-->
##### SUMMARY
<!--- Explain the problem briefly -->
e.g. if this is a network bug the version of firmware on the network device.-->
##### STEPS TO REPRODUCE
<!---
For bugs, show exactly how to reproduce the problem, using a minimal test-case.
For new features, show how the feature would be used.
-->
<!--- For bugs, show exactly how to reproduce the problem, using a minimal test-case.
For new features, show how the feature would be used. -->
<!--- Paste example playbooks or commands between quotes below -->
```yaml

61
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,61 @@
---
name: 🐛 Bug report
about: Create a report to help us improve
---
<!---
Verify first that your issue/request is not already reported on GitHub.
THIS FORM WILL BE READ BY A MACHINE, COMPLETE ALL SECTIONS AS DESCRIBED.
Also test if the latest release, and devel branch are affected too.
ALWAYS add information AFTER (OUTSIDE) these html comments.
Otherwise it may end up being automatically closed by our bot. -->
##### SUMMARY
<!--- Explain the problem briefly -->
##### ISSUE TYPE
- Bug Report
##### COMPONENT NAME
<!--- Insert, BELOW THIS COMMENT, the name of the module, plugin, task or feature.
Do not include extra details here, e.g. "vyos_command" not "the network module vyos_command" or the full path-->
##### ANSIBLE VERSION
<!--- Paste, BELOW THIS COMMENT, verbatim output from "ansible --version" between quotes below -->
```
```
##### CONFIGURATION
<!--- If using Ansible 2.4 or above, paste, BELOW THIS COMMENT, the results of "ansible-config dump --only-changed"
Otherwise, mention any settings you have changed/added/removed in ansible.cfg
(or using the ANSIBLE_* environment variables).-->
##### OS / ENVIRONMENT
<!--- Mention, BELOW THIS COMMENT, the OS you are running Ansible from, and the OS you are
managing, or say "N/A" for anything that is not platform-specific.
Also mention the specific version of what you are trying to control,
e.g. if this is a network bug the version of firmware on the network device.-->
##### STEPS TO REPRODUCE
<!--- For bugs, show exactly how to reproduce the problem, using a minimal test-case.
For new features, show how the feature would be used. -->
<!--- Paste example playbooks or commands between quotes below -->
```yaml
```
<!--- You can also paste gist.github.com links for larger files -->
##### EXPECTED RESULTS
<!--- What did you expect to happen when running the steps above? -->
##### ACTUAL RESULTS
<!--- What actually happened? If possible run with extra verbosity (-vvvv) -->
<!--- Paste verbatim command output between quotes below -->
```
```

View File

@ -0,0 +1,61 @@
---
name: 📝 Documentation Report
about: Ask us about docs
---
<!---
Verify first that your issue/request is not already reported on GitHub.
THIS FORM WILL BE READ BY A MACHINE, COMPLETE ALL SECTIONS AS DESCRIBED.
Also test if the latest release, and devel branch are affected too.
ALWAYS add information AFTER (OUTSIDE) these html comments.
Otherwise it may end up being automatically closed by our bot. -->
##### SUMMARY
<!--- Explain the problem briefly -->
##### ISSUE TYPE
- Documentation Report
##### COMPONENT NAME
<!--- Insert, BELOW THIS COMMENT, the name of the module, plugin, task or feature.
Do not include extra details here, e.g. "vyos_command" not "the network module vyos_command" or the full path-->
##### ANSIBLE VERSION
<!--- Paste, BELOW THIS COMMENT, verbatim output from "ansible --version" between quotes below -->
```
```
##### CONFIGURATION
<!--- If using Ansible 2.4 or above, paste, BELOW THIS COMMENT, the results of "ansible-config dump --only-changed"
Otherwise, mention any settings you have changed/added/removed in ansible.cfg
(or using the ANSIBLE_* environment variables).-->
##### OS / ENVIRONMENT
<!--- Mention, BELOW THIS COMMENT, the OS you are running Ansible from, and the OS you are
managing, or say "N/A" for anything that is not platform-specific.
Also mention the specific version of what you are trying to control,
e.g. if this is a network bug the version of firmware on the network device.-->
##### STEPS TO REPRODUCE
<!--- For bugs, show exactly how to reproduce the problem, using a minimal test-case.
For new features, show how the feature would be used. -->
<!--- Paste example playbooks or commands between quotes below -->
```yaml
```
<!--- You can also paste gist.github.com links for larger files -->
##### EXPECTED RESULTS
<!--- What did you expect to happen when running the steps above? -->
##### ACTUAL RESULTS
<!--- What actually happened? If possible run with extra verbosity (-vvvv) -->
<!--- Paste verbatim command output between quotes below -->
```
```

View File

@ -0,0 +1,61 @@
---
name: ✨ Feature request
about: Suggest an idea for this project
---
<!---
Verify first that your issue/request is not already reported on GitHub.
THIS FORM WILL BE READ BY A MACHINE, COMPLETE ALL SECTIONS AS DESCRIBED.
Also test if the latest release, and devel branch are affected too.
ALWAYS add information AFTER (OUTSIDE) these html comments.
Otherwise it may end up being automatically closed by our bot. -->
##### SUMMARY
<!--- Explain the problem briefly -->
##### ISSUE TYPE
- Feature Idea
##### COMPONENT NAME
<!--- Insert, BELOW THIS COMMENT, the name of the module, plugin, task or feature.
Do not include extra details here, e.g. "vyos_command" not "the network module vyos_command" or the full path-->
##### ANSIBLE VERSION
<!--- Paste, BELOW THIS COMMENT, verbatim output from "ansible --version" between quotes below -->
```
```
##### CONFIGURATION
<!--- If using Ansible 2.4 or above, paste, BELOW THIS COMMENT, the results of "ansible-config dump --only-changed"
Otherwise, mention any settings you have changed/added/removed in ansible.cfg
(or using the ANSIBLE_* environment variables).-->
##### OS / ENVIRONMENT
<!--- Mention, BELOW THIS COMMENT, the OS you are running Ansible from, and the OS you are
managing, or say "N/A" for anything that is not platform-specific.
Also mention the specific version of what you are trying to control,
e.g. if this is a network bug the version of firmware on the network device.-->
##### STEPS TO REPRODUCE
<!--- For bugs, show exactly how to reproduce the problem, using a minimal test-case.
For new features, show how the feature would be used. -->
<!--- Paste example playbooks or commands between quotes below -->
```yaml
```
<!--- You can also paste gist.github.com links for larger files -->
##### EXPECTED RESULTS
<!--- What did you expect to happen when running the steps above? -->
##### ACTUAL RESULTS
<!--- What actually happened? If possible run with extra verbosity (-vvvv) -->
<!--- Paste verbatim command output between quotes below -->
```
```

View File

@ -1,11 +1,9 @@
##### SUMMARY
<!--- Describe the change, including rationale and design decisions -->
<!---
If you are fixing an existing issue, please include "Fixes #nnn" in your
<!--- If you are fixing an existing issue, please include "Fixes #nnn" in your
commit message and your description; but you should still explain what
the change does.
-->
the change does.-->
##### ISSUE TYPE
<!--- Pick one below and delete the rest: -->
@ -15,7 +13,7 @@ the change does.
- Docs Pull Request
##### COMPONENT NAME
<!--- Name of the module/plugin/module/task -->
<!--- Name of the module, plugin, module or task -->
##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes below -->
@ -25,11 +23,9 @@ the change does.
##### ADDITIONAL INFORMATION
<!---
Include additional information to help people understand the change here.
<!--- Include additional information to help people understand the change here.
For bugs that don't have a linked bug report, a step-by-step reproduction
of the problem is helpful.
-->
of the problem is helpful. -->
<!--- Paste verbatim command output below, e.g. before and after your change -->
```

38
.gitignore vendored
View File

@ -17,6 +17,8 @@ rpm-build
.idea
#IntelliJ IDEA stuff..
*.iml
#VSCode stuff..
.vscode/
# Mac OS X stuff...
.DS_Store
# manpage build stuff...
@ -29,28 +31,22 @@ docs/man/man3/*
# docsite stuff...
docs/api/_build/
docs/api/rst/
docs/docsite/*.html
docs/docsite/_build
docs/docsite/*.html
docs/docsite/htmlout
docs/docsite/rst/cli/ansible-*.rst
docs/docsite/rst/cli/ansible.rst
docs/docsite/rst/modules/*.rst
docs/docsite/rst/playbooks_directives.rst
docs/docsite/rst/plugins_by_category.rst
docs/docsite/rst/plugins/*/*.rst
docs/docsite/rst/reference_appendices/config.rst
docs/docsite/rst/reference_appendices/playbooks_keywords.rst
docs/docsite/rst_warnings
docs/docsite/searchindex.js
docs/docsite/_static/*.gif
docs/docsite/_static/*.png
docs/docsite/_static/websupport.js
docs/docsite/htmlout
docs/docsite/searchindex.js
docs/docsite/rst_warnings
docs/docsite/rst/*_module.rst
docs/docsite/rst/ansible.rst
docs/docsite/rst/ansible-*.rst
docs/docsite/rst/community_maintained.rst
docs/docsite/rst/config.rst
docs/docsite/rst/core_maintained.rst
docs/docsite/rst/list_of_*.rst
docs/docsite/rst/modules_by_category.rst
docs/docsite/rst/network_maintained.rst
docs/docsite/rst/plugins_by_category.rst
docs/docsite/rst/partner_maintained.rst
docs/docsite/rst/playbook_keywords.rst
docs/docsite/rst/playbooks_directives.rst
docs/docsite/rst/plugins/*/*.rst
# deb building stuff...
/debian/
deb-build
@ -61,12 +57,15 @@ credentials.yml
# test output
*.retry
*.out
.pytest_cache/
.tox
.cache
.pytest_cache
results.xml
coverage.xml
/test/units/cover-html
/test/integration/targets/*/backup/
/test/cache/*
# Development
/test/develop
venv
@ -76,6 +75,7 @@ ansible.egg-info/
/shippable/
/test/integration/cloud-config-*.*
!/test/integration/cloud-config-*.*.template
.python-version
# Release directory
packaging/release/ansible_release
/.cache/
@ -91,6 +91,7 @@ packaging/release/ansible_release
/test/integration/inventory.networking
/test/integration/inventory.winrm
/test/integration/cloud-config-aws.yml
/test/integration/cloud-config-cs.ini
# python 'rope' stuff
.ropeproject
# local 'ack' config files
@ -102,3 +103,4 @@ htmlcov/
# ansible-test coverage results
test/units/.coverage.*
/test/integration/cloud-config-azure.yml
changelogs/.plugin-cache.yaml

View File

@ -1,5 +1,5 @@
Michael DeHaan <michael.dehaan@gmail.com> <michael@ansibleworks.com>
Michael DeHaan <michael.dehaan@gmail.com> Michael DeHaan <Michael DeHaan michael@ansibleworks.com>
Michael DeHaan <michael.dehaan@gmail.com> Michael DeHaan <michael@ansibleworks.com>
Michael DeHaan <michael.dehaan@gmail.com> <michael@ansible.com>
<bcoca@ansible.com> <brian.coca+git@gmail.com>
<bcoca@ansible.com> <briancoca+ansible@gmail.com>

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,10 @@
Coding Guidelines
=================
Hi! Thanks for interest in contributing to Ansible.
Hi! Thanks for your interest in contributing to Ansible.
Here are some guidelines for contributing code. The purpose of this document are to establish what we're looking for in code contributions, and to make sure
new contributions know some of the conventions that we've been using.
Here are some guidelines for contributing code. The purpose of this document is to establish what we're looking for in code contributions, and to make sure
new contributors know some of the conventions that we've been using.
We don't think much of this should be too strange to readers familiar with contributing to Python projects, though it helps if we all get on the same page.
@ -12,27 +12,27 @@ Language
========
* While not all components of Ansible must be in Python, core contributions to the Ansible repo must be written in Python. This is to maximize the ability of everyone to contribute.
* If you want to write non-Python ansible modules or inventory scripts, that's fine, but they are not going to get merged in most likely. Sorry!!
* If you want to write non-Python ansible modules or inventory scripts, that's fine, but they are not going to get merged in most likely. Sorry!!
PEP 8 and basic style checks
===========================
============================
* [PEP 8](https://www.python.org/dev/peps/pep-0008/) is a great Python style guide, which you should read.
* PEP 8 must not be strictly followed in all aspects, but most of it is good advice
* In particular, we don't really care about line lengths. Buy a bigger monitor!
* To run checks for things we care about, use [ansible-test](http://docs.ansible.com/ansible/dev_guide/testing_pep8.html#running-locally).
* Similarly, additional checks can be made with "make pyflakes"
* PEP 8 must not be strictly followed in all aspects, but most of it is good advice.
* The line is limited to 160 characters.
* To run checks for things we care about, use [ansible-test](https://docs.ansible.com/ansible/devel/dev_guide/testing_sanity.html).
* Similarly, additional checks can be made with "make pyflakes".
* There is no need to submit code changes for PEP 8 and pyflakes fixes, as these break attribution history. Project leadership will make these periodically.
* Do not submit pull requests that simply adjust whitespace in the code
* Do not submit pull requests that simply adjust whitespace in the code.
Testing
=======
* Much of ansible's testing needs are in integration, not unit tests. Add module tests there.
* Much of Ansible's testing needs are in integration, not unit tests. Add module tests there.
* That being said, there are unit tests too!
* Code written must absolutely pass tests (i.e. "make tests")
* You should anticipate any error paths in your code and test down those error paths.
* Additions to tests for core code is welcome, but not always possible. Be sure things are at least well tested manually in that case.
* Additions to tests for core code are welcome, but not always possible. Be sure things are at least well tested manually in that case.
Whitespace
==========
@ -42,7 +42,7 @@ Whitespace
Shebang Lines
=============
* /usr/bin/scripts should start with '/usr/bin/env python'
* module code should still use '/usr/bin/python' as this is replaced automatically by 'ansible_python_interpreter', see the FAQ in the docs for more info.
@ -60,13 +60,13 @@ Classes
* With the exception of module code (where inline is better), it is desirable to see classes in their own files.
* Classes should generally not cause side effects as soon as they are instantiated, move meaningful behavior to methods rather than constructors.
Functions and Methods
=====================
* In general, functions should not be 'too long' and should describe a meaningful amount of work
* When code gets too nested, that's usually the sign the loop body could benefit from being a function
* Parts of our existing code are not the best examples of this at times.
* Parts of our existing code are not the best examples of this at times.
* Functions should have names that describe what they do, along with docstrings
* Functions should be named with_underscores
* "Don't repeat yourself" is generally a good philosophy
@ -74,7 +74,7 @@ Functions and Methods
Variables
=========
* Use descriptive variable names instead of variables like 'x', unless x is a obvious loop index
* Use descriptive variable names instead of variables like 'x', unless x is an obvious loop index
* Ansible python code uses identifiers like 'ClassesLikeThis and variables_like_this
* Module parameters should also use_underscores and not runtogether
@ -83,7 +83,7 @@ Module Security
* Modules must take steps to avoid passing user input from the shell and always check return codes
* always use module.run_command instead of subprocess or Popen or os.system -- this is mandatory
* if you use need the shell you must pass use_unsafe_shell=True to module.run_command
* if you need to use the shell you must pass use_unsafe_shell=True to module.run_command
* if you do not need the shell, avoid using the shell
* any variables that can come from the user input with use_unsafe_shell=True must be wrapped by pipes.quote(x)
* downloads of https:// resource urls must import module_utils.urls and use the fetch_url method
@ -161,24 +161,24 @@ All contributions to the core repo should preserve original licenses and new con
Module Documentation
====================
All module pull requests must include a DOCUMENTATION docstring (YAML format,
see other modules for examples) as well as an EXAMPLES docstring, which is free form.
All module pull requests must include a DOCUMENTATION docstring (YAML format,
see other modules for examples) as well as an EXAMPLES docstring, which is free form.
When adding new modules, any new parameter must have a "version_added" attribute.
When submitting a new module, the module should have a "version_added" attribute in the
When adding new modules, any new parameter must have a "version_added" attribute.
When submitting a new module, the module should have a "version_added" attribute in the
pull request as well, set to the current development version.
Be sure to check grammar and spelling.
It's frequently the case that modules get submitted with YAML that isn't valid,
so you can run "make webdocs" from the checkout to preview your module's documentation.
If it fails to build, take a look at your DOCUMENTATION string
It's frequently the case that modules get submitted with YAML that isn't valid,
so you can run "make webdocs" from the checkout to preview your module's documentation.
If it fails to build, take a look at your DOCUMENTATION string
or you might have a Python syntax error in there too.
Python Imports
==============
To make it clear what a module is importing, imports should not be sprinkled throughout the code.
To make it clear what a module is importing, imports should not be sprinkled throughout the code.
Python Imports should happen at the top of the file, exempting code from module_utils.
@ -203,7 +203,7 @@ Exceptions
==========
In the main body of the code, use typed exceptions where possible:
# not this
raise Exception("panic!")
@ -265,7 +265,7 @@ Use 'in':
# not this:
if x.find('foo') != -1:
# this:
# this:
if 'foo' in x:
String checks
@ -290,19 +290,19 @@ In particular, metaclasses are probably not appropriate, however entertaining th
Git Practices
=============
Pull requests cannot be accepted that contain merge commits.
Pull requests cannot be accepted if they contain merge commits.
Always do "git pull --rebase" and "git rebase" vs "git pull" or "git merge".
Always do "git pull --rebase" and "git rebase" vs "git pull" or "git merge". See [rebasing a pull request](https://docs.ansible.com/ansible/latest/dev_guide/developing_rebasing.html) for more information.
Always create a new branch for each pull request to avoid intermingling different features or fixes on the same branch.
Always create a new branch for each pull request to avoid intertwingling different features or fixes on the same branch.
Python Version Compliance
=========================
All code in Ansible core must support a minimum version of Python 2.6.
Module code must support a minimum of Python 2.4, with occasional exception for modules that require code that themselves require 2.6 and later.
Module code must support a minimum of Python 2.4, with occasional exceptions for modules that require code that themselves require 2.6 and later.
A quick reminder is that list comprehensions in Python 2.4 are not as fully fleshed out, there are no 'dict' comprehensions, and there is no 'with' statement.
But otherwise it's pretty much all the same.

View File

@ -2,24 +2,23 @@
Hi! Nice to see you here!
## QUESTIONS ?
Please see the [community page](http://docs.ansible.com/community.html) for information on how to ask questions on the [mailing lists](http://docs.ansible.com/community.html#mailing-list-information) and IRC.
Please see the [community guide](https://docs.ansible.com/ansible/latest/community/index.html) for information on how to ask questions on the [mailing lists](https://docs.ansible.com/ansible/latest/community/communication.html#mailing-list-information) and IRC.
The GitHub issue tracker is not the best place for questions for various reasons, but both IRC and the mailing list are very helpful places for those things, as the community page explains best.
## CONTRIBUTING ?
Please see the [community page](http://docs.ansible.com/community.html) for information regarding the contribution process. Important license agreement information is also included on that page.
By contributing you agree that these contributions are your own (or approved by your employer) and you grant a full, complete, irrevocable copyright license to all users and developers of the project, present and future, pursuant to the license of the project.
Please see the [community guide](https://docs.ansible.com/ansible/latest/community/index.html) for information regarding the contribution process. Important license agreement information is also included on that page.
## BUG TO REPORT ?
First and foremost, also check the [community page](http://docs.ansible.com/community.html).
First and foremost, also check the [community guide](https://docs.ansible.com/ansible/latest/community/index.html).
You can report bugs or make enhancement requests at the [Ansible GitHub issue page](http://github.com/ansible/ansible/issues/new) by filling out the issue template that will be presented.
You can report bugs or make enhancement requests at the [Ansible GitHub issue page](http://github.com/ansible/ansible/issues/new/choose) by filling out the issue template that will be presented.
Also please make sure you are testing on the latest released version of Ansible or the development branch. You can find the latest releases and development branch at:

View File

@ -1,21 +1,20 @@
prune ticket_stubs
prune hacking
include README.md COPYING
include README.rst
include COPYING
include SYMLINK_CACHE.json
include requirements.txt
include .coveragerc
include .yamllint
include examples/hosts
include examples/ansible.cfg
recursive-include lib/ansible/module_utils/powershell *
recursive-include lib/ansible/modules *
recursive-include lib/ansible/galaxy/data *
recursive-include docs *
recursive-include licenses *
recursive-include packaging *
recursive-include test *
include Makefile
include VERSION
include MANIFEST.in
include CHANGELOG.md
include changelogs/CHANGELOG-*.rst
include contrib/README.md
recursive-include contrib/inventory *

View File

@ -1,70 +1,3 @@
# Module Maintainer Guidelines
Thank you for being a maintainer of one Ansible's community modules! This guide provides module maintainers an overview of their responsibilities, resources for additional information, and links to helpful tools.
In addition to the information below, module maintainers should be familiar with:
* General Ansible community development practices (http://docs.ansible.com/ansible/community.html)
* Documentation on module development (http://docs.ansible.com/ansible/developing_modules.html)
* Any namespace-specific module guidelines (identified as GUIDELINES.md in the appropriate file tree).
***
# Maintainer Responsibilities
When you contribute a new module to the [ansible/ansible](https://github.com/ansible/ansible) repository, you become the maintainer for that module once it has been merged. Maintainership empowers you with the authority to accept, reject, or request revisions to pull requests on your module -- but as they say, "with great power comes great responsibility."
Maintainers of Ansible modules are expected to provide feedback, responses, or actions on pull requests or issues to the module(s) they maintain in a reasonably timely manner.
It is also recommended that you occasionally revisit the [contribution guidelines](https://github.com/ansible/ansible/blob/devel/CONTRIBUTING.md), as they are continually refined. Occasionally, you may be requested to update your module to move it closer to the general accepted standard requirements. We hope for this to be infrequent, and will always be a request with a fair amount of lead time (ie: not by tomorrow!).
Finally, following the [ansible-devel](https://groups.google.com/forum/#!forum/ansible-devel) mailing list can be a great way to participate in the broader Ansible community, and a place where you can influence the overall direction, quality, and goals of Ansible and its modules. If you're not on this relatively low-volume list, please join us here: https://groups.google.com/forum/#!forum/ansible-devel
The Ansible community hopes that you will find that maintaining your module is as rewarding for you as having the module is for the wider community.
***
# Pull Requests, Issues, and Workflow
## Pull Requests
Module pull requests are located in the [main Ansible repository](https://github.com/ansible/ansible/pulls).
Because of the high volume of pull requests, notification of PRs to specific modules are routed by an automated bot to the appropriate maintainer for handling. It is recommended that you set an appropriate notification process to receive notifications which mention your GitHub ID.
## Issues
Issues for modules, including bug reports, documentation bug reports, and feature requests, are tracked in the [ansible repository](https://github.com/ansible/ansible/issues).
Issues for modules are routed to their maintainers via an automated process. This process is still being refined, and currently depends upon the issue creator to provide adequate details (specifically, providing the proper module name) in order to route it correctly. If you are a maintainer of a specific module, it is recommended that you periodically search module issues for issues which mention your module's name (or some variation on that name), as well as setting an appropriate notification process for receiving notification of mentions of your GitHub ID.
## PR Workflow
Automated routing of pull requests is handled by a tool called [Ansibullbot](https://github.com/ansible/ansibullbot). (You could say that he moooo-ves things around.)
Being moderately familiar with how the workflow behind the bot operates can be helpful to you, and -- should things go awry -- your feedback can be helpful to the folks that continually help Ansibullbot to evolve.
A detailed explanation of the PR workflow can be seen here: https://github.com/ansible/community/blob/master/PR-FLOW.md
***
# Maintainers list
The full list of maintainers for modules is located here: https://github.com/ansible/ansible/blob/devel/.github/BOTMETA.yml
## Changing Maintainership
Communities change over time, and no one maintains a module forever. If you'd like to propose an additional maintainer for your module, please submit a PR to the maintainers file with the Github username of the new maintainer.
If you'd like to step down as a maintainer, please submit a PR to the maintainers file removing your Github ID from the module in question. If that would leave the module with no maintainers, put "ansible" as the maintainer. This will indicate that the module is temporarily without a maintainer, and the Ansible community team will search for a new maintainer.
***
# Tools and other Resources
## Useful tools
* https://ansible.sivel.net/pr/byfile.html -- a full list of all open Pull Requests, organized by file.
## Other Resources
* Ansibullbot: https://github.com/ansible/ansibullbot
* Triage / pull request workflow and information, including definitions for Labels in GitHub: https://github.com/ansible/community/blob/master/PR-FLOW.md
The Ansible Module Maintainer Guidelines can now be found in the [official Ansible community guide](https://docs.ansible.com/ansible/latest/community/maintainers.html).

120
Makefile
View File

@ -9,7 +9,7 @@
# make deb-src -------------- produce a DEB source
# make deb ------------------ produce a DEB
# make docs ----------------- rebuild the manpages (results are checked in)
# make tests ---------------- run the tests (see https://docs.ansible.com/ansible/dev_guide/testing_units.html for requirements)
# make tests ---------------- run the tests (see https://docs.ansible.com/ansible/devel/dev_guide/testing_units.html for requirements)
# make pyflakes, make pep8 -- source code checks
########################################################
@ -17,26 +17,34 @@
NAME = ansible
OS = $(shell uname -s)
PREFIX ?= '/usr/local'
# Manpages are currently built with asciidoc -- would like to move to markdown
# This doesn't evaluate until it's called. The -D argument is the
# directory of the target file ($@), kinda like `dirname`.
MANPAGES ?= $(patsubst %.asciidoc.in,%,$(wildcard ./docs/man/man1/ansible*.1.asciidoc.in))
ifneq ($(shell which a2x 2>/dev/null),)
ASCII2MAN = a2x -L -D $(dir $@) -d manpage -f manpage $<
ASCII2HTMLMAN = a2x -L -D docs/html/man/ -d manpage -f xhtml
MANPAGES ?= $(patsubst %.rst.in,%,$(wildcard ./docs/man/man1/ansible*.1.rst.in))
ifneq ($(shell which rst2man 2>/dev/null),)
ASCII2MAN = rst2man $< $@
else ifneq ($(shell which rst2man.py 2>/dev/null),)
ASCII2MAN = rst2man.py $< $@
else
ASCII2MAN = @echo "ERROR: AsciiDoc 'a2x' command is not installed but is required to build $(MANPAGES)" && exit 1
ASCII2MAN = @echo "ERROR: rst2man from docutils command is not installed but is required to build $(MANPAGES)" && exit 1
endif
GENERATE_CLI = docs/bin/generate_man.py
PYTHON=python
SITELIB = $(shell $(PYTHON) -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")
# VERSION file provides one place to update the software version
VERSION := $(shell cat VERSION | cut -f1 -d' ')
RELEASE := $(shell cat VERSION | cut -f2 -d' ')
# fetch version from project release.py as single source-of-truth
VERSION := $(shell $(PYTHON) packaging/release/versionhelper/version_helper.py --raw || echo error)
ifeq ($(findstring error,$(VERSION)), error)
$(error "version_helper failed")
endif
MAJOR_VERSION := $(shell $(PYTHON) packaging/release/versionhelper/version_helper.py --majorversion)
CODENAME := $(shell $(PYTHON) packaging/release/versionhelper/version_helper.py --codename)
# if a specific release was not requested, set to 1 (RPMs have "fancier" logic for this further down)
RELEASE ?= 1
# Get the branch information from git
ifneq ($(shell which git),)
@ -62,15 +70,16 @@ DEBUILD_OPTS = --source-option="-I"
DPUT_BIN ?= dput
DPUT_OPTS ?=
DEB_DATE := $(shell LC_TIME=C date +"%a, %d %b %Y %T %z")
DEB_VERSION ?= $(shell $(PYTHON) packaging/release/versionhelper/version_helper.py --debversion)
ifeq ($(OFFICIAL),yes)
DEB_RELEASE = $(RELEASE)ppa
DEB_RELEASE ?= $(shell $(PYTHON) packaging/release/versionhelper/version_helper.py --debrelease)ppa
# Sign OFFICIAL builds using 'DEBSIGN_KEYID'
# DEBSIGN_KEYID is required when signing
ifneq ($(DEBSIGN_KEYID),)
DEBUILD_OPTS += -k$(DEBSIGN_KEYID)
endif
else
DEB_RELEASE = 100.git$(DATE)$(GITINFO)
DEB_RELEASE ?= 100.git$(DATE)$(GITINFO)
# Do not sign unofficial builds
DEBUILD_OPTS += -uc -us
DPUT_OPTS += -u
@ -90,7 +99,7 @@ PBUILDER_OPTS ?= --debootstrapopts --variant=buildd --architecture $(PBUILDER_AR
RPMSPECDIR= packaging/rpm
RPMSPEC = $(RPMSPECDIR)/ansible.spec
RPMDIST = $(shell rpm --eval '%{?dist}')
RPMRELEASE = $(RELEASE)
ifneq ($(OFFICIAL),yes)
RPMRELEASE = 100.git$(DATE)$(GITINFO)
endif
@ -98,12 +107,20 @@ ifeq ($(PUBLISH),nightly)
# https://fedoraproject.org/wiki/Packaging:Versioning#Snapshots
RPMRELEASE = $(RELEASE).$(DATE)git.$(GIT_HASH)
endif
RPMNVR = "$(NAME)-$(VERSION)-$(RPMRELEASE)$(RPMDIST)"
RPMVERSION ?= $(shell $(PYTHON) packaging/release/versionhelper/version_helper.py --baseversion)
RPMRELEASE ?= $(shell $(PYTHON) packaging/release/versionhelper/version_helper.py --rpmrelease)
RPMNVR = "$(NAME)-$(RPMVERSION)-$(RPMRELEASE)$(RPMDIST)$(REPOTAG)"
# MOCK build parameters
MOCK_BIN ?= mock
MOCK_CFG ?=
# dynamically add repotag define only if specified
ifneq ($(REPOTAG),)
EXTRA_RPM_DEFINES += --define "repotag $(REPOTAG)"
endif
# ansible-test parameters
ANSIBLE_TEST ?= test/runner/ansible-test
TEST_FLAGS ?=
@ -141,14 +158,15 @@ integration:
authors:
sh hacking/authors.sh
# Regenerate %.1.asciidoc if %.1.asciidoc.in has been modified more
# recently than %.1.asciidoc.
%.1.asciidoc: %.1.asciidoc.in
# Regenerate %.1.rst if %.1.rst.in has been modified more
# recently than %.1.rst.
%.1.rst: %.1.rst.in
sed "s/%VERSION%/$(VERSION)/" $< > $@
rm $<
# Regenerate %.1 if %.1.asciidoc or VERSION has been modified more
# recently than %.1. (Implicitly runs the %.1.asciidoc recipe)
%.1: %.1.asciidoc VERSION
# Regenerate %.1 if %.1.rst or release.py has been modified more
# recently than %.1. (Implicitly runs the %.1.rst recipe)
%.1: %.1.rst lib/ansible/release.py
$(ASCII2MAN)
.PHONY: loc
@ -177,7 +195,7 @@ clean:
find . -type f \( -name "*.swp" \) -delete
@echo "Cleaning up manpage stuff"
find ./docs/man -type f -name "*.xml" -delete
find ./docs/man -type f -name "*.asciidoc" -delete
find ./docs/man -type f -name "*.rst" -delete
find ./docs/man/man3 -type f -name "*.3" -delete
rm -f ./docs/man/man1/*
@echo "Cleaning up output from test runs"
@ -209,6 +227,10 @@ python:
install:
$(PYTHON) setup.py install
install_manpages:
gzip -9 $(wildcard ./docs/man/man1/ansible*.1)
cp $(wildcard ./docs/man/man1/ansible*.1.gz) $(PREFIX)/man/man1/
.PHONY: sdist
sdist: clean docs
$(PYTHON) setup.py sdist
@ -217,15 +239,23 @@ sdist: clean docs
sdist_upload: clean docs
$(PYTHON) setup.py sdist upload 2>&1 |tee upload.log
.PHONY: changelog
changelog:
packaging/release/changelogs/changelog.py release -vv && packaging/release/changelogs/changelog.py generate -vv
.PHONY: rpmcommon
rpmcommon: sdist
@mkdir -p rpm-build
@cp dist/*.gz rpm-build/
@sed -e 's#^Version:.*#Version: $(VERSION)#' -e 's#^Release:.*#Release: $(RPMRELEASE)%{?dist}$(REPOTAG)#' $(RPMSPEC) >rpm-build/$(NAME).spec
@cp $(RPMSPEC) rpm-build/$(NAME).spec
.PHONY: mock-srpm
mock-srpm: /etc/mock/$(MOCK_CFG).cfg rpmcommon
$(MOCK_BIN) -r $(MOCK_CFG) $(MOCK_ARGS) --resultdir rpm-build/ --buildsrpm --spec rpm-build/$(NAME).spec --sources rpm-build/
$(MOCK_BIN) -r $(MOCK_CFG) $(MOCK_ARGS) --resultdir rpm-build/ --bootstrap-chroot --old-chroot --buildsrpm --spec rpm-build/$(NAME).spec --sources rpm-build/ \
--define "rpmversion $(RPMVERSION)" \
--define "upstream_version $(VERSION)" \
--define "rpmrelease $(RPMRELEASE)" \
$(EXTRA_RPM_DEFINES)
@echo "#############################################"
@echo "Ansible SRPM is built:"
@echo rpm-build/*.src.rpm
@ -233,7 +263,11 @@ mock-srpm: /etc/mock/$(MOCK_CFG).cfg rpmcommon
.PHONY: mock-rpm
mock-rpm: /etc/mock/$(MOCK_CFG).cfg mock-srpm
$(MOCK_BIN) -r $(MOCK_CFG) $(MOCK_ARGS) --resultdir rpm-build/ --rebuild rpm-build/$(NAME)-*.src.rpm
$(MOCK_BIN) -r $(MOCK_CFG) $(MOCK_ARGS) --resultdir rpm-build/ --bootstrap-chroot --old-chroot --rebuild rpm-build/$(NAME)-*.src.rpm \
--define "rpmversion $(RPMVERSION)" \
--define "upstream_version $(VERSION)" \
--define "rpmrelease $(RPMRELEASE)" \
$(EXTRA_RPM_DEFINES)
@echo "#############################################"
@echo "Ansible RPM is built:"
@echo rpm-build/*.noarch.rpm
@ -247,6 +281,10 @@ srpm: rpmcommon
--define "_srcrpmdir %{_topdir}" \
--define "_specdir $(RPMSPECDIR)" \
--define "_sourcedir %{_topdir}" \
--define "upstream_version $(VERSION)" \
--define "rpmversion $(RPMVERSION)" \
--define "rpmrelease $(RPMRELEASE)" \
$(EXTRA_RPM_DEFINES) \
-bs rpm-build/$(NAME).spec
@rm -f rpm-build/$(NAME).spec
@echo "#############################################"
@ -262,8 +300,12 @@ rpm: rpmcommon
--define "_srcrpmdir %{_topdir}" \
--define "_specdir $(RPMSPECDIR)" \
--define "_sourcedir %{_topdir}" \
--define "_rpmfilename %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm" \
--define "_rpmfilename $(RPMNVR).%%{ARCH}.rpm" \
--define "__python `which $(PYTHON)`" \
--define "upstream_version $(VERSION)" \
--define "rpmversion $(RPMVERSION)" \
--define "rpmrelease $(RPMRELEASE)" \
$(EXTRA_RPM_DEFINES) \
-ba rpm-build/$(NAME).spec
@rm -f rpm-build/$(NAME).spec
@echo "#############################################"
@ -277,7 +319,7 @@ debian: sdist
mkdir -p deb-build/$${DIST} ; \
tar -C deb-build/$${DIST} -xvf dist/$(NAME)-$(VERSION).tar.gz ; \
cp -a packaging/debian deb-build/$${DIST}/$(NAME)-$(VERSION)/ ; \
sed -ie "s|%VERSION%|$(VERSION)|g;s|%RELEASE%|$(DEB_RELEASE)|;s|%DIST%|$${DIST}|g;s|%DATE%|$(DEB_DATE)|g" deb-build/$${DIST}/$(NAME)-$(VERSION)/debian/changelog ; \
sed -ie "s|%VERSION%|$(DEB_VERSION)|g;s|%RELEASE%|$(DEB_RELEASE)|;s|%DIST%|$${DIST}|g;s|%DATE%|$(DEB_DATE)|g" deb-build/$${DIST}/$(NAME)-$(VERSION)/debian/changelog ; \
done
.PHONY: deb
@ -286,12 +328,12 @@ deb: deb-src
PBUILDER_OPTS="$(PBUILDER_OPTS) --distribution $${DIST} --basetgz $(PBUILDER_CACHE_DIR)/$${DIST}-$(PBUILDER_ARCH)-base.tgz --buildresult $(CURDIR)/deb-build/$${DIST}" ; \
$(PBUILDER_BIN) create $${PBUILDER_OPTS} --othermirror "deb http://archive.ubuntu.com/ubuntu $${DIST} universe" ; \
$(PBUILDER_BIN) update $${PBUILDER_OPTS} ; \
$(PBUILDER_BIN) build $${PBUILDER_OPTS} deb-build/$${DIST}/$(NAME)_$(VERSION)-$(DEB_RELEASE)~$${DIST}.dsc ; \
$(PBUILDER_BIN) build $${PBUILDER_OPTS} deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}.dsc ; \
done
@echo "#############################################"
@echo "Ansible DEB artifacts:"
@for DIST in $(DEB_DIST) ; do \
echo deb-build/$${DIST}/$(NAME)_$(VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
echo deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
done
@echo "#############################################"
@ -305,7 +347,7 @@ local_deb: debian
@echo "#############################################"
@echo "Ansible DEB artifacts:"
@for DIST in $(DEB_DIST) ; do \
echo deb-build/$${DIST}/$(NAME)_$(VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
echo deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
done
@echo "#############################################"
@ -317,39 +359,39 @@ deb-src: debian
@echo "#############################################"
@echo "Ansible DEB artifacts:"
@for DIST in $(DEB_DIST) ; do \
echo deb-build/$${DIST}/$(NAME)_$(VERSION)-$(DEB_RELEASE)~$${DIST}_source.changes ; \
echo deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_source.changes ; \
done
@echo "#############################################"
.PHONY: deb-upload
deb-upload: deb
@for DIST in $(DEB_DIST) ; do \
$(DPUT_BIN) $(DPUT_OPTS) $(DEB_PPA) deb-build/$${DIST}/$(NAME)_$(VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
$(DPUT_BIN) $(DPUT_OPTS) $(DEB_PPA) deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
done
.PHONY: deb-src-upload
deb-src-upload: deb-src
@for DIST in $(DEB_DIST) ; do \
$(DPUT_BIN) $(DPUT_OPTS) $(DEB_PPA) deb-build/$${DIST}/$(NAME)_$(VERSION)-$(DEB_RELEASE)~$${DIST}_source.changes ; \
$(DPUT_BIN) $(DPUT_OPTS) $(DEB_PPA) deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_source.changes ; \
done
.PHONY: epub
epub:
(cd docs/docsite/; CPUS=$(CPUS) make epub)
(cd docs/docsite/; CPUS=$(CPUS) $(MAKE) epub)
# for arch or gentoo, read instructions in the appropriate 'packaging' subdirectory directory
.PHONY: webdocs
webdocs:
(cd docs/docsite/; CPUS=$(CPUS) make docs)
(cd docs/docsite/; CPUS=$(CPUS) $(MAKE) docs)
.PHONY: generate_asciidoc
generate_asciidoc: lib/ansible/cli/*.py
.PHONY: generate_rst
generate_rst: lib/ansible/cli/*.py
mkdir -p ./docs/man/man1/ ; \
PYTHONPATH=./lib $(GENERATE_CLI) --template-file=docs/templates/man.j2 --output-dir=docs/man/man1/ --output-format man lib/ansible/cli/*.py
docs: generate_asciidoc
make $(MANPAGES)
docs: generate_rst
$(MAKE) $(MANPAGES)
.PHONY: alldocs
alldocs: docs webdocs

View File

@ -1,56 +0,0 @@
[![PyPI version](https://img.shields.io/pypi/v/ansible.svg)](https://pypi.python.org/pypi/ansible)
[![Build Status](https://api.shippable.com/projects/573f79d02a8192902e20e34b/badge?branch=devel)](https://app.shippable.com/projects/573f79d02a8192902e20e34b)
Ansible
=======
Ansible is a radically simple IT automation system. It handles configuration-management, application deployment, cloud provisioning, ad-hoc task-execution, and multinode orchestration - including trivializing things like zero downtime rolling updates with load balancers.
Read the documentation and more at https://ansible.com/
You can find installation instructions [here](https://docs.ansible.com/ansible/intro_installation.html) for a variety of platforms. Most users should probably install a released version of Ansible from `pip`, a package manager or our [release repository](https://releases.ansible.com/ansible/). [Officially supported](https://www.ansible.com/ansible-engine) builds of Ansible are also available. Some power users run directly from the development branch - while significant efforts are made to ensure that `devel` is reasonably stable, you're more likely to encounter breaking changes when running Ansible this way.
Design Principles
=================
* Have a dead simple setup process and a minimal learning curve
* Manage machines very quickly and in parallel
* Avoid custom-agents and additional open ports, be agentless by leveraging the existing SSH daemon
* Describe infrastructure in a language that is both machine and human friendly
* Focus on security and easy auditability/review/rewriting of content
* Manage new remote machines instantly, without bootstrapping any software
* Allow module development in any dynamic language, not just Python
* Be usable as non-root
* Be the easiest IT automation system to use, ever.
Get Involved
============
* Read [Community Information](https://docs.ansible.com/community.html) for all kinds of ways to contribute to and interact with the project, including mailing list information and how to submit bug reports and code to Ansible.
* All code submissions are done through pull requests. Take care to make sure no merge commits are in the submission, and use `git rebase` vs `git merge` for this reason. If submitting a large code change (other than modules), it's probably a good idea to join ansible-devel and talk about what you would like to do or add first and to avoid duplicate efforts. This not only helps everyone know what's going on, it also helps save time and effort if we decide some changes are needed.
* Users list: [ansible-project](https://groups.google.com/group/ansible-project)
* Development list: [ansible-devel](https://groups.google.com/group/ansible-devel)
* Announcement list: [ansible-announce](https://groups.google.com/group/ansible-announce) - read only
* irc.freenode.net: #ansible
Branch Info
===========
* Releases are named after Led Zeppelin songs. (Releases prior to 2.0 were named after Van Halen songs.)
* The devel branch corresponds to the release actively under development.
* Various release-X.Y branches exist for previous releases.
* We'd love to have your contributions, read [Community Information](https://docs.ansible.com/community.html) for notes on how to get started.
Authors
=======
Ansible was created by [Michael DeHaan](https://github.com/mpdehaan) (michael.dehaan/gmail/com) and has contributions from over 1000 users (and growing). Thanks everyone!
Ansible is sponsored by [Ansible, Inc](https://ansible.com)
License
=======
GNU General Public License v3.0
See [COPYING](COPYING) to see the full text.

123
README.rst Normal file
View File

@ -0,0 +1,123 @@
|PyPI version| |Docs badge| |Build Status|
*******
Ansible
*******
Ansible is a radically simple IT automation system. It handles
configuration-management, application deployment, cloud provisioning,
ad-hoc task-execution, and multinode orchestration -- including
trivializing things like zero-downtime rolling updates with load
balancers.
Read the documentation and more at https://ansible.com/
You can find installation instructions
`here <https://docs.ansible.com/intro_getting_started.html>`_ for a
variety of platforms.
Most users should probably install a released version of Ansible from ``pip``, a package manager or
our `release repository <https://releases.ansible.com/ansible/>`_. `Officially supported
<https://www.ansible.com/ansible-engine>`_ builds of Ansible are also available. Some power users
run directly from the development branch - while significant efforts are made to ensure that
``devel`` is reasonably stable, you're more likely to encounter breaking changes when running
Ansible this way.
Design Principles
=================
* Have a dead simple setup process and a minimal learning curve
* Manage machines very quickly and in parallel
* Avoid custom-agents and additional open ports, be agentless by
leveraging the existing SSH daemon
* Describe infrastructure in a language that is both machine and human
friendly
* Focus on security and easy auditability/review/rewriting of content
* Manage new remote machines instantly, without bootstrapping any
software
* Allow module development in any dynamic language, not just Python
* Be usable as non-root
* Be the easiest IT automation system to use, ever.
Get Involved
============
* Read `Community
Information <https://docs.ansible.com/community.html>`_ for all
kinds of ways to contribute to and interact with the project,
including mailing list information and how to submit bug reports and
code to Ansible.
* All code submissions are done through pull requests. Take care to
make sure no merge commits are in the submission, and use
``git rebase`` vs ``git merge`` for this reason. If submitting a
large code change (other than modules), it's probably a good idea to
join ansible-devel and talk about what you would like to do or add
first to avoid duplicate efforts. This not only helps everyone
know what's going on, it also helps save time and effort if we decide
some changes are needed.
* Users list:
`ansible-project <https://groups.google.com/group/ansible-project>`_
* Development list:
`ansible-devel <https://groups.google.com/group/ansible-devel>`_
* Announcement list:
`ansible-announce <https://groups.google.com/group/ansible-announce>`_
-- read only
* irc.freenode.net: #ansible
Branch Info
===========
* Releases are named after Led Zeppelin songs. (Releases prior to 2.0
were named after Van Halen songs.)
* The devel branch corresponds to the release actively under
development.
* Various release-X.Y branches exist for previous releases.
* We'd love to have your contributions, read `Community
Information <https://docs.ansible.com/community.html>`_ for notes on
how to get started.
Roadmap
=======
Based on team and community feedback, an initial roadmap will be published for a major or minor version (ex: 2.0, 2.1).
Subminor versions will generally not have roadmaps published.
Ansible 2.1 was the first release which published this and asked for feedback in this manner.
Feedback on the roadmap and the new process is quite welcome.
The team is aiming for further transparency and better inclusion of both community desires and submissions.
These are the team's *best guess* roadmaps based on the Ansible team's experience and are also based on requests and feedback from the community.
There are things that may not make it due to time constraints, lack of community maintainers, etc.
Each roadmap is published both as an idea of what is upcoming in Ansible, and as a medium for seeking further feedback from the community.
There are multiple places for you to submit feedback:
- Add to the agenda of an IRC `Core Team Meeting <https://github.com/ansible/community/blob/master/meetings/README.md>`_ (preferred)
- Ansible's google-group: ansible-devel
- AnsibleFest conferences
- IRC Freenode channel: #ansible-devel (this one may have things lost in lots of conversation)
For additional details consult the published `Ansible Roadmap <https://docs.ansible.com/ansible/devel/roadmap/>`_.
Authors
=======
Ansible was created by `Michael DeHaan <https://github.com/mpdehaan>`_
(michael.dehaan/gmail/com) and has contributions from over 1000 users
(and growing). Thanks everyone!
Ansible is sponsored by `Ansible, Inc <https://ansible.com>`_
License
=======
GNU General Public License v3.0
See `COPYING <COPYING>`_ to see the full text.
.. |PyPI version| image:: https://img.shields.io/pypi/v/ansible.svg
:target: https://pypi.org/project/ansible
.. |Docs badge| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg
:target: https://docs.ansible.com/ansible
.. |Build Status| image:: https://api.shippable.com/projects/573f79d02a8192902e20e34b/badge?branch=devel
:target: https://app.shippable.com/projects/573f79d02a8192902e20e34b

View File

@ -1,84 +0,0 @@
Ansible Releases at a Glance
============================
VERSION RELEASE CODE NAME
++++++++++++++++++++++++++++++
2.4.0 TBD "Dancing Days"
2.3.2 2017-08-04 "Ramble On"
2.3.1 2017-06-01 "Ramble On"
2.3.0 2017-04-12 "Ramble On"
2.2.3 2017-05-09 "The Battle of Evermore"
2.2.2 2017-03-27 "The Battle of Evermore"
2.2.1 2017-01-16 "The Battle of Evermore"
2.2.0 2016-11-01 "The Battle of Evermore"
2.1.6 2017-06-01 "The Song Remains the Same"
2.1.5 2017-03-27 "The Song Remains the Same"
2.1.4 2017-01-16 "The Song Remains the Same"
2.1.3 2016-11-04 "The Song Remains the Same"
2.1.2 2016-09-29 "The Song Remains the Same"
2.1.1 2016-07-28 "The Song Remains the Same"
2.1.0 2016-05-25 "The Song Remains the Same"
2.0.2 2016-04-19 "Over the Hills and Far Away"
2.0.1 2016-02-24 "Over the Hills and Far Away"
2.0.0 2016-01-12 "Over the Hills and Far Away"
1.9.6 2016-04-15 "Dancing In the Streets"
1.9.5 2016-03-21 "Dancing In the Streets"
1.9.4 2015-10-09 "Dancing In the Streets"
1.9.3 2015-09-03 "Dancing In the Streets"
1.9.2 2015-06-24 "Dancing In the Streets"
1.9.1 2015-04-27 "Dancing In the Streets"
1.9.0 2015-03-25 "Dancing In the Streets"
1.8.4 2015-02-19 "You Really Got Me"
1.8.3 2015-02-17 "You Really Got Me"
1.8.2 2014-12-04 "You Really Got Me"
1.8.1 2014-11-26 "You Really Got Me"
1.8.0 2014-11-25 "You Really Got Me"
1.7.2 2014-09-24 "Summer Nights"
1.7.1 2014-08-14 "Summer Nights"
1.7.0 2014-08-06 "Summer Nights"
1.6.10 2014-07-25 "The Cradle Will Rock"
1.6.9 2014-07-24 "The Cradle Will Rock"
1.6.8 2014-07-22 "The Cradle Will Rock"
1.6.7 2014-07-21 "The Cradle Will Rock"
1.6.6 2014-07-01 "The Cradle Will Rock"
1.6.5 2014-06-25 "The Cradle Will Rock"
1.6.4 2014-06-25 "The Cradle Will Rock"
1.6.3 2014-06-09 "The Cradle Will Rock"
1.6.2 2014-05-23 "The Cradle Will Rock"
1.6.1 2014-05-07 "The Cradle Will Rock"
1.6.0 2014-05-05 "The Cradle Will Rock"
1.5.5 2014-04-18 "Love Walks In"
1.5.4 2014-04-01 "Love Walks In"
1.5.3 2014-03-13 "Love Walks In"
1.5.2 2014-03-11 "Love Walks In"
1.5.1 2014-03-10 "Love Walks In"
1.5.0 2014-02-28 "Love Walks In"
1.4.5 2014-02-12 "Could This Be Magic?"
1.4.4 2014-01-06 "Could This Be Magic?"
1.4.3 2013-12-20 "Could This Be Magic?"
1.4.2 2013-12-18 "Could This Be Magic?"
1.4.1 2013-11-27 "Could This Be Magic?"
1.4.0 2013-11-21 "Could This Be Magic?"
1.3.4 2013-10-29 "Top of the World"
1.3.3 2013-10-09 "Top of the World"
1.3.2 2013-09-19 "Top of the World"
1.3.1 2013-09-16 "Top of the World"
1.3.0 2013-09-13 "Top of the World"
1.2.3 2013-08-21 "Right Now"
1.2.2 2013-07-05 "Right Now"
1.2.1 2013-07-04 "Right Now"
1.2.0 2013-06-10 "Right Now"
1.1.0 2013-04-02 "Mean Street"
1.0.0 2013-02-01 "Eruption"
0.9.0 2012-11-30 "Dreams"
0.8.0 2012-10-19 "Cathedral"
0.7.0 2012-09-06 "Panama"
0.6.0 2012-08-06 "Cabo"
0.5.0 2012-07-04 "Amsterdam"
0.4.0 2012-05-23 "Unchained"
0.3.0 2012-04-23 "Baluchitherium"
0.2.0 ? "Untitled"
0.1.0 ? "Untitled"
0.0.2 ? "Untitled"
0.0.1 ? "Untitled"

View File

@ -1,28 +0,0 @@
*******************************
Roadmap For Ansible by Red Hat
*******************************
This document is now the location for published Ansible Core roadmaps.
The roadmap will be updated by version. Based on team and community feedback, an initial roadmap will be published for a major or minor version (2.0, 2.1). Subminor versions will generally not have roadmaps published.
2.1 was the first time Ansible has published this and asked for feedback in this manner. So feedback on the roadmap and the new process is quite welcome. The team is aiming for further transparency and better inclusion of both community desires and submissions.
These roadmaps are the team's *best guess* roadmaps based on the Ansible team's experience and are also based on requests and feedback from the community. There are things that may not make it on due to time constraints, lack of community maintainers, etc. And there may be things that got missed, so each roadmap is published both as an idea of what is upcoming in Ansible, and as a medium for seeking further feedback from the community. Here are the good places for you to submit feedback:
- Add to the agenda of a `Core IRC Meetings <https://github.com/ansible/community/blob/master/meetings/README.md>`_ (preferred)
- Ansible's google-group: ansible-devel
- AnsibleFest conferences.
- IRC freenode channel: #ansible-devel (this one may have things lost in lots of conversation, so a caution).
=======================================
Current 2.4 Roadmap is open for comment
=======================================
We are starting to build the 2.4 Roadmap. We are seeking community feedback! That document is here:
- `2.4 Roadmap Document <docs/docsite/rst/roadmap/ROADMAP_2_4.rst>`_
**Old Roadmaps are found here:**
- `2.3 Roadmap Document <docs/docsite/rst/roadmap/ROADMAP_2_3.rst>`_
- `2.2 Roadmap Document <docs/docsite/rst/roadmap/ROADMAP_2_2.rst>`_
- `2.1 Roadmap Document <docs/docsite/rst/roadmap/ROADMAP_2_1.rst>`_

View File

@ -1 +0,0 @@
2.5.0 0.0.devel

File diff suppressed because it is too large Load Diff

View File

@ -41,6 +41,15 @@ from ansible.errors import AnsibleError, AnsibleOptionsError, AnsibleParserError
from ansible.module_utils._text import to_text
# Used for determining if the system is running a new enough python version
# and should only restrict on our documented minimum versions
_PY3_MIN = sys.version_info[:2] >= (3, 5)
_PY2_MIN = (2, 6) <= sys.version_info[:2] < (3,)
_PY_MIN = _PY3_MIN or _PY2_MIN
if not _PY_MIN:
raise SystemExit('ERROR: Ansible requires a minimum of Python2 version 2.6 or Python3 version 3.5. Current version: %s' % ''.join(sys.version.splitlines()))
class LastResort(object):
# OUTPUT OF LAST RESORT
def display(self, msg, log_only=None):
@ -129,17 +138,26 @@ if __name__ == '__main__':
display.error("User interrupted execution")
exit_code = 99
except Exception as e:
if C.DEFAULT_DEBUG:
# Show raw stacktraces in debug mode, It also allow pdb to
# enter post mortem mode.
raise
have_cli_options = cli is not None and cli.options is not None
display.error("Unexpected Exception, this is probably a bug: %s" % to_text(e), wrap_text=False)
if not have_cli_options or have_cli_options and cli.options.verbosity > 2:
log_only = False
if hasattr(e, 'orig_exc'):
display.vvv('\nexception type: %s' % to_text(type(e.orig_exc)))
why = to_text(e.orig_exc)
if to_text(e) != why:
display.vvv('\noriginal msg: %s' % why)
else:
display.display("to see the full traceback, use -vvv")
log_only = True
display.display(u"the full traceback was:\n\n%s" % to_text(traceback.format_exc()), log_only=log_only)
exit_code = 250
finally:
# Remove ansible tempdir
# Remove ansible tmpdir
shutil.rmtree(C.DEFAULT_LOCAL_TMP, True)
sys.exit(exit_code)

View File

@ -1,23 +1,6 @@
#!/usr/bin/env python
# (c) 2017, Ansible, Inc. <support@ansible.com>
#
# This file is part of Ansible
#
# Ansible is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Ansible is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
########################################################
# Copyright: (c) 2017, Ansible Project
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
@ -29,156 +12,155 @@ except Exception:
pass
import fcntl
import hashlib
import os
import shlex
import signal
import socket
import sys
import time
import traceback
import datetime
import errno
import json
from contextlib import contextmanager
from ansible import constants as C
from ansible.module_utils._text import to_bytes, to_native, to_text
from ansible.module_utils.six import PY3
from ansible.module_utils.six.moves import cPickle
from ansible.module_utils.connection import send_data, recv_data
from ansible.module_utils.six.moves import cPickle, StringIO
from ansible.module_utils.connection import Connection, ConnectionError, send_data, recv_data
from ansible.module_utils.service import fork_process
from ansible.playbook.play_context import PlayContext
from ansible.plugins.loader import connection_loader
from ansible.utils.path import unfrackpath, makedirs_safe
from ansible.errors import AnsibleConnectionFailure
from ansible.utils.display import Display
from ansible.utils.jsonrpc import JsonRpcServer
def do_fork():
def read_stream(byte_stream):
size = int(byte_stream.readline().strip())
data = byte_stream.read(size)
if len(data) < size:
raise Exception("EOF found before data was complete")
data_hash = to_text(byte_stream.readline().strip())
if data_hash != hashlib.sha1(data).hexdigest():
raise Exception("Read {0} bytes, but data did not match checksum".format(size))
# restore escaped loose \r characters
data = data.replace(br'\r', b'\r')
return data
@contextmanager
def file_lock(lock_path):
"""
Uses contextmanager to create and release a file lock based on the
given path. This allows us to create locks using `with file_lock()`
to prevent deadlocks related to failure to unlock properly.
"""
lock_fd = os.open(lock_path, os.O_RDWR | os.O_CREAT, 0o600)
fcntl.lockf(lock_fd, fcntl.LOCK_EX)
yield
fcntl.lockf(lock_fd, fcntl.LOCK_UN)
os.close(lock_fd)
class ConnectionProcess(object):
'''
Does the required double fork for a daemon process. Based on
http://code.activestate.com/recipes/66012-fork-a-daemon-process-on-unix/
The connection process wraps around a Connection object that manages
the connection to a remote device that persists over the playbook
'''
try:
pid = os.fork()
if pid > 0:
return pid
# This is done as a 'good practice' for daemons, but we need to keep the cwd
# leaving it here as a note that we KNOW its good practice but are not doing it on purpose.
# os.chdir("/")
os.setsid()
os.umask(0)
try:
pid = os.fork()
if pid > 0:
sys.exit(0)
if C.DEFAULT_LOG_PATH != '':
out_file = open(C.DEFAULT_LOG_PATH, 'ab+')
err_file = open(C.DEFAULT_LOG_PATH, 'ab+', 0)
else:
out_file = open('/dev/null', 'ab+')
err_file = open('/dev/null', 'ab+', 0)
os.dup2(out_file.fileno(), sys.stdout.fileno())
os.dup2(err_file.fileno(), sys.stderr.fileno())
os.close(sys.stdin.fileno())
return pid
except OSError as e:
sys.exit(1)
except OSError as e:
sys.exit(1)
class Server():
def __init__(self, socket_path, play_context):
self.socket_path = socket_path
def __init__(self, fd, play_context, socket_path, original_path, ansible_playbook_pid=None):
self.play_context = play_context
self.socket_path = socket_path
self.original_path = original_path
display.display(
'creating new control socket for host %s:%s as user %s' %
(play_context.remote_addr, play_context.port, play_context.remote_user),
log_only=True
)
self.fd = fd
self.exception = None
display.display('control socket path is %s' % socket_path, log_only=True)
display.display('current working directory is %s' % os.getcwd(), log_only=True)
self.srv = JsonRpcServer()
self.sock = None
self._start_time = datetime.datetime.now()
self.connection = None
self._ansible_playbook_pid = ansible_playbook_pid
display.display("using connection plugin %s" % self.play_context.connection, log_only=True)
def start(self, variables):
try:
messages = list()
result = {}
self.connection = connection_loader.get(play_context.connection, play_context, sys.stdin)
self.connection._connect()
messages.append('control socket path is %s' % self.socket_path)
if not self.connection.connected:
raise AnsibleConnectionFailure('unable to connect to remote host %s' % self._play_context.remote_addr)
# If this is a relative path (~ gets expanded later) then plug the
# key's path on to the directory we originally came from, so we can
# find it now that our cwd is /
if self.play_context.private_key_file and self.play_context.private_key_file[0] not in '~/':
self.play_context.private_key_file = os.path.join(self.original_path, self.play_context.private_key_file)
self.connection = connection_loader.get(self.play_context.connection, self.play_context, '/dev/null',
ansible_playbook_pid=self._ansible_playbook_pid)
self.connection.set_options(var_options=variables)
self.connection._connect()
self.connection._socket_path = self.socket_path
self.srv.register(self.connection)
messages.extend(sys.stdout.getvalue().splitlines())
messages.append('connection to remote device started successfully')
connection_time = datetime.datetime.now() - self._start_time
display.display('connection established to %s in %s' % (play_context.remote_addr, connection_time), log_only=True)
self.socket = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
self.socket.bind(self.socket_path)
self.socket.listen(1)
display.display('local socket is set to listening', log_only=True)
self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
self.sock.bind(self.socket_path)
self.sock.listen(1)
messages.append('local domain socket listeners started successfully')
except Exception as exc:
result['error'] = to_text(exc)
result['exception'] = traceback.format_exc()
finally:
result['messages'] = messages
self.fd.write(json.dumps(result))
self.fd.close()
def run(self):
try:
while True:
while self.connection.connected:
signal.signal(signal.SIGALRM, self.connect_timeout)
signal.signal(signal.SIGTERM, self.handler)
signal.alarm(C.PERSISTENT_CONNECT_TIMEOUT)
signal.alarm(self.connection.get_option('persistent_connect_timeout'))
(s, addr) = self.socket.accept()
display.display('incoming request accepted on persistent socket', log_only=True)
self.exception = None
(s, addr) = self.sock.accept()
signal.alarm(0)
signal.signal(signal.SIGALRM, self.command_timeout)
while True:
data = recv_data(s)
if not data:
break
signal.signal(signal.SIGALRM, self.command_timeout)
signal.alarm(self.play_context.timeout)
op = to_text(data.split(b':')[0])
display.display('socket operation is %s' % op, log_only=True)
method = getattr(self, 'do_%s' % op, None)
rc = 255
stdout = stderr = ''
if not method:
stderr = 'Invalid action specified'
else:
rc, stdout, stderr = method(data)
signal.alarm(self.connection._play_context.timeout)
resp = self.srv.handle_request(data)
signal.alarm(0)
display.display('socket operation completed with rc %s' % rc, log_only=True)
send_data(s, to_bytes(rc))
send_data(s, to_bytes(stdout))
send_data(s, to_bytes(stderr))
send_data(s, to_bytes(resp))
s.close()
except Exception as e:
# socket.accept() will raise EINTR if the socket.close() is called
if e.errno != errno.EINTR:
display.display(traceback.format_exc(), log_only=True)
if hasattr(e, 'errno'):
if e.errno != errno.EINTR:
self.exception = traceback.format_exc()
else:
self.exception = traceback.format_exc()
finally:
# when done, close the connection properly and cleanup
# the socket file so it can be recreated
self.shutdown()
end_time = datetime.datetime.now()
delta = end_time - self._start_time
display.display('shutdown local socket, connection was active for %s secs' % delta, log_only=True)
def connect_timeout(self, signum, frame):
display.display('persistent connection idle timeout triggered, timeout value is %s secs' % C.PERSISTENT_CONNECT_TIMEOUT, log_only=True)
display.display('persistent connection idle timeout triggered, timeout value is %s secs'
% self.connection.get_option('persistent_connect_timeout'), log_only=True)
self.shutdown()
def command_timeout(self, signum, frame):
@ -190,200 +172,141 @@ class Server():
self.shutdown()
def shutdown(self):
display.display('shutdown persistent connection requested', log_only=True)
if not os.path.exists(self.socket_path):
display.display('persistent connection is not active', log_only=True)
return
try:
if self.socket:
display.display('closing local listener', log_only=True)
self.socket.close()
if self.connection:
display.display('closing the connection', log_only=True)
self.connection.close()
except:
pass
finally:
if os.path.exists(self.socket_path):
display.display('removing the local control socket', log_only=True)
os.remove(self.socket_path)
""" Shuts down the local domain socket
"""
if os.path.exists(self.socket_path):
try:
if self.sock:
self.sock.close()
if self.connection:
self.connection.close()
except:
pass
finally:
if os.path.exists(self.socket_path):
os.remove(self.socket_path)
setattr(self.connection, '_socket_path', None)
setattr(self.connection, '_connected', False)
display.display('shutdown complete', log_only=True)
def do_EXEC(self, data):
cmd = data.split(b'EXEC: ')[1]
display.display('Command executed: %s' % cmd, log_only=True)
return self.connection.exec_command(cmd)
def do_PUT(self, data):
(op, src, dst) = shlex.split(to_native(data))
return self.connection.fetch_file(src, dst)
def do_FETCH(self, data):
(op, src, dst) = shlex.split(to_native(data))
return self.connection.put_file(src, dst)
def do_CONTEXT(self, data):
pc_data = data.split(b'CONTEXT: ', 1)[1]
if PY3:
pc_data = cPickle.loads(pc_data, encoding='bytes')
else:
pc_data = cPickle.loads(pc_data)
pc = PlayContext()
pc.deserialize(pc_data)
try:
self.connection.update_play_context(pc)
except AttributeError:
pass
return (0, 'ok', '')
def do_RUN(self, data):
timeout = self.play_context.timeout
while bool(timeout):
if os.path.exists(self.socket_path):
break
time.sleep(1)
timeout -= 1
socket_bytes = to_bytes(self.socket_path, errors='surrogate_or_strict')
return 0, b'\n#SOCKET_PATH#: %s\n' % socket_bytes, ''
def communicate(sock, data):
send_data(sock, data)
rc = int(recv_data(sock), 10)
stdout = recv_data(sock)
stderr = recv_data(sock)
return (rc, stdout, stderr)
def main():
""" Called to initiate the connect to the remote device
"""
rc = 0
result = {}
messages = list()
socket_path = None
# Need stdin as a byte stream
if PY3:
stdin = sys.stdin.buffer
else:
stdin = sys.stdin
# Note: update the below log capture code after Display.display() is refactored.
saved_stdout = sys.stdout
sys.stdout = StringIO()
try:
# read the play context data via stdin, which means depickling it
# FIXME: as noted above, we will probably need to deserialize the
# connection loader here as well at some point, otherwise this
# won't find role- or playbook-based connection plugins
cur_line = stdin.readline()
init_data = b''
while cur_line.strip() != b'#END_INIT#':
if cur_line == b'':
raise Exception("EOF found before init data was complete")
init_data += cur_line
cur_line = stdin.readline()
vars_data = read_stream(stdin)
init_data = read_stream(stdin)
if PY3:
pc_data = cPickle.loads(init_data, encoding='bytes')
variables = cPickle.loads(vars_data, encoding='bytes')
else:
pc_data = cPickle.loads(init_data)
variables = cPickle.loads(vars_data)
pc = PlayContext()
pc.deserialize(pc_data)
play_context = PlayContext()
play_context.deserialize(pc_data)
display.verbosity = play_context.verbosity
except Exception as e:
# FIXME: better error message/handling/logging
sys.stderr.write(traceback.format_exc())
sys.exit("FAIL: %s" % e)
rc = 1
result.update({
'error': to_text(e),
'exception': traceback.format_exc()
})
ssh = connection_loader.get('ssh', class_only=True)
cp = ssh._create_control_path(pc.remote_addr, pc.port, pc.remote_user, pc.connection)
if rc == 0:
ssh = connection_loader.get('ssh', class_only=True)
ansible_playbook_pid = sys.argv[1]
cp = ssh._create_control_path(play_context.remote_addr, play_context.port, play_context.remote_user, play_context.connection, ansible_playbook_pid)
# create the persistent connection dir if need be and create the paths
# which we will be using later
tmp_path = unfrackpath(C.PERSISTENT_CONTROL_PATH_DIR)
makedirs_safe(tmp_path)
lock_path = unfrackpath("%s/.ansible_pc_lock" % tmp_path)
socket_path = unfrackpath(cp % dict(directory=tmp_path))
# create the persistent connection dir if need be and create the paths
# which we will be using later
tmp_path = unfrackpath(C.PERSISTENT_CONTROL_PATH_DIR)
makedirs_safe(tmp_path)
# if the socket file doesn't exist, spin up the daemon process
lock_fd = os.open(lock_path, os.O_RDWR | os.O_CREAT, 0o600)
fcntl.lockf(lock_fd, fcntl.LOCK_EX)
lock_path = unfrackpath("%s/.ansible_pc_lock_%s" % (tmp_path, play_context.remote_addr))
socket_path = unfrackpath(cp % dict(directory=tmp_path))
if not os.path.exists(socket_path):
pid = do_fork()
if pid == 0:
rc = 0
try:
server = Server(socket_path, pc)
except AnsibleConnectionFailure as exc:
display.display('connecting to host %s returned an error' % pc.remote_addr, log_only=True)
display.display(str(exc), log_only=True)
rc = 1
except Exception as exc:
display.display('failed to create control socket for host %s' % pc.remote_addr, log_only=True)
display.display(traceback.format_exc(), log_only=True)
rc = 1
fcntl.lockf(lock_fd, fcntl.LOCK_UN)
os.close(lock_fd)
if rc == 0:
server.run()
sys.exit(rc)
with file_lock(lock_path):
if not os.path.exists(socket_path):
messages.append('local domain socket does not exist, starting it')
original_path = os.getcwd()
r, w = os.pipe()
pid = fork_process()
if pid == 0:
try:
os.close(r)
wfd = os.fdopen(w, 'w')
process = ConnectionProcess(wfd, play_context, socket_path, original_path, ansible_playbook_pid)
process.start(variables)
except Exception:
messages.append(traceback.format_exc())
rc = 1
if rc == 0:
process.run()
sys.exit(rc)
else:
os.close(w)
rfd = os.fdopen(r, 'r')
data = json.loads(rfd.read())
messages.extend(data.pop('messages'))
result.update(data)
else:
messages.append('found existing local domain socket, using it!')
conn = Connection(socket_path)
pc_data = to_text(init_data)
try:
messages.extend(conn.update_play_context(pc_data))
except Exception as exc:
# Only network_cli has update_play context, so missing this is
# not fatal e.g. netconf
if isinstance(exc, ConnectionError) and getattr(exc, 'code', None) == -32601:
pass
else:
result.update({
'error': to_text(exc),
'exception': traceback.format_exc()
})
messages.append(sys.stdout.getvalue())
result.update({
'messages': messages,
'socket_path': socket_path
})
sys.stdout = saved_stdout
if 'exception' in result:
rc = 1
sys.stderr.write(json.dumps(result))
else:
display.display('re-using existing socket for %s@%s:%s' % (pc.remote_user, pc.remote_addr, pc.port), log_only=True)
fcntl.lockf(lock_fd, fcntl.LOCK_UN)
os.close(lock_fd)
timeout = pc.timeout
while bool(timeout):
if os.path.exists(socket_path):
display.vvvv('connected to local socket in %s' % (pc.timeout - timeout), pc.remote_addr)
break
time.sleep(1)
timeout -= 1
else:
raise AnsibleConnectionFailure('timeout waiting for local socket', pc.remote_addr)
# now connect to the daemon process
# FIXME: if the socket file existed but the daemonized process was killed,
# the connection will timeout here. Need to make this more resilient.
while True:
data = stdin.readline()
if data == b'':
break
if data.strip() == b'':
continue
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
connect_retry_timeout = C.PERSISTENT_CONNECT_RETRY_TIMEOUT
while bool(connect_retry_timeout):
try:
sock.connect(socket_path)
break
except socket.error:
time.sleep(1)
connect_retry_timeout -= 1
else:
display.display('connect retry timeout expired, unable to connect to control socket', pc.remote_addr, pc.remote_user, log_only=True)
display.display('persistent_connect_retry_timeout is %s secs' % (C.PERSISTENT_CONNECT_RETRY_TIMEOUT), pc.remote_addr, pc.remote_user, log_only=True)
sys.stderr.write('failed to connect to control socket')
sys.exit(255)
# send the play_context back into the connection so the connection
# can handle any privilege escalation activities
pc_data = b'CONTEXT: %s' % init_data
communicate(sock, pc_data)
rc, stdout, stderr = communicate(sock, data.strip())
sys.stdout.write(to_native(stdout))
sys.stderr.write(to_native(stderr))
sock.close()
break
rc = 0
sys.stdout.write(json.dumps(result))
sys.exit(rc)
if __name__ == '__main__':
display = Display()
main()

414
changelogs/.changes.yaml Normal file
View File

@ -0,0 +1,414 @@
releases:
2.6.0:
codename: Heartbreaker
fragments:
- v2.6.0_summary.yaml
release_date: '2018-06-28'
2.6.0a1:
codename: Heartbreaker
fragments:
- ansible-managed-encoding.yaml
- azure-lb-sku.yaml
- base64_filter_encoding.yaml
- command-support-argv.yaml
- copy-files-default-follow.yaml
- copy-no-chmod.yaml
- copy-recursive-copy.yml
- encoding-docs-plugin-parsing.yaml
- file-disallow-src.yaml
- file-nonexistent-link.yaml
- file-nonexitent-link-recurse.yaml
- file-succeed-if-already-absent.yaml
- gem-custom-home.yaml
- grafana-deprecation-warnings.yaml
- includes.yaml
- mode-preserve.yaml
- pause-ctrl-c.yaml
- postgresql_user-encrypted-fixes.yml
- py36-spwd.yaml
- template-filename-encoding.yaml
- user-expires.yaml
- v2.6.0a1_catchup.yaml
- v2.6.0a1_summary.yaml
- win_environment-do-not-delete-on-null.yaml
- win_file-special-char-fix.yaml
- win_get_url-ftp-support.yaml
- win_module_utils_sid-conversion.yaml
- win_template-dest-dir-fix.yaml
- win_updates_typo_whitelist_fix.yaml
- window_become-better-errors.yaml
- windows-deprecation-removal.yaml
- winrm-encoding-fix
- winrm-get_correct_user.yaml
- yaml-callback-unicode.yaml
modules:
- aci_l3out
- avi_autoscalelaunchconfig
- avi_l4policyset
- avi_useraccount
- aws_caller_facts
- aws_inspector_target
- aws_ses_identity_policy
- aws_sgw_facts
- azure_rm_aks
- azure_rm_aks_facts
- bigip_data_group
- bigip_device_license
- bigip_gtm_global
- bigip_gtm_monitor_bigip
- bigip_gtm_monitor_firepass
- bigip_gtm_monitor_http
- bigip_gtm_monitor_https
- bigip_gtm_monitor_tcp
- bigip_gtm_monitor_tcp_half_open
- bigip_gtm_pool_member
- bigip_gtm_virtual_server
- bigip_log_destination
- bigip_log_publisher
- bigip_management_route
- bigip_profile_dns
- bigip_profile_tcp
- bigip_profile_udp
- bigip_service_policy
- bigip_smtp
- bigip_snmp_community
- bigip_timer_policy
- bigip_trunk
- bigiq_application_fasthttp
- bigiq_application_fastl4_tcp
- bigiq_application_fastl4_udp
- bigiq_application_http
- bigiq_application_https_offload
- bigiq_application_https_waf
- bigiq_regkey_license_assignment
- cnos_command
- cnos_config
- cs_role_permission
- digital_ocean_account_facts
- digital_ocean_certificate_facts
- digital_ocean_domain_facts
- digital_ocean_image_facts
- digital_ocean_load_balancer_facts
- digital_ocean_region_facts
- digital_ocean_size_facts
- digital_ocean_snapshot_facts
- digital_ocean_tag_facts
- digital_ocean_volume_facts
- ec2_eip_facts
- ec2_vpc_vpn_facts
- exos_command
- fortios_webfilter
- gcp_compute_address
- gcp_compute_backend_bucket
- gcp_compute_backend_service
- gcp_compute_health_check
- gcp_compute_http_health_check
- gcp_compute_https_health_check
- gcp_compute_instance
- gcp_compute_instance_template
- gcp_compute_network
- gcp_compute_route
- gcp_compute_subnetwork
- gcp_compute_target_http_proxy
- gcp_compute_target_https_proxy
- gcp_compute_target_tcp_proxy
- gcp_container_cluster
- gcp_container_node_pool
- gcp_dns_resource_record_set
- gcp_pubsub_subscription
- gcp_pubsub_topic
- gcp_storage_bucket
- gcp_storage_bucket_access_control
- gitlab_deploy_key
- gitlab_hooks
- k8s
- ldap_passwd
- memset_zone
- meraki_network
- meraki_organization
- na_ontap_broadcast_domain
- net_get
- net_put
- netconf_get
- one_host
- one_image
- one_image_facts
- one_vm
- os_server_metadata
- os_volume_snapshot
- psexec
- purefa_ds
- purefa_facts
- purefa_pgsnap
- purefb_fs
- purefb_snap
- rds_instance_facts
- rds_snapshot_facts
- scaleway_compute
- scaleway_sshkey
- slxos_command
- slxos_config
- slxos_facts
- slxos_interface
- slxos_l2_interface
- slxos_linkagg
- spectrum_device
- sysvinit
- vmware_cluster_facts
- vmware_datastore_cluster
- vmware_datastore_maintenancemode
- vmware_guest_disk_facts
- vmware_guest_snapshot_facts
- vmware_host_capability_facts
- vmware_host_powerstate
- vmware_local_user_facts
- vmware_portgroup_facts
- vmware_resource_pool_facts
- vmware_tag
- vmware_tag_facts
- vmware_vswitch_facts
- win_domain_computer
- win_hostname
- win_pester
- yarn
- zabbix_group_facts
plugins:
callback:
- cgroup_memory_recap
- grafana_annotations
- sumologic
connection:
- httpapi
inventory:
- foreman
- generator
- nmap
lookup:
- onepassword
- onepassword_raw
release_date: '2018-05-21'
2.6.0a2:
codename: Heartbreaker
fragments:
- always_run_removal.yaml
- aws_ses_identity_check_mode.yaml
- powershell_use_set_tmpdir.yaml
- selinux-check-mode.yaml
- synchronize_remote_is_local.yaml
- v2.6.0a2_catchup.yaml
- v2.6.0a2_summary.yaml
- win_updates-add-scheduled-tasks-back.yaml
- winrm_kinit_error-fix.yaml
- xenserver-facts-fix.yaml
modules:
- acme_account
- aws_config_aggregation_authorization
- aws_config_aggregator
- aws_config_delivery_channel
- aws_config_recorder
- aws_config_rule
- aws_glue_connection
- aws_glue_job
- azure_rm_resource
- azure_rm_resource_facts
- bigip_gtm_monitor_external
- bigip_monitor_external
- bigiq_utility_license
- cloud_init_data_facts
- elb_network_lb
- flatpak
- flatpak_remote
- gcp_compute_disk
- gcp_compute_firewall
- gcp_compute_forwarding_rule
- gcp_compute_global_address
- gcp_compute_global_forwarding_rule
- gcp_compute_image
- gcp_compute_instance_group
- gcp_compute_instance_group_manager
- gcp_compute_ssl_certificate
- gcp_compute_target_pool
- gcp_compute_target_ssl_proxy
- gcp_compute_url_map
- gluster_peer
- heroku_collaborator
- memset_dns_reload
- memset_zone_domain
- memset_zone_record
- meraki_admin
- meraki_snmp
- na_ontap_aggregate
- na_ontap_broadcast_domain_ports
- na_ontap_cifs
- na_ontap_cifs_acl
- na_ontap_cifs_server
- na_ontap_cluster
- na_ontap_cluster_ha
- na_ontap_export_policy
- na_ontap_export_policy_rule
- na_ontap_igroup
- na_ontap_interface
- na_ontap_iscsi
- na_ontap_job_schedule
- na_ontap_license
- na_ontap_lun
- na_ontap_lun_map
- na_ontap_net_ifgrp
- na_ontap_net_port
- na_ontap_net_routes
- na_ontap_net_vlan
- na_ontap_nfs
- na_ontap_ntp
- na_ontap_qtree
- na_ontap_service_processor_network
- na_ontap_snapshot
- na_ontap_snmp
- na_ontap_svm
- na_ontap_ucadapter
- na_ontap_user
- na_ontap_user_role
- na_ontap_volume
- na_ontap_volume_clone
- netconf_rpc
- one_service
- slxos_l3_interface
- slxos_vlan
plugins:
inventory:
- gcp_compute
release_date: '2018-05-30'
2.6.0rc1:
codename: Heartbreaker
fragments:
- v2.6.0rc1_catchup.yaml
- v2.6.0rc1_summary.yaml
release_date: '2018-06-05'
2.6.0rc2:
codename: Heartbreaker
fragments:
- 41167_ansible_doc_regression.yaml
- admin-users-default-change.yaml
- aws_s3_async_fix.yaml
- aws_s3_decryption_fix.yaml
- aws_s3_fix_custom_endpoints.yaml
- aws_s3_fix_exception_handling.yaml
- ec2_ami_fix_block_device_mapping_volume_size_type.yaml
- v2.6.0rc2_summary.yaml
release_date: '2018-06-08'
2.6.0rc3:
codename: Heartbreaker
fragments:
- digital_ocean_block_storage_fix.yaml
- gce-sort-fix.yaml
- iosxr_config_route_policy_objects_fix.yaml
- no_log_fix_for_connection_exceptions.yaml
- reset_con_fix.yml
- v2.6.0rc3_summary.yaml
release_date: '2018-06-18'
2.6.0rc4:
codename: Heartbreaker
fragments:
- 41530-apt-mark-deb6.yaml
- debug_fixes.yml
- eos_vrf_failure-fix.yml
- file_touch_diff.yaml
- fix_config_required.yml
- fix_yaml_inv_nulls.yml
- missing_raise.yml
- v2.6.0rc4_summary.yaml
- vars_lk.yml
- virtualbox_inventory.yaml
- win_updates-async-fix.yml
- winrm_kinit-remove-pass-log.yml
release_date: '2018-06-25'
2.6.0rc5:
codename: Heartbreaker
fragments:
- fix_options.yml
- fix_password_lookup_loading.yaml
- group_by_localhost.yaml
- lineinfile-insertbefore-bof-bugfix.yaml
- v2.6.0rc5_summary.yaml
- win_iis_webapppool-output-fix.yml
release_date: '2018-06-26'
2.6.1:
codename: Heartbreaker
fragments:
- avoid_cwd_vars.yml
- basic_booleans_backward_compat.yaml
- file_touch_check_mode.yaml
- inventory_manager_fix_required_options_override.yaml
- junos_config_confirm_commit.yaml
- nsupdate_fix_hmac-sha384.yaml
- v2.6.1_summary.yaml
- win_domain-dns-typo-fix.yml
- win_group_membership-sid-bugfix.yml
- wrcwd_ansible.cfg.yml
release_date: '2018-07-05'
2.6.2:
codename: Heartbreaker
fragments:
- 40839-docker_container_init.yml
- 42042-inventory_with_no_region.yaml
- 42647-win_updates.yaml
- clarify_error_message.yml
- doc_fix.yml
- docfix.yml
- docker-default-ssl.yml
- empty_gh_error.yaml
- ensure_text_source.yaml
- eos_l2_interface_fix.yaml
- fix_fact_clean.yaml
- fix_ios_vlan.yaml
- fix_pagination_cloudfront_facts.yml
- fix_sysvinit_typo.yml
- fix_tls_mail.yaml
- inventory_dir_ext_compare_fix.yaml
- ios_l2_interface-fix.yml
- junos_facts_fix.yaml
- lineinfile-empty-regexp.yml
- nxos_CI_failures_fix.yaml
- nxos_cliconf.yaml
- nxos_facts.yaml
- nxos_module_utils_nxapi_get_capabilities.yaml
- nxos_nxapi_default_http_behavior_fix.yaml
- nxos_vxlan_vtep_vni_fix.yaml
- openvswitch_db_make_key_optional.yaml
- pause-stdout-redirection.yaml
- pause-try-except-curses.yaml
- preserve_delegate_nolog.yml
- remote_tmp_de-escalated_user.yaml
- sysvinit_bugxif.yml
- user-freebsd-createhome-name-fix.yaml
- user_freebsd_always_changed_bugfix.yaml
- v2.6.2_summary.yaml
- vmware_remove_vm_sceanrio.yaml
- vultr-parameters-parsing.yaml
- vyos_command_retry.yml
- win_chocoalatey_install_tls12.yml
- win_reboot-fixes.yml
- win_security_policy-empty-value.yaml
- win_unzip_share-discard-cmdlet-output.yaml
- win_user-validate-fixes.yaml
release_date: '2018-07-27'
2.6.3:
codename: Heartbreaker
fragments:
- 42786-sysvinit-fix-2-issues.yml
- 42943_vmware_vmnic_fix.yaml
- azure_nsg_deployment_lb.yaml
- convert-valid-data-to-bytes-for-conversion.yaml
- fix-selectors-error-condition.yaml
- fix-swap-mount-module.yaml
- fix-world-readable-skip-message.yaml
- get_url_bug_fix.yaml
- lxd-idempotent-config.yaml
- nicer_multi_error.yml
- nios_api_duplicate_record-fix.yaml
- openstack_inventory-optional-region.yaml
- openvswitch_db_column_value_type.yaml
- slack_callback_invocation.yaml
- v2.6.3_summary.yaml
- vars_prompt-allow-prompting-for-play-vars.yaml
- win_domain_controller-netlogon.yaml
release_date: '2018-08-16'

View File

@ -0,0 +1,644 @@
========================================
Ansible 2.6 "Heartbreaker" Release Notes
========================================
v2.6.3
======
Release Summary
---------------
| Release Date: 2018-08-16
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`_
Bugfixes
--------
- Fix lxd module to be idempotent when the given configuration for the lxd container has not changed (https://github.com/ansible/ansible/pull/38166)
- Fix setting value type to str to avoid conversion during template read. Fix Idempotency in case of 'no key'.
- Fix the mount module's handling of swap entries in fstab (https://github.com/ansible/ansible/pull/42837)
- The fix for `CVE-2018-10875 <https://access.redhat.com/security/cve/cve-2018-10875>`_ prints out a warning message about skipping a config file from a world writable current working directory. However, if the user explicitly specifies that the config file should be used via the ANSIBLE_CONFIG environment variable then Ansible would honor that but still print out the warning message. This has been fixed so that Ansible honors the user's explicit wishes and does not print a warning message in that circumstance.
- To fix the bug where existing host_record was deleted when existing record name is used with different IP. (https://github.com/ansible/ansible/pull/43235)
- VMware handle pnic in proxyswitch (https://github.com/ansible/ansible/pull/42996)
- fix azure security group cannot add rules when purge_rule set to false. (https://github.com/ansible/ansible/pull/43699)
- fix azure_rm_deployment collect tags from existing Resource Group. (https://github.com/ansible/ansible/pull/26104)
- fix azure_rm_loadbalancer_facts list takes at least 2 arguments. (https://github.com/ansible/ansible/pull/29050)
- fix for the bundled selectors module (used in the ssh and local connection plugins) when a syscall is restarted after being interrupted by a signal (https://github.com/ansible/ansible/issues/41630)
- get_url - fix the bug that get_url does not change mode when checksum matches (https://github.com/ansible/ansible/issues/29614)
- nicer error when multiprocessing breaks https://github.com/ansible/ansible/issues/43090
- openssl_certificate - Convert valid_date to bytes for conversion
- openstack_inventory.py dynamic inventory file fixed the plugin to the script so that it will work with current ansible-inventory. Also redirect stdout before dumping the ouptput, because not doing so will cause JSON parse errors in some cases. (https://github.com/ansible/ansible/pull/43432)
- slack callback - Fix invocation by looking up data from cli.options (https://github.com/ansible/ansible/pull/43542)
- sysvinit module: handle values of optional parameters (https://github.com/ansible/ansible/pull/42786). Don't disable service when `enabled` parameter isn't set. Fix command when `arguments` parameter isn't set.
- vars_prompt - properly template play level variables in vars_prompt (https://github.com/ansible/ansible/issues/37984)
- win_domain - ensure the Netlogon service is up and running after promoting host to controller - https://github.com/ansible/ansible/issues/39235
- win_domain_controller - ensure the Netlogon service is up and running after promoting host to controller - https://github.com/ansible/ansible/issues/39235
v2.6.2
======
Release Summary
---------------
| Release Date: 2018-07-27
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`_
Minor Changes
-------------
- Scenario guide for removing an existing virtual machine is added.
- lineinfile - add warning when using an empty regexp (https://github.com/ansible/ansible/issues/29443)
Bugfixes
--------
- Add text output along with structured output in nxos_facts (https://github.com/ansible/ansible/pull/42886).
- Allow more than one page of results by using the right pagination indicator ('NextMarker' instead of 'NextToken').
- Fix an atomic_move error that is 'true', but misleading. Now we show all 3 files involved and clarify what happened.
- Fix eos_l2_interface eapi (https://github.com/ansible/ansible/pull/42270).
- Fix fetching old style facts in junos_facts module (https://github.com/ansible/ansible/pull/42351)
- Fix get_device_info nxos zero or more whitespace regex (https://github.com/ansible/ansible/pull/43178).
- Fix nxos CI failures (https://github.com/ansible/ansible/pull/42240).
- Fix nxos_nxapi default http behavior (https://github.com/ansible/ansible/pull/41817).
- Fix nxos_vxlan_vtep_vni (https://github.com/ansible/ansible/pull/42240).
- Fix regex network_os_platform nxos (https://github.com/ansible/ansible/pull/42288).
- Refactor nxos cliconf get_device_info for non structured output supported devices (https://github.com/ansible/ansible/pull/42089).
- To fix the NoneType error raised in ios_l2_interface when Access Mode VLAN is unassigned (https://github.com/ansible/ansible/pull/42312)
- emtpy host/group name is an error https://github.com/ansible/ansible/issues/42044
- fix default SSL version for docker modules https://github.com/ansible/ansible/issues/42897
- fix mail module when using starttls https://github.com/ansible/ansible/issues/42338
- fix nmap config example https://github.com/ansible/ansible/pull/42925
- fix ps detection of service https://github.com/ansible/ansible/pull/43014
- fix the remote tmp folder permissions issue when becoming a non admin user - https://github.com/ansible/ansible/issues/41340, https://github.com/ansible/ansible/issues/42117
- fix typoe in sysvinit that breaks update.rc-d detection https://github.com/ansible/ansible/issues/42734
- fixes docker_container compatibilty with docker-py < 2.2
- get_capabilities in nxapi module_utils should not return empty dictionary (https://github.com/ansible/ansible/pull/42688).
- inventory - When using an inventory directory, ensure extension comparison uses text types (https://github.com/ansible/ansible/pull/42475)
- ios_vlan - fix unable to identify correct vlans issue (https://github.com/ansible/ansible/pull/42247)
- nxos_facts warning message improved (https://github.com/ansible/ansible/pull/42969).
- openvswitch_db - make 'key' argument optional https://github.com/ansible/ansible/issues/42108
- pause - do not set stdout to raw mode when redirecting to a file (https://github.com/ansible/ansible/issues/41717)
- pause - nest try except when importing curses to gracefully fail if curses is not present (https://github.com/ansible/ansible/issues/42004)
- plugins/inventory/openstack.py - Do not create group with empty name if region is not set
- preseve delegation info on nolog https://github.com/ansible/ansible/issues/42344
- remove ambiguity when it comes to 'the source'
- remove dupes from var precedence
- restores filtering out conflicting facts https://github.com/ansible/ansible/issues/41684
- user - fix bug that resulted in module always reporting a change when specifiying the home directory on FreeBSD (https://github.com/ansible/ansible/issues/42484)
- user - use correct attribute name in FreeBSD for creat_home (https://github.com/ansible/ansible/pull/42711)
- vultr - Do not fail trying to load configuration from ini files if required variables have been set as environment variables.
- vyos_command correcting conditionals looping (https://github.com/ansible/ansible/pull/43331).
- win_chocolatey - enable TLSv1.2 support when downloading the Chocolatey installer https://github.com/ansible/ansible/issues/41906
- win_reboot - fix for handling an already scheduled reboot and other minor log formatting issues
- win_reboot - fix issue when overridding connection timeout hung the post reboot uptime check - https://github.com/ansible/ansible/issues/42185 https://github.com/ansible/ansible/issues/42294
- win_reboot - handle post reboots when running test_command - https://github.com/ansible/ansible/issues/41713
- win_security_policy - allows an empty string to reset a policy value https://github.com/ansible/ansible/issues/40869
- win_share - discard any cmdlet output we don't use to ensure only the return json is received by Ansible
- win_unzip - discard any cmdlet output we don't use to ensure only the return json is received by Ansible
- win_updates - fixed module return value is lost in error in some cases (https://github.com/ansible/ansible/pull/42647)
- win_user - Use LogonUser to validate the password as it does not rely on SMB/RPC to be available https://github.com/ansible/ansible/issues/24884
v2.6.1
======
Release Summary
---------------
| Release Date: 2018-07-05
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`_
Minor Changes
-------------
- Restore module_utils.basic.BOOLEANS variable for backwards compatibility with the module API in older ansible releases.
Bugfixes
--------
- **Security Fix** - avoid loading host/group vars from cwd when not specifying a playbook or playbook base dir
- **Security Fix** - avoid using ansible.cfg in a world writable dir.
- Fix junos_config confirm commit timeout issue (https://github.com/ansible/ansible/pull/41527)
- file module - The touch subcommand had its diff output broken during the 2.6.x development cycle. The patch to fix that broke check mode. This is now fixed (https://github.com/ansible/ansible/issues/42111)
- inventory manager - This fixes required options being populated before the inventory config file is read, so the required options may be set in the config file.
- nsupdate - allow hmac-sha384 https://github.com/ansible/ansible/pull/42209
- win_domain - fixes typo in one of the AD cmdlets https://github.com/ansible/ansible/issues/41536
- win_group_membership - uses the internal Ansible SID conversion logic and uses that when comparing group membership instead of the name https://github.com/ansible/ansible/issues/40649
v2.6.0
======
Release Summary
---------------
| Release Date: 2018-06-28
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`_
Minor Changes
-------------
- Added an ``encoding`` option to the ``b64encode`` and ``b64decode`` filters to specify the encoding of the string that is base64 encoded.
- PowerShell modules that use Convert-ToSID in Ansible.ModuleUtils.SID.psm1 like win_user_right now accept an actual SID as an input string. This means any local or domain accounts that are named like a SID need to be prefixed with the domain, hostname, or . to ensure it converts to that accounts SID https://github.com/ansible/ansible/issues/38502
- Raise AnsibleParserError which was missing previously
- The aws_ses_identity module supports check mode
- ``postgresql_user`` module changed ``encrypted=yes`` to be the default. This shouldn't break any current playbooks, the module will just store passwords hashed by default. This change was done because Postgres 10 dropped support for ``UNENCRYPTED`` passwords and because all versions since Postgres 7.2 support storing encrypted passwords.
- azure_rm_loadbalancer - add support for sku
- azure_rm_publicipaddress - add support for sku
- cloudflare_dns module - Removed restriction from protocol to allow other protocols than tcp and udp to be specified.
- command module - Added argv option to allow command to be specified as a list vs. a string (https://github.com/ansible/ansible/issues/19392)
- gem - add ability to specify a custom directory for installing gems (https://github.com/ansible/ansible/pull/38195)
- import/include - Cache task_vars to speed up IncludedFile.process_include_results (https://github.com/ansible/ansible/pull/39026)
- postgresql_user module - Changed encrypted=yes to be the default. This shouldn't break any current playbooks, the module will just store passwords hashed by default. This change was done because Postgres 10 dropped support for UNENCRYPTED passwords and because all versions since Postgres 7.2 support storing encrypted passwords.
- vmware_target_canonical_facts module - The target_id parameter is an optional parameter.
Deprecated Features
-------------------
- nxos_igmp_interface module - The oif_prefix and oif_source properties are deprecated. Use the oif_ps parameter with a dictionary of prefix and source to values instead.
Removed Features (previously deprecated)
----------------------------------------
- removed the deprecated always_run task option, please use ``check_mode: no`` instead
- win_chocolatey - removed deprecated upgrade option and choco_* output return values
- win_feature - removed deprecated reboot option
- win_iis_webapppool - removed the ability to supply attributes as a string in favour of a dictionary
- win_package - removed deprecated name option
- win_regedit - removed deprecated support for specifying HKCC as HCCC
Bugfixes
--------
- **Security Fix** - Some connection exceptions would cause no_log specified on a task to be ignored. If this happened, the task information, including any private information could have been displayed to stdout and (if enabled, not the default) logged to a log file specified in ansible.cfg's log_path. Additionally, sites which redirected stdout from ansible runs to a log file may have stored that private information onto disk that way as well. (https://github.com/ansible/ansible/pull/41414)
- Changed the admin_users config option to not include "admin" by default as admin is frequently used for a non-privileged account (https://github.com/ansible/ansible/pull/41164)
- Changed the output to "text" for "show vrf" command as default "json" output format with respect to "eapi" transport was failing (https://github.com/ansible/ansible/pull/41470)
- Document mode=preserve for both the copy and template module
- Fix added for Digital Ocean Volumes API change causing Ansible to recieve an unexpected value in the response. (https://github.com/ansible/ansible/pull/41431)
- Fix an encoding issue when parsing the examples from a plugins' documentation
- Fix iosxr_config module to handle route-policy, community-set, prefix-set, as-path-set and rd-set blocks. All these blocks are part of route-policy language of iosxr.
- Fix mode=preserve with remote_src=True for the copy module
- Implement mode=preserve for the template module
- The yaml callback plugin now allows non-ascii characters to be displayed.
- Various grafana_* modules - Port away from the deprecated b64encodestring function to the b64encode function instead. https://github.com/ansible/ansible/pull/38388
- added missing 'raise' to exception definition https://github.com/ansible/ansible/pull/41690
- allow custom endpoints to be used in the aws_s3 module (https://github.com/ansible/ansible/pull/36832)
- allow set_options to be called multiple times https://github.com/ansible/ansible/pull/41913
- ansible-doc - fixed traceback on missing plugins (https://github.com/ansible/ansible/pull/41167)
- cast the device_mapping volume size to an int in the ec2_ami module (https://github.com/ansible/ansible/pull/40938)
- copy - fixed copy to only follow symlinks for files in the non-recursive case
- copy module - The copy module was attempting to change the mode of files for remote_src=True even if mode was not set as a parameter. This failed on filesystems which do not have permission bits (https://github.com/ansible/ansible/pull/40099)
- copy module - fixed recursive copy with relative paths (https://github.com/ansible/ansible/pull/40166)
- correct debug display for all cases https://github.com/ansible/ansible/pull/41331
- correctly check hostvars for vars term https://github.com/ansible/ansible/pull/41819
- correctly handle yaml inventory files when entries are null dicts https://github.com/ansible/ansible/issues/41692
- dynamic includes - Allow inheriting attributes from static parents (https://github.com/ansible/ansible/pull/38827)
- dynamic includes - Don't treat undefined vars for conditional includes as truthy (https://github.com/ansible/ansible/pull/39377)
- dynamic includes - Fix IncludedFile comparison for free strategy (https://github.com/ansible/ansible/pull/37083)
- dynamic includes - Improved performance by fixing re-parenting on copy (https://github.com/ansible/ansible/pull/38747)
- dynamic includes - Use the copied and merged task for calculating task vars (https://github.com/ansible/ansible/pull/39762)
- file - fixed the default follow behaviour of file to be true
- file module - Eliminate an error if we're asked to remove a file but something removes it while we are processing the request (https://github.com/ansible/ansible/pull/39466)
- file module - Fix error when recursively assigning permissions and a symlink to a nonexistent file is present in the directory tree (https://github.com/ansible/ansible/issues/39456)
- file module - Fix error when running a task which assures a symlink to a nonexistent file exists for the second and subsequent times (https://github.com/ansible/ansible/issues/39558)
- file module - The file module allowed the user to specify src as a parameter when state was not link or hard. This is documented as only applying to state=link or state=hard but in previous Ansible, this could have an effect in rare cornercases. For instance, "ansible -m file -a 'state=directory path=/tmp src=/var/lib'" would create /tmp/lib. This has been disabled and a warning emitted (will change to an error in Ansible-2.10).
- file module - The touch subcommand had its diff output broken during the 2.6.x development cycle. This is now fixed (https://github.com/ansible/ansible/issues/41755)
- fix BotoCoreError exception handling
- fix apt-mark on debian6 (https://github.com/ansible/ansible/pull/41530)
- fix async for the aws_s3 module by adding async support to the action plugin (https://github.com/ansible/ansible/pull/40826)
- fix decrypting vault files for the aws_s3 module (https://github.com/ansible/ansible/pull/39634)
- fix errors with S3-compatible APIs if they cannot use ACLs for buckets or objects
- fix permission handling to try to download a file even if the user does not have permission to list all objects in the bucket
- fixed config required handling, specifically for _terms in lookups https://github.com/ansible/ansible/pull/41740
- gce_net - Fix sorting of allowed ports (https://github.com/ansible/ansible/pull/41567)
- group_by - support implicit localhost (https://github.com/ansible/ansible/pull/41860)
- import/include - Ensure role handlers have the proper parent, allowing for correct attribute inheritance (https://github.com/ansible/ansible/pull/39426)
- import_playbook - Pass vars applied to import_playbook into parsing of the playbook as they may be needed to parse the imported plays (https://github.com/ansible/ansible/pull/39521)
- include_role/import_role - Don't overwrite included role handlers with play handlers on parse (https://github.com/ansible/ansible/pull/39563)
- include_role/import_role - Fix parameter templating (https://github.com/ansible/ansible/pull/36372)
- include_role/import_role - Use the computed role name for include_role/import_role so to diffentiate between names computed from host vars (https://github.com/ansible/ansible/pull/39516)
- include_role/import_role - improved performance and recursion depth (https://github.com/ansible/ansible/pull/36470)
- lineinfile - fix insertbefore when used with BOF to not insert duplicate lines (https://github.com/ansible/ansible/issues/38219)
- password lookup - Do not load password lookup in network filters, allowing the password lookup to be overriden (https://github.com/ansible/ansible/pull/41907)
- pause - ensure ctrl+c interrupt works in all cases (https://github.com/ansible/ansible/issues/35372)
- powershell - use the tmpdir set by ``remote_tmp`` for become/async tasks instead of the generic $env:TEMP - https://github.com/ansible/ansible/pull/40210
- selinux - correct check mode behavior to report same changes as normal mode (https://github.com/ansible/ansible/pull/40721)
- spwd - With python 3.6 spwd.getspnam returns PermissionError instead of KeyError if user does not have privileges (https://github.com/ansible/ansible/issues/39472)
- synchronize - Ensure the local connection created by synchronize uses _remote_is_local=True, which causes ActionBase to build a local tmpdir (https://github.com/ansible/ansible/pull/40833)
- template - Fix for encoding issues when a template path contains non-ascii characters and using the template path in ansible_managed (https://github.com/ansible/ansible/issues/27262)
- template action plugin - fix the encoding of filenames to avoid tracebacks on Python2 when characters that are not present in the user's locale are present. (https://github.com/ansible/ansible/pull/39424)
- user - only change the expiration time when necessary (https://github.com/ansible/ansible/issues/13235)
- uses correct conn info for reset_connection https://github.com/ansible/ansible/issues/27520
- win_environment - Fix for issue where the environment value was deleted when a null value or empty string was set - https://github.com/ansible/ansible/issues/40450
- win_file - fix issue where special chars like [ and ] were not being handled correctly https://github.com/ansible/ansible/pull/37901
- win_get_url - fixed a few bugs around authentication and force no when using an FTP URL
- win_iis_webapppool - redirect some module output to null so Ansible can read the output JSON https://github.com/ansible/ansible/issues/40874
- win_template - fix when specifying the dest option as a directory with and without the trailing slash https://github.com/ansible/ansible/issues/39886
- win_updates - Added the ability to run on a scheduled task for older hosts so async starts working again - https://github.com/ansible/ansible/issues/38364
- win_updates - Fix logic when using a whitelist for multiple updates
- win_updates - Fix typo that hid the download error when a download failed
- win_updates - Fixed issue where running win_updates on async fails without any error
- windows become - Show better error messages when the become process fails
- winrm - Add better error handling when the kinit process fails
- winrm - allow ``ansible_user`` or ``ansible_winrm_user`` to override ``ansible_ssh_user`` when both are defined in an inventory - https://github.com/ansible/ansible/issues/39844
- winrm - ensure pexpect is set to not echo the input on a failure and have a manual sanity check afterwards https://github.com/ansible/ansible/issues/41865
- winrm connection plugin - Fix exception messages sometimes raising a traceback when the winrm connection plugin encounters an unrecoverable error. https://github.com/ansible/ansible/pull/39333
- xenserver_facts - ensure module works with newer versions of XenServer (https://github.com/ansible/ansible/pull/35821)
New Plugins
-----------
Callback
~~~~~~~~
- cgroup_memory_recap - Profiles maximum memory usage of tasks and full execution using cgroups
- grafana_annotations - send ansible events as annotations on charts to grafana over http api.
- sumologic - Sends task result events to Sumologic
Connection
~~~~~~~~~~
- httpapi - Use httpapi to run command on network appliances
Inventory
~~~~~~~~~
- foreman - foreman inventory source
- gcp_compute - Google Cloud Compute Engine inventory source
- generator - Uses Jinja2 to construct hosts and groups from patterns
- nmap - Uses nmap to find hosts to target
Lookup
~~~~~~
- onepassword - fetch field values from 1Password
- onepassword_raw - fetch raw json data from 1Password
New Modules
-----------
Cloud
~~~~~
amazon
^^^^^^
- aws_caller_facts - Get facts about the user and account being used to make AWS calls.
- aws_config_aggregation_authorization - Manage cross-account AWS Config authorizations
- aws_config_aggregator - Manage AWS Config aggregations across multiple accounts
- aws_config_delivery_channel - Manage AWS Config delivery channels
- aws_config_recorder - Manage AWS Config Recorders
- aws_config_rule - Manage AWS Config resources
- aws_glue_connection - Manage an AWS Glue connection
- aws_glue_job - Manage an AWS Glue job
- aws_inspector_target - Create, Update and Delete Amazon Inspector Assessment Targets
- aws_ses_identity_policy - Manages SES sending authorization policies
- aws_sgw_facts - Fetch AWS Storage Gateway facts
- ec2_eip_facts - List EC2 EIP details
- ec2_vpc_vpn_facts - Gather facts about VPN Connections in AWS.
- elb_network_lb - Manage a Network Load Balancer
- rds_instance_facts - obtain facts about one or more RDS instances
- rds_snapshot_facts - obtain facts about one or more RDS snapshots
azure
^^^^^
- azure_rm_aks - Manage a managed Azure Container Service (AKS) Instance.
- azure_rm_aks_facts - Get Azure Kubernetes Service facts.
- azure_rm_resource - Create any Azure resource.
- azure_rm_resource_facts - Generic facts of Azure resources.
cloudstack
^^^^^^^^^^
- cs_role_permission - Manages role permissions on Apache CloudStack based clouds.
digital_ocean
^^^^^^^^^^^^^
- digital_ocean_account_facts - Gather facts about DigitalOcean User account
- digital_ocean_certificate_facts - Gather facts about DigitalOcean certificates
- digital_ocean_domain_facts - Gather facts about DigitalOcean Domains
- digital_ocean_image_facts - Gather facts about DigitalOcean images
- digital_ocean_load_balancer_facts - Gather facts about DigitalOcean load balancers
- digital_ocean_region_facts - Gather facts about DigitalOcean regions
- digital_ocean_size_facts - Gather facts about DigitalOcean Droplet sizes
- digital_ocean_snapshot_facts - Gather facts about DigitalOcean Snapshot
- digital_ocean_tag_facts - Gather facts about DigitalOcean tags
- digital_ocean_volume_facts - Gather facts about DigitalOcean volumes
google
^^^^^^
- gcp_compute_address - Creates a GCP Address
- gcp_compute_backend_bucket - Creates a GCP BackendBucket
- gcp_compute_backend_service - Creates a GCP BackendService
- gcp_compute_disk - Creates a GCP Disk
- gcp_compute_firewall - Creates a GCP Firewall
- gcp_compute_forwarding_rule - Creates a GCP ForwardingRule
- gcp_compute_global_address - Creates a GCP GlobalAddress
- gcp_compute_global_forwarding_rule - Creates a GCP GlobalForwardingRule
- gcp_compute_health_check - Creates a GCP HealthCheck
- gcp_compute_http_health_check - Creates a GCP HttpHealthCheck
- gcp_compute_https_health_check - Creates a GCP HttpsHealthCheck
- gcp_compute_image - Creates a GCP Image
- gcp_compute_instance - Creates a GCP Instance
- gcp_compute_instance_group - Creates a GCP InstanceGroup
- gcp_compute_instance_group_manager - Creates a GCP InstanceGroupManager
- gcp_compute_instance_template - Creates a GCP InstanceTemplate
- gcp_compute_network - Creates a GCP Network
- gcp_compute_route - Creates a GCP Route
- gcp_compute_ssl_certificate - Creates a GCP SslCertificate
- gcp_compute_subnetwork - Creates a GCP Subnetwork
- gcp_compute_target_http_proxy - Creates a GCP TargetHttpProxy
- gcp_compute_target_https_proxy - Creates a GCP TargetHttpsProxy
- gcp_compute_target_pool - Creates a GCP TargetPool
- gcp_compute_target_ssl_proxy - Creates a GCP TargetSslProxy
- gcp_compute_target_tcp_proxy - Creates a GCP TargetTcpProxy
- gcp_compute_url_map - Creates a GCP UrlMap
- gcp_container_cluster - Creates a GCP Cluster
- gcp_container_node_pool - Creates a GCP NodePool
- gcp_dns_resource_record_set - Creates a GCP ResourceRecordSet
- gcp_pubsub_subscription - Creates a GCP Subscription
- gcp_pubsub_topic - Creates a GCP Topic
- gcp_storage_bucket - Creates a GCP Bucket
- gcp_storage_bucket_access_control - Creates a GCP BucketAccessControl
heroku
^^^^^^
- heroku_collaborator - Add or delete app collaborators on Heroku
memset
^^^^^^
- memset_dns_reload - Request reload of Memset's DNS infrastructure,
- memset_zone - Creates and deletes Memset DNS zones.
- memset_zone_domain - Create and delete domains in Memset DNS zones.
- memset_zone_record - Create and delete records in Memset DNS zones.
misc
^^^^
- cloud_init_data_facts - Retrieve facts of cloud-init.
opennebula
^^^^^^^^^^
- one_host - Manages OpenNebula Hosts
- one_image - Manages OpenNebula images
- one_image_facts - Gather facts about OpenNebula images
- one_service - Deploy and manage OpenNebula services
- one_vm - Creates or terminates OpenNebula instances
openstack
^^^^^^^^^
- os_server_metadata - Add/Update/Delete Metadata in Compute Instances from OpenStack
- os_volume_snapshot - Create/Delete Cinder Volume Snapshots
scaleway
^^^^^^^^
- scaleway_compute - Scaleway compute management module
- scaleway_sshkey - Scaleway SSH keys management module
vmware
^^^^^^
- vmware_cluster_facts - Gather facts about clusters available in given vCenter
- vmware_datastore_cluster - Manage VMware vSphere datastore clusters
- vmware_datastore_maintenancemode - Place a datastore into maintenance mode
- vmware_guest_disk_facts - Gather facts about disks of given virtual machine
- vmware_guest_snapshot_facts - Gather facts about virtual machine's snapshots in vCenter
- vmware_host_capability_facts - Gathers facts about an ESXi host's capability information
- vmware_host_powerstate - Manages power states of host systems in vCenter
- vmware_local_user_facts - Gather facts about users on the given ESXi host
- vmware_portgroup_facts - Gathers facts about an ESXi host's portgroup configuration
- vmware_resource_pool_facts - Gathers facts about resource pool information
- vmware_tag - Manage VMware tags
- vmware_tag_facts - Manage VMware tag facts
- vmware_vswitch_facts - Gathers facts about an ESXi host's vswitch configurations
Clustering
~~~~~~~~~~
k8s
^^^
- k8s - Manage Kubernetes (K8s) objects
Commands
~~~~~~~~
- psexec - Runs commands on a remote Windows host based on the PsExec model
Monitoring
~~~~~~~~~~
- spectrum_device - Creates/deletes devices in CA Spectrum.
zabbix
^^^^^^
- zabbix_group_facts - Gather facts about Zabbix hostgroup
Net Tools
~~~~~~~~~
ldap
^^^^
- ldap_passwd - Set passwords in LDAP.
Network
~~~~~~~
aci
^^^
- aci_l3out - Manage Layer 3 Outside (L3Out) objects (l3ext:Out)
avi
^^^
- avi_autoscalelaunchconfig - Module for setup of AutoScaleLaunchConfig Avi RESTful Object
- avi_l4policyset - Module for setup of L4PolicySet Avi RESTful Object
- avi_useraccount - Avi UserAccount Module
cnos
^^^^
- cnos_command - Run arbitrary commands on Lenovo CNOS devices
- cnos_config - Manage Lenovo CNOS configuration sections
exos
^^^^
- exos_command - Run commands on remote devices running Extreme EXOS
f5
^^
- bigip_data_group - Manage data groups on a BIG-IP
- bigip_device_license - Manage license installation and activation on BIG-IP devices
- bigip_gtm_global - Manages global GTM settings
- bigip_gtm_monitor_bigip - Manages F5 BIG-IP GTM BIG-IP monitors
- bigip_gtm_monitor_external - Manages external GTM monitors on a BIG-IP
- bigip_gtm_monitor_firepass - Manages F5 BIG-IP GTM FirePass monitors
- bigip_gtm_monitor_http - Manages F5 BIG-IP GTM http monitors
- bigip_gtm_monitor_https - Manages F5 BIG-IP GTM https monitors
- bigip_gtm_monitor_tcp - Manages F5 BIG-IP GTM tcp monitors
- bigip_gtm_monitor_tcp_half_open - Manages F5 BIG-IP GTM tcp half-open monitors
- bigip_gtm_pool_member - Manage GTM pool member settings
- bigip_gtm_virtual_server - Manages F5 BIG-IP GTM virtual servers
- bigip_log_destination - Manages log destinations on a BIG-IP.
- bigip_log_publisher - Manages log publishers on a BIG-IP
- bigip_management_route - Manage system management routes on a BIG-IP
- bigip_monitor_external - Manages external LTM monitors on a BIG-IP
- bigip_profile_dns - Manage DNS profiles on a BIG-IP
- bigip_profile_tcp - Manage TCP profiles on a BIG-IP
- bigip_profile_udp - Manage UDP profiles on a BIG-IP
- bigip_service_policy - Manages service policies on a BIG-IP.
- bigip_smtp - Manages SMTP settings on the BIG-IP
- bigip_snmp_community - Manages SNMP communities on a BIG-IP.
- bigip_timer_policy - Manage timer policies on a BIG-IP
- bigip_trunk - Manage trunks on a BIG-IP
- bigiq_application_fasthttp - Manages BIG-IQ FastHTTP applications
- bigiq_application_fastl4_tcp - Manages BIG-IQ FastL4 TCP applications
- bigiq_application_fastl4_udp - Manages BIG-IQ FastL4 UDP applications
- bigiq_application_http - Manages BIG-IQ HTTP applications
- bigiq_application_https_offload - Manages BIG-IQ HTTPS offload applications
- bigiq_application_https_waf - Manages BIG-IQ HTTPS WAF applications
- bigiq_regkey_license_assignment - Manage regkey license assignment on BIG-IPs from a BIG-IQ.
- bigiq_utility_license - Manage utility licenses on a BIG-IQ
files
^^^^^
- net_get - Copy a file from a network device to Ansible Controller
- net_put - Copy a file from Ansible Controller to a network device
fortios
^^^^^^^
- fortios_webfilter - Configure webfilter capabilities of FortiGate and FortiOS.
meraki
^^^^^^
- meraki_admin - Manage administrators in the Meraki cloud
- meraki_network - Manage networks in the Meraki cloud
- meraki_organization - Manage organizations in the Meraki cloud
- meraki_snmp - Manage organizations in the Meraki cloud
netconf
^^^^^^^
- netconf_get - Fetch configuration/state data from NETCONF enabled network devices.
- netconf_rpc - Execute operations on NETCONF enabled network devices.
slxos
^^^^^
- slxos_command - Run commands on remote devices running Extreme Networks SLX-OS
- slxos_config - Manage Extreme Networks SLX-OS configuration sections
- slxos_facts - Collect facts from devices running Extreme SLX-OS
- slxos_interface - Manage Interfaces on Extreme SLX-OS network devices
- slxos_l2_interface - Manage Layer-2 interface on Extreme Networks SLXOS devices.
- slxos_l3_interface - Manage L3 interfaces on Extreme Networks SLXOS network devices.
- slxos_linkagg - Manage link aggregation groups on Extreme Networks SLXOS network devices
- slxos_vlan - Manage VLANs on Extreme Networks SLX-OS network devices
Packaging
~~~~~~~~~
language
^^^^^^^^
- yarn - Manage node.js packages with Yarn
os
^^
- flatpak - Manage flatpaks
- flatpak_remote - Manage flatpak repository remotes
Source Control
~~~~~~~~~~~~~~
- gitlab_deploy_key - Manages GitLab project deploy keys.
- gitlab_hooks - Manages GitLab project hooks.
Storage
~~~~~~~
glusterfs
^^^^^^^^^
- gluster_peer - Attach/Detach peers to/from the cluster
netapp
^^^^^^
- na_ontap_aggregate - Manage NetApp ONTAP aggregates.
- na_ontap_broadcast_domain - Manage NetApp ONTAP broadcast domains.
- na_ontap_broadcast_domain_ports - Manage NetApp Ontap broadcast domain ports
- na_ontap_cifs - Manage NetApp cifs-share
- na_ontap_cifs_acl - Manage NetApp cifs-share-access-control
- na_ontap_cifs_server - cifs server configuration
- na_ontap_cluster - Create/Join ONTAP cluster. Apply license to cluster
- na_ontap_cluster_ha - Manage HA status for cluster
- na_ontap_export_policy - Manage NetApp ONTAP export-policy
- na_ontap_export_policy_rule - Manage ONTAP Export rules
- na_ontap_igroup - ONTAP iSCSI igroup configuration
- na_ontap_interface - ONTAP LIF configuration
- na_ontap_iscsi - Manage NetApp Ontap iscsi service
- na_ontap_job_schedule - Manage NetApp Ontap Job Schedule
- na_ontap_license - Manage NetApp ONTAP protocol and feature licenses
- na_ontap_lun - Manage NetApp Ontap luns
- na_ontap_lun_map - Manage NetApp Ontap lun maps
- na_ontap_net_ifgrp - Create, modify, destroy the network interface group
- na_ontap_net_port - Manage NetApp Ontap network ports.
- na_ontap_net_routes - Manage NetApp Ontap network routes
- na_ontap_net_vlan - Manage NetApp Ontap network vlan
- na_ontap_nfs - Manage Ontap NFS status
- na_ontap_ntp - Create/Delete/modify_version ONTAP NTP server
- na_ontap_qtree - Manage qtrees
- na_ontap_service_processor_network - Manage NetApp Ontap service processor network
- na_ontap_snapshot - Manage NetApp Sanpshots
- na_ontap_snmp - Manage NetApp SNMP community
- na_ontap_svm - Manage NetApp Ontap svm
- na_ontap_ucadapter - ONTAP UC adapter configuration
- na_ontap_user - useradmin configuration and management
- na_ontap_user_role - useradmin configuration and management
- na_ontap_volume - Manage NetApp ONTAP volumes.
- na_ontap_volume_clone - Manage NetApp Ontap volume clones.
purestorage
^^^^^^^^^^^
- purefa_ds - Configure FlashArray Directory Service
- purefa_facts - Collect facts from Pure Storage FlashArray
- purefa_pgsnap - Manage protection group snapshots on Pure Storage FlashArrays
- purefb_fs - Manage filesystemon Pure Storage FlashBlade`
- purefb_snap - Manage filesystem snapshots on Pure Storage FlashBlades
System
~~~~~~
- sysvinit - Manage SysV services.
Web Infrastructure
~~~~~~~~~~~~~~~~~~
- acme_account - Create, modify or delete accounts with Let's Encrypt
Windows
~~~~~~~
- win_domain_computer - Manage computers in Active Directory
- win_hostname - Manages local Windows computer name.
- win_pester - Run Pester tests on Windows hosts

13
changelogs/config.yaml Normal file
View File

@ -0,0 +1,13 @@
---
release_tag_re: '(v(?:[\d.ab\-]|rc)+)'
pre_release_tag_re: '(?P<pre_release>(?:[ab]|rc)+\d*)$'
notesdir: fragments
prelude_section_name: release_summary
new_plugins_after_name: removed_features
sections:
- ['major_changes', 'Major Changes']
- ['minor_changes', 'Minor Changes']
- ['deprecated_features', 'Deprecated Features']
- ['removed_features', 'Removed Features (previously deprecated)']
- ['bugfixes', 'Bugfixes']
- ['known_issues', 'Known Issues']

View File

@ -0,0 +1,2 @@
bugfixes:
- fixes docker_container compatibilty with docker-py < 2.2

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-doc - fixed traceback on missing plugins (https://github.com/ansible/ansible/pull/41167)

View File

@ -0,0 +1,2 @@
bugfixes:
- fix apt-mark on debian6 (https://github.com/ansible/ansible/pull/41530)

View File

@ -0,0 +1,2 @@
bugfixes:
- plugins/inventory/openstack.py - Do not create group with empty name if region is not set

View File

@ -0,0 +1,2 @@
bugfixes:
- win_updates - fixed module return value is lost in error in some cases (https://github.com/ansible/ansible/pull/42647)

View File

@ -0,0 +1,4 @@
bugfixes:
- "sysvinit module: handle values of optional parameters (https://github.com/ansible/ansible/pull/42786).
Don't disable service when `enabled` parameter isn't set.
Fix command when `arguments` parameter isn't set."

View File

@ -0,0 +1,2 @@
bugfixes:
- VMware handle pnic in proxyswitch (https://github.com/ansible/ansible/pull/42996)

View File

@ -0,0 +1,4 @@
---
bugfixes:
- Changed the admin_users config option to not include "admin" by default as
admin is frequently used for a non-privileged account (https://github.com/ansible/ansible/pull/41164)

View File

@ -0,0 +1,2 @@
removed_features:
- "removed the deprecated always_run task option, please use ``check_mode: no`` instead"

View File

@ -0,0 +1,5 @@
---
bugfixes:
- template - Fix for encoding issues when a template path contains non-ascii
characters and using the template path in ansible_managed
(https://github.com/ansible/ansible/issues/27262)

View File

@ -0,0 +1,2 @@
bugfixes:
- '**Security Fix** - avoid loading host/group vars from cwd when not specifying a playbook or playbook base dir'

View File

@ -0,0 +1,3 @@
---
bugfixes:
- fix async for the aws_s3 module by adding async support to the action plugin (https://github.com/ansible/ansible/pull/40826)

View File

@ -0,0 +1,3 @@
---
bugfixes:
- fix decrypting vault files for the aws_s3 module (https://github.com/ansible/ansible/pull/39634)

View File

@ -0,0 +1,3 @@
---
bugfixes:
- allow custom endpoints to be used in the aws_s3 module (https://github.com/ansible/ansible/pull/36832)

View File

@ -0,0 +1,5 @@
---
bugfixes:
- fix permission handling to try to download a file even if the user does not have permission to list all objects in the bucket
- fix BotoCoreError exception handling
- fix errors with S3-compatible APIs if they cannot use ACLs for buckets or objects

View File

@ -0,0 +1,2 @@
minor_changes:
- The aws_ses_identity module supports check mode

View File

@ -0,0 +1,3 @@
minor_changes:
- azure_rm_loadbalancer - add support for sku
- azure_rm_publicipaddress - add support for sku

View File

@ -0,0 +1,5 @@
---
bugfixes:
- fix azure security group cannot add rules when purge_rule set to false. (https://github.com/ansible/ansible/pull/43699)
- fix azure_rm_deployment collect tags from existing Resource Group. (https://github.com/ansible/ansible/pull/26104)
- fix azure_rm_loadbalancer_facts list takes at least 2 arguments. (https://github.com/ansible/ansible/pull/29050)

View File

@ -0,0 +1,3 @@
minor_changes:
- Added an ``encoding`` option to the ``b64encode`` and ``b64decode`` filters
to specify the encoding of the string that is base64 encoded.

View File

@ -0,0 +1,3 @@
---
minor_changes:
- Restore module_utils.basic.BOOLEANS variable for backwards compatibility with the module API in older ansible releases.

View File

@ -0,0 +1,2 @@
bugfixes:
- Fix an atomic_move error that is 'true', but misleading. Now we show all 3 files involved and clarify what happened.

View File

@ -0,0 +1,4 @@
---
minor_changes:
- command module - Added argv option to allow command to be specified as a list vs. a string
(https://github.com/ansible/ansible/issues/19392)

View File

@ -0,0 +1,2 @@
bugfixes:
- openssl_certificate - Convert valid_date to bytes for conversion

View File

@ -0,0 +1,4 @@
---
bugfixes:
- copy - fixed copy to only follow symlinks for files in the non-recursive case
- file - fixed the default follow behaviour of file to be true

View File

@ -0,0 +1,5 @@
---
bugfixes:
- copy module - The copy module was attempting to change the mode of files for
remote_src=True even if mode was not set as a parameter. This failed on
filesystems which do not have permission bits (https://github.com/ansible/ansible/pull/40099)

View File

@ -0,0 +1,3 @@
---
bugfixes:
- copy module - fixed recursive copy with relative paths (https://github.com/ansible/ansible/pull/40166)

View File

@ -0,0 +1,2 @@
bugfixes:
- correct debug display for all cases https://github.com/ansible/ansible/pull/41331

View File

@ -0,0 +1,3 @@
---
bugfixes:
- Fix added for Digital Ocean Volumes API change causing Ansible to recieve an unexpected value in the response. (https://github.com/ansible/ansible/pull/41431)

View File

@ -0,0 +1,2 @@
bugfixes:
- remove dupes from var precedence

View File

@ -0,0 +1,2 @@
bugfixes:
- fix nmap config example https://github.com/ansible/ansible/pull/42925

View File

@ -0,0 +1,3 @@
---
bugfixes:
- fix default SSL version for docker modules https://github.com/ansible/ansible/issues/42897

View File

@ -0,0 +1,3 @@
---
bugfixes:
- cast the device_mapping volume size to an int in the ec2_ami module (https://github.com/ansible/ansible/pull/40938)

View File

@ -0,0 +1,2 @@
bugfixes:
- emtpy host/group name is an error https://github.com/ansible/ansible/issues/42044

View File

@ -0,0 +1,3 @@
---
bugfixes:
- Fix an encoding issue when parsing the examples from a plugins' documentation

View File

@ -0,0 +1,2 @@
bugfixes:
- remove ambiguity when it comes to 'the source'

View File

@ -0,0 +1,2 @@
bugfixes:
- Fix eos_l2_interface eapi (https://github.com/ansible/ansible/pull/42270).

View File

@ -0,0 +1,4 @@
---
bugfixes:
- Changed the output to "text" for "show vrf" command as default "json" output format
with respect to "eapi" transport was failing (https://github.com/ansible/ansible/pull/41470)

View File

@ -0,0 +1,8 @@
---
bugfixes:
- file module - The file module allowed the user to specify src as a parameter
when state was not link or hard. This is documented as only applying to
state=link or state=hard but in previous Ansible, this could have an effect
in rare cornercases. For instance, "ansible -m file -a 'state=directory
path=/tmp src=/var/lib'" would create /tmp/lib. This has been disabled and
a warning emitted (will change to an error in Ansible-2.10).

View File

@ -0,0 +1,5 @@
---
bugfixes:
- file module - Fix error when running a task which assures a symlink to
a nonexistent file exists for the second and subsequent times
(https://github.com/ansible/ansible/issues/39558)

View File

@ -0,0 +1,5 @@
---
bugfixes:
- file module - Fix error when recursively assigning permissions and
a symlink to a nonexistent file is present in the directory tree
(https://github.com/ansible/ansible/issues/39456)

View File

@ -0,0 +1,5 @@
---
bugfixes:
- file module - Eliminate an error if we're asked to remove a file but
something removes it while we are processing the request
(https://github.com/ansible/ansible/pull/39466)

View File

@ -0,0 +1,5 @@
---
bugfixes:
- file module - The touch subcommand had its diff output broken during the
2.6.x development cycle. The patch to fix that broke check mode.
This is now fixed (https://github.com/ansible/ansible/issues/42111)

View File

@ -0,0 +1,4 @@
---
bugfixes:
- file module - The touch subcommand had its diff output broken during the
2.6.x development cycle. This is now fixed (https://github.com/ansible/ansible/issues/41755)

View File

@ -0,0 +1,5 @@
---
bugfixes:
- fix for the bundled selectors module (used in the ssh and local connection
plugins) when a syscall is restarted after being interrupted by a signal
(https://github.com/ansible/ansible/issues/41630)

View File

@ -0,0 +1,4 @@
---
bugfixes:
- Fix the mount module's handling of swap entries in fstab
(https://github.com/ansible/ansible/pull/42837)

View File

@ -0,0 +1,9 @@
---
bugfixes:
- The fix for `CVE-2018-10875 <https://access.redhat.com/security/cve/cve-2018-10875>`_
prints out a warning message about skipping a config file from a world
writable current working directory. However, if the user explicitly
specifies that the config file should be used via the ANSIBLE_CONFIG
environment variable then Ansible would honor that but still print out the
warning message. This has been fixed so that Ansible honors the user's
explicit wishes and does not print a warning message in that circumstance.

View File

@ -0,0 +1,2 @@
bugfixes:
- fixed config required handling, specifically for _terms in lookups https://github.com/ansible/ansible/pull/41740

View File

@ -0,0 +1,2 @@
bugfixes:
- restores filtering out conflicting facts https://github.com/ansible/ansible/issues/41684

View File

@ -0,0 +1,3 @@
---
bugfixes:
- ios_vlan - fix unable to identify correct vlans issue (https://github.com/ansible/ansible/pull/42247)

View File

@ -0,0 +1,2 @@
bugfixes:
- allow set_options to be called multiple times https://github.com/ansible/ansible/pull/41913

View File

@ -0,0 +1,3 @@
---
bugfixes:
- Allow more than one page of results by using the right pagination indicator ('NextMarker' instead of 'NextToken').

View File

@ -0,0 +1,2 @@
bugfixes:
- password lookup - Do not load password lookup in network filters, allowing the password lookup to be overriden (https://github.com/ansible/ansible/pull/41907)

View File

@ -0,0 +1,2 @@
bugfixes:
- fix typoe in sysvinit that breaks update.rc-d detection https://github.com/ansible/ansible/issues/42734

View File

@ -0,0 +1,2 @@
bugfixes:
- fix mail module when using starttls https://github.com/ansible/ansible/issues/42338

View File

@ -0,0 +1,2 @@
bugfixes:
- correctly handle yaml inventory files when entries are null dicts https://github.com/ansible/ansible/issues/41692

View File

@ -0,0 +1,3 @@
---
bugfixes:
- gce_net - Fix sorting of allowed ports (https://github.com/ansible/ansible/pull/41567)

View File

@ -0,0 +1,2 @@
minor_changes:
- gem - add ability to specify a custom directory for installing gems (https://github.com/ansible/ansible/pull/38195)

View File

@ -0,0 +1,2 @@
bugfixes:
- get_url - fix the bug that get_url does not change mode when checksum matches (https://github.com/ansible/ansible/issues/29614)

View File

@ -0,0 +1,4 @@
---
bugfixes:
- Various grafana_* modules - Port away from the deprecated b64encodestring
function to the b64encode function instead. https://github.com/ansible/ansible/pull/38388

View File

@ -0,0 +1,2 @@
bugfixes:
- group_by - support implicit localhost (https://github.com/ansible/ansible/pull/41860)

View File

@ -0,0 +1,16 @@
---
minor_changes:
- import/include - Cache task_vars to speed up IncludedFile.process_include_results (https://github.com/ansible/ansible/pull/39026)
bugfixes:
- dynamic includes - Don't treat undefined vars for conditional includes as truthy (https://github.com/ansible/ansible/pull/39377)
- import/include - Ensure role handlers have the proper parent, allowing for correct attribute inheritance (https://github.com/ansible/ansible/pull/39426)
- include_role/import_role - Use the computed role name for include_role/import_role so to diffentiate between names computed from host vars (https://github.com/ansible/ansible/pull/39516)
- import_playbook - Pass vars applied to import_playbook into parsing of the playbook as they may be needed to parse the imported plays (https://github.com/ansible/ansible/pull/39521)
- include_role/import_role - Don't overwrite included role handlers with play handlers on parse (https://github.com/ansible/ansible/pull/39563)
- dynamic includes - Improved performance by fixing re-parenting on copy (https://github.com/ansible/ansible/pull/38747)
- dynamic includes - Fix IncludedFile comparison for free strategy (https://github.com/ansible/ansible/pull/37083)
- dynamic includes - Allow inheriting attributes from static parents (https://github.com/ansible/ansible/pull/38827)
- include_role/import_role - improved performance and recursion depth (https://github.com/ansible/ansible/pull/36470)
- include_role/import_role - Fix parameter templating (https://github.com/ansible/ansible/pull/36372)
- dynamic includes - Use the copied and merged task for calculating task vars (https://github.com/ansible/ansible/pull/39762)

View File

@ -0,0 +1,2 @@
bugfixes:
- inventory - When using an inventory directory, ensure extension comparison uses text types (https://github.com/ansible/ansible/pull/42475)

View File

@ -0,0 +1,5 @@
---
bugfixes:
- inventory manager - This fixes required options being populated before the
inventory config file is read, so the required options may be set in the
config file.

View File

@ -0,0 +1,4 @@
---
bugfixes:
- To fix the NoneType error raised in ios_l2_interface when Access Mode VLAN is unassigned
(https://github.com/ansible/ansible/pull/42312)

View File

@ -0,0 +1,5 @@
---
bugfixes:
- Fix iosxr_config module to handle route-policy, community-set, prefix-set,
as-path-set and rd-set blocks. All these blocks are part of route-policy
language of iosxr.

View File

@ -0,0 +1,2 @@
bugfixes:
- Fix junos_config confirm commit timeout issue (https://github.com/ansible/ansible/pull/41527)

View File

@ -0,0 +1,2 @@
bugfixes:
- Fix fetching old style facts in junos_facts module (https://github.com/ansible/ansible/pull/42351)

View File

@ -0,0 +1,2 @@
minor_changes:
- lineinfile - add warning when using an empty regexp (https://github.com/ansible/ansible/issues/29443)

View File

@ -0,0 +1,2 @@
bugfixes:
- lineinfile - fix insertbefore when used with BOF to not insert duplicate lines (https://github.com/ansible/ansible/issues/38219)

View File

@ -0,0 +1,4 @@
---
bugfixes:
- Fix lxd module to be idempotent when the given configuration for the lxd
container has not changed (https://github.com/ansible/ansible/pull/38166)

View File

@ -0,0 +1,2 @@
bugfixes:
- added missing 'raise' to exception definition https://github.com/ansible/ansible/pull/41690

View File

@ -0,0 +1,5 @@
---
bugfixes:
- Implement mode=preserve for the template module
- Fix mode=preserve with remote_src=True for the copy module
- Document mode=preserve for both the copy and template module

View File

@ -0,0 +1,2 @@
bugfixes:
- nicer error when multiprocessing breaks https://github.com/ansible/ansible/issues/43090

Some files were not shown because too many files have changed in this diff Show More