Compare commits

..

693 Commits

Author SHA1 Message Date
9e3ccd64b6 New release v2.9.6 2020-03-04 18:23:12 -08:00
77be6d1b8d mysql_db: partial revert of backport #66998 2020-03-03 19:15:41 -08:00
6703ffd21d [stable-2.9] win_unzip - LiteralPath fix (#66972)
* win_unzip - LiteralPath fix

* Fix up Python sanity issues
(cherry picked from commit 2a9ec8975f)

Co-authored-by: Jordan Borean <jborean93@gmail.com>
2020-03-03 18:51:43 -08:00
8377f03eb2 Increase unit test timeouts. 2020-03-03 16:41:17 -08:00
1f2758af20 ansible-galaxy - fix role list bug (#67391) (#67619)
Properly list roles even when the role name is the same or a substring of the
path to the role.

(cherry picked from commit c64202a495)
2020-03-02 17:24:48 -08:00
7f90fde5b3 Bugfix of 65525: proxysql in check_config TypeError: tuple indices must be integers, not str (#66850) (#67334)
(cherry picked from commit a86524b2bb)
2020-03-02 17:22:35 -08:00
7051a7ff92 Fix eos_vlans docs (#67335)
wording in examples changed ios to eos (#66131)

wrong module was used in examples: should be eos_vlans not ios_vlans

(cherry picked from commit 506e2da0ff)

Add changelog for eos_vlans docs fix

Co-authored-by: qoreQyaS <github@gucke.net>
2020-03-02 17:22:21 -08:00
ed30858f50 Backport PR to fix the bug where IOS vlans module throws traceback (#67336)
* To fix the bug where IOS vlans module throws traceback (#64633)

* fix 64515

* add fix

(cherry picked from commit c5a2ba5217)

* changelog
2020-03-02 17:22:10 -08:00
49cb05d992 Fix creating IP specific firewall rules with Python 2 (#67394) 2020-03-02 17:21:40 -08:00
47fc7ab97d galaxy - Fix collection install dep resolver for bad versions (#67405) (#67413)
* Also make sure version is a string and not an int/float

(cherry picked from commit 4881af2e7e)
2020-03-02 17:21:17 -08:00
3d91f759c0 Backport/2.9/57737 ec2_asg unhandled exception (#67431)
* cope with an ASG instance not having a launch config any more (#57737)

* add changelog

Co-authored-by: Andrew de Quincey <adq@lidskialf.net>
2020-03-02 17:20:46 -08:00
1b65ecc71a azure_rm_rg_info: fix KeyError: 'ansible_facts' (#66729) (#67479)
* azure_rm_rg_info: fix KeyError: 'ansible_facts' (#66729)

* azure_rm_rg_info: fix KeyError: 'ansible_facts'

Fix facts for using old azure_rm_resourcegroup_facts, closes #66727

* fix intendation

(cherry picked from commit 569f0cf808)

* azure_rm_rg_info: add changelog fragment
2020-03-02 17:20:14 -08:00
587f241dbf Remove a host from a play after meta: end_host (#66851) (#67480)
* Remove a host from a play after meta: end_host

* Fix changelog

(cherry picked from commit a2c620819f)
2020-03-02 17:19:49 -08:00
ee9c5df0f0 vultr: Fix retry max delay param ignored (#67437) (#67513)
* vultr: Fix retry max delay param not taken

* add changelog

(cherry picked from commit bcd145c111)
2020-03-02 17:19:29 -08:00
f8aaa7dcd2 [2.9] VMware: vmware_export_ovf module fix Python3 compatibility issue (#67514)
(cherry picked from commit 023a9b3166)

Co-authored-by: Diane Wang <41371902+Tomorrow9@users.noreply.github.com>
2020-03-02 17:19:16 -08:00
e64b120bff openssl_* modules: prevent crash on fingerprint determination in FIPS mode (#67515) (#67519)
* openssl_* modules: prevent crash on fingerprint determination in FIPS mode.

* Add changelog.

(cherry picked from commit ca57871954)
2020-03-02 17:18:53 -08:00
e40e05576b [2.9] Fix links in Postgresql modules (#67525)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 70b9bdbce6)
2020-03-02 17:18:39 -08:00
9351cbfde3 Fixi iscsi register backport (#67542)
* Fix KeyError for iSCSI parameters (#67463)

The required parameters for the LUN mapping for destination LUN is
address, port and iqn. However if the user doesn't pass parameters
like  CHAP authentication parameters, we will get KeyError. The patch
fixes the same.

* add changelog

Co-authored-by: Nijin Ashok <nashok@redhat.com>
2020-03-02 17:18:12 -08:00
151d83efc3 win_credential - fix wildcard name (#67549) (#67552)
(cherry picked from commit d7059881a2)
2020-03-02 17:17:58 -08:00
f243b39ef3 [stable-2.9] Do not error if collection specified null dependencies (#67575) (#67618)
(cherry picked from commit cffead4631)

Co-authored-by: Alan Rominger <arominge@redhat.com>

Co-authored-by: Alan Rominger <arominge@redhat.com>
2020-03-02 17:17:40 -08:00
ad4cad43ad Ovirt vm numa backport (#67700)
* ovirt_vm: correct numa nodes (#67611)

* init commit

* update docs

* update numa function name

* correct whitespaces

* add backport
2020-03-02 17:17:15 -08:00
a0c3d890c3 [stable-2.9] Allow SSH synchronization between Docker containers (#65698) (#67713)
* [stable-2.9] Allow SSH synchronization between Docker containers
(cherry picked from commit 1c15a485c2)

Co-authored-by: Nabil BENDAFI <nabil@bendafi.fr>

* Add changelog

(cherry picked from commit 854925b072)

Co-authored-by: Nabil BENDAFI <nabilbendafi@users.noreply.github.com>
2020-03-02 17:16:58 -08:00
18377e6390 [2.9] Allow nxos_l2_interfaces to append the allowed vlans list (#67703)
* Added Fix - Allow nxos_l2_interfaces to append the allowed vlans list (#66517)

* Added Integration tests

* Corrected lint errors

* Added fix for bug # 54400

* Revert "Added fix for bug # 54400"

This reverts commit bf42db4269.

* Revert "Adding files for RM static_routes"

This reverts commit dafdd92d43.

* Revert "Added Integration tests"

This reverts commit 129dc87682.

* Bug Fix 65332

* Added testcase for #66517

* Removed unnecessary commit

* fixing conflicts

* fixing conflicts

* addressed mikeweibe's comments

* Corrected lint errors

* Added idempotent tc for add vlans

* Added replaced and overridded tcs for trunk vlan add

(cherry picked from commit 4ac89b8ac7)

* backport to PR #66517
2020-03-02 17:16:23 -08:00
c3dbd69a1b [Backport/2.9/66098]: Fix duplicate log entries (#67719)
* Fix duplicate log entries (and add item support for failures) (#66098)


(cherry picked from commit 936bd83614)

* Backport + changelog for #66098
2020-03-02 17:15:58 -08:00
449626feb5 [2.9] hostname: Use hostnamectl for Systemd strategy (#67721)
Use hostnamectl command to get current hostname for host while using
systemd strategy.

Fixes: #67661

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 53aa258d78)
2020-03-02 17:15:36 -08:00
9c17410f58 strip spaces for each value in host list lists (#67701) (#67740)
(cherry picked from commit 9ea5bb3364)
2020-03-02 17:15:10 -08:00
afb389e588 Fix inline vaults for plugins in ensure_type (#67492) (#67741)
* Fix implicit string - only looked right because of the vault __repr__
* Add tests for strings and implicit strings

(cherry picked from commit 8eb00dd14c)
2020-03-02 17:14:42 -08:00
e379dc76c3 Run Powershell modules on windows container via docker connection (#67832) (#67872)
* Run modules on windows container

This provides an ability to run Powershell modules on windows container via docker connection. Otherwise, Ansible tries to run python modules on windows containers and fails.

* Removing whitespace in the blank lines

* Adding a changelog fragment

(cherry picked from commit e0eee3c37e)

Co-authored-by: Ruheena Ansari <ruheena0105@tamu.edu>
2020-03-02 17:14:13 -08:00
3fb4d109ce acme_* modules: adjust documentation to reference RFCs 8737 and 8738 instead of the drafts (#67881) (#67882)
* Adjust documentation to reference RFCs 8737 and 8738 instead of the drafts.

* More references.

(cherry picked from commit 35fd86c6bc)
2020-03-02 17:13:37 -08:00
ff3d3b59e2 Remove redundant check for pyopenssl (#67901) (#67903)
(cherry picked from commit 44d8ce9b31)

Co-authored-by: gp <gp+github@gparent.net>
2020-03-02 17:13:07 -08:00
6e7383807a Ovirt vm deprecated backport (#67923)
* ovirt_vm: remove deprecated warning (#67922)

* ovirt_vm: remove deprecated warning of boot params

* update docs

* add changelog
2020-03-02 17:12:47 -08:00
2376f20bd9 line indentation issue in postgresql_set (#67859)
Fixed indentation issue with the `register` for the example task in postgresql_set module.
(cherry picked from commit b437167671)
2020-03-02 16:31:00 -08:00
1e8bebb20b Bump min openstacksdk version for os_network/{port_security_enabled,mtu}
To make use of the port_security_enabled [a] and mtu [b] parameters,
[c] and [d] need to be present in the openstacksdk or the os_network
module with return an error like:

TypeError: create_network() got an unexpected keyword argument 'port_security_enabled'

or:

TypeError: create_network() got an unexpected keyword argument 'mtu'

To handle this, we fail the module if one of the arguments are used
and the minimum openstacksdk version for that argument is not met.

[a] eaf238b033
[b] c6a8e99d34
[c] 8eb788af07
[d] a1fc820a2f

Backport-of: https://review.opendev.org/708119
Fixes: https://github.com/ansible/ansible/issues/62062
Change-Id: I2b80dc721a08bbdb530af3705ae99cf1b579d9f0
2020-03-02 15:54:22 -08:00
f90c7411e8 Bugfix of 65351: mysql_db create dump with CREATE DATABASE and USE instruction 2020-03-02 15:25:14 -08:00
cddecf8c05 Backport/2.9/60508 (#67531)
* route53: improve octal encoded characters handling

* Update changelogs/fragments/60508-route53-improve-octal-characters-handling.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-03-02 14:52:19 -08:00
a24dcf232c docker_login: fix permissions for ~/.docker/config.json (#67353)
* Fix permissions for ~/.docker/config.json.

* Add changelog, remove debug output.

(cherry picked from commit 55cb8c5388)
2020-03-02 14:41:03 -08:00
6fc2ae7476 [stable-2.9] Clean up CONDITIONAL_BARE_VARS warning. Fixes #67735 (#67751).
(cherry picked from commit 6e1a59174a)

Co-authored-by: Matt Martz <matt@sivel.net>
2020-03-02 14:31:55 -08:00
0f7d62f6a5 ansible-galaxy - optimise some paths and use fake galaxy int tests (#67685) - 2.9 (#67874)
* ansible-galaxy - optimise some paths and use fake galaxy int tests (#67685)

* ansible-galaxy - optimise some paths and use fake galaxy int tests

* Added init, built, and publish tests

* Test against both mocked Galaxy and AH server

* Finish off writing the install tests

* Fix up broken tests

* Rename test target and add migrated tests

* Use cloud provider for Galaxy implementation

* Added blank static config

* Use correct alias group

* Set release version and fix copy typo

* Remove reset step as it is no longer needed

* Use sane env var names for test container name

(cherry picked from commit 26129fcb80)

* Use --api-key and not --token

* Set fallaxy tests as a smoketest

(cherry picked from commit b241c021b7)
2020-03-02 14:26:27 -08:00
b38603c45e Templating: make sure only one variable results are cached (#67429)
* Make sure only one variable results are cached.

* Add changelog.

* Add test.

(cherry picked from commit c520d70bf4)
2020-03-02 14:20:42 -08:00
48bfa3e906 Fix to - eos_vlans using state parameter replaced is giving odd behavior (#67346)
* backport PR 67318

* added changelog file

* Added missing fixture file
2020-03-02 14:17:56 -08:00
7cac554222 Add collection support for network platform agnostic modules (#66342)
*  Refactor net_base action plugin to invoke platform
   action plugin with implementation module name updated
   in the new task copy.

(cherry picked from commit 0d85ab1fe3)
2020-03-02 14:00:55 -08:00
eb01926b43 Backport PR #67339 - Fix proxysql module cursor_class (#67471)
* Fix merge conflicts

* remove db_conn  as mysql_utils was not backported from devel

* fix indentation for sanity check
2020-03-02 13:54:52 -08:00
9c1794ebfd remove unused import 2020-03-02 13:51:34 -08:00
39cfb63be6 Allow no_log=False to silence the no_log warnings for module parameters (#64733) (#67439)
As AnsibleModule._log_invocation is currently implemented, any parameter
with a name that matches PASSWORD_MATCH triggers the no_log warning as a
precaution against parameters that may contain sensitive data, but have not
been marked as sensitive by the module author.

This patch would allow module authors to explicitly mark the aforementioned
parameters as not sensitive thereby bypassing an erroneous warning message,
while still catching parameters which have not been marked at all by the
author.

Adds tests for various no_log states including True, False, and None (as
extracted by AnsibleModule._log_invocation) when applied to an argument with
a name that matches PASSWORD_MATCH.

Fixes: #49465 #64656
(cherry picked from commit 3ca4580cb4)
2020-02-24 16:54:29 -06:00
1bab4c99f3 Backport of 67645 docs/docsite/rst/: fix typos (#67649) 2020-02-24 16:51:23 -06:00
4cc4d77c4b [2.9] Backport /docs/docsite/rst: fix typos (#67650)
* user_guide/intro_adhoc.rst: fix typo (#67644)

(cherry picked from commit 05a3192eb7)

* dev_guide/developing_modules_best_practices.rst: fix typo (#67639)

(cherry picked from commit 244277addd)

* /docs/docsite/rst/dev_guide: fix typos (#67643)

(cherry picked from commit 907c98ebcd)
2020-02-24 16:49:40 -06:00
c6a29ed7d2 [stable-2.9] Update example requirements file docs (#67626) (#67714)
Use "name" when possible rather than "src" to make the examples
of roles and collections in a single requirements files more
coherenant. Fundamentally, roles and collections are completely different.
But we can make the requiremets file easier to read by unifying the
format as much as possible.
(cherry picked from commit 6c70959131)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-02-24 16:48:36 -06:00
0da817b827 postgresql_info module: fix broken link (#67517) (#67521)
(cherry picked from commit 5a7c58b2be)
2020-02-18 09:48:24 -06:00
e047c8c70e ovirt_disk: correct description of storage_domain (#67454) (#67518)
* ovirt_disk: correct description of storage_domain
* add changelog

Signed-off-by: mnecas <necas.marty@gmail.com>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-02-18 09:43:10 -06:00
80e5ed0bba Specify lowercase only for Galaxy namespaces (#67485) (#67503)
* specify lowercase only for galaxy namespaces
* doh... include meta file

(cherry picked from commit a60feeb3c1)
2020-02-17 17:39:59 -06:00
79ad190f71 [backport][2.9]Add note that devel branch should not be used in real environments (#… (#67494)
* Add note that devel branch should not be used in real environments (#67483)

(cherry picked from commit 39fef58bea)
2020-02-17 15:12:45 -06:00
9895e18e24 Clarify b64encode with Python 2 (#67488) (#67491)
(cherry picked from commit 423a900791)
2020-02-17 15:12:18 -06:00
a95c76855d Fix broken links in crypto, docker and hetzner modules. (#67360) (#67363)
(cherry picked from commit 11e75b0af2)
2020-02-17 10:47:48 -06:00
227f498314 stable-2.9: Restore Tower integration tests. (#67395)
* Move tower_common tests with tower_organization.

(cherry picked from commit c92697acec)

* Test: Bump TOWER_VERSION to supported version (#67378)

* Revert "Remove Tower module tests from CI. (#67368)"

This reverts commit b041d96762.

* Test: Bump TOWER_VERSION to 3.6.2

(cherry picked from commit b9bd2c25ca)

Co-authored-by: Yanis Guenane <yguenane@gmail.com>
2020-02-13 16:22:24 -08:00
8fc3dfca32 Update Ansible release version to v2.9.5.post0. 2020-02-13 13:17:47 -08:00
9388be4269 New release v2.9.5 2020-02-13 08:30:05 -08:00
6f95e9629b [stable-2.9] Remove Tower module tests from CI. (#67368) (#67371)
* [stable-2.9] Remove Tower module tests from CI. (#67368)

* Remove Tower module tests from CI.

The required AMIs are no longer available.

* Mark Tower tests as unsupported..
(cherry picked from commit b041d96762)

Co-authored-by: Matt Clay <mclay@redhat.com>

* Mark tower_common unsupported.
2020-02-12 22:13:39 -08:00
aeade1412f Docs: improve anchors vs. header bar (#67244) (#67317)
(cherry picked from commit fd43619f1a)
2020-02-11 15:00:56 -06:00
b49d1d9810 Backport ovirt disk docs (#67301)
* ovirt_disk: update interface docs (#67272)
* add changelog
2020-02-11 09:51:14 -06:00
04994e8dfb [stable-2.9] ansible-test - add constraint for virtualenv (#67289)
* ansible-test - add constraint for virtualenv

* Limit virtualenv only on macOS.

Co-authored-by: Matt Clay <matt@mystile.com>
(cherry picked from commit 8f296a6533)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-02-10 18:01:51 -08:00
1dafd80eab fix changelog entry failing rstcheck 2020-02-10 18:01:26 -08:00
54ca524da3 nxos_interfaces: RMB state fixes (#63960) (#67173)
* nxos_interfaces: RMB state fixes

* shippable fixes

* Add add'l comments per review

* fix long line

* Fix mode/enabled system defaults handling

* fix N3L test skips

* lint

* test updates for titanium images

* doc fix

(cherry picked from commit d72025be75)

Add changelog for nxos_interfaces fix

Co-authored-by: Chris Van Heuveln <cvanheuv@cisco.com>
2020-02-10 15:35:49 -08:00
c956f9cffe fix systemd use in container builds (#66062) (#67140)
* systemd: unify "systemctl show" failure cases

* systemd: is-enabled to detect configured state

* systemd: is-enabled to detect masked status

(cherry picked from commit b868f1c933)
2020-02-10 15:33:22 -08:00
aa64519072 wait_for_connection: also retry interpreter discovery (#67040) (#67136)
self._discovered_interpreter_key is None unless a previous iteration
has attempted discovery.  In that case, force re-discovery, as the
previous attempt certainly failed.

(cherry picked from commit fd954a9c5c)
2020-02-10 15:32:31 -08:00
7b03b581dc Make nios_txt_record use text field for object lookup (#67120)
Up until now, nios_txt_record assumed that the name and view
parameters uniquely described a TXT record. What this meant is that it
was impossible to have more than one TXT record with a certain name.

Changes in this commit expands the set of parameters that uniquely
identify the TXT record with a text field.
2020-02-10 15:31:19 -08:00
569218f0cd Fix removed_in_version to support honor suboptions (#66918) (#67104)
* Add unit tests.
* Fix reporting for removed_in_version.
* Add changelog.

(cherry picked from commit fe454d27a1)
2020-02-10 15:30:37 -08:00
f330286734 [Backport/2.9/66604] Fix powershell path_join for UNC path handling (#67073)
* Update to use os.ntpath

(cherry picked from commit 1522820612)

* Add changelog for #66604

(cherry picked from commit 40761c73b6)
2020-02-10 15:29:36 -08:00
42cae0a801 openssl_publickey: forgot to pass backend (#67036) (#67039)
* Forgot to pass backend.

* Add changelog.

* Pass on backend from get_fingerprint.

* Handle cryptography backend in get_fingerprint.

(cherry picked from commit a0e5e2e4c5)
2020-02-10 15:28:52 -08:00
5ca28963e5 Backport of 66806: mysql_variables not supporting variables name with dot (#67007) 2020-02-10 15:27:55 -08:00
287ea7d319 Fix user_agent string not getting set (#67001)
(cherry picked from commit cb9e24fbd2)
2020-02-10 15:26:39 -08:00
c529c86c1e Backport of 66995: mysql_user doesnt support privileges with underscore (#66998) 2020-02-10 15:24:12 -08:00
5d406cffca Bump minimum openstacksdk version when using os_network/dns_domain (#66952)
With the addition of [a], the minimum openstacksdk version needs to
be bumped to include [b], or the os_network module will return the
error:

TypeError: create_network() got an unexpected keyword argument 'dns_domain'

To handle this, we fail the module if the dns_domain argument is used
and the minimum openstacksdk version for that argument is not met.

[a] 6c74e29618
[b] a3e846e2b9

Fixes: #64495
Fixes: #64841
2020-02-10 15:23:38 -08:00
31e348409f [stable-2.9] nxos_facts: Don't fail if faninfo isn't reported (#66866) (#66949)
(cherry picked from commit bf65e7a)

Co-authored-by: Nathaniel Case <ncase@redhat.com>
2020-02-10 15:21:59 -08:00
69ba90098a When no pool quantity is set, then do not set quantity to 1 (#66807) (#66933)
* Fixes #66478
* When no quantity is set, then candlepin server usually uses
  default value 1. When more quantities are required, then
  candlepin server can automatically choose correct minimal
  value.

(cherry picked from commit 6f1bb37feb)
2020-02-10 15:21:16 -08:00
f54263c459 Backport/2.9/55220 (#66757)
* Working Cisco IOS macro editing (fixes #55211) (#55220)

* Working Cisco IOS macro editing (fixes #55211)

* Working Cisco IOS macro editing [fixed pylints] (fixes #55211)

* Added integration tests for edit_macro

* Added conditional integration tests for ios_config macro

* Cosmetic fix: when near block for added conditional integration tests for ios_config macro

* Move teardown to always for block

(cherry picked from commit 4a0c875447)

* changelog

Co-authored-by: Albert Siersema <albert@mediacaster.nl>
2020-02-10 15:19:57 -08:00
77985f2beb galaxy: fix AttributeError on empty requirements.yml (#66726) (#66752)
* galaxy: fix AttributeError on empty requirements.yml

* add changelog

(cherry picked from commit 9e8fb5b7f5)
2020-02-10 15:18:37 -08:00
f8c4a38ffe Backport PR to fix the duplication of IPV6 address with replace state in ios_l3_interfaces module (#66680)
* fix 66530 (#66654)


(cherry picked from commit 0c4f167b82)

* changelog

* Update 66654-fix-ipv6-duplication-for-replace-state-ios-l3-interfaces.yaml

Co-authored-by: Matt Davis <nitzmahone@users.noreply.github.com>
2020-02-10 15:17:58 -08:00
481327ec37 group - correctly determine if a local group exists. (#59772) (#67176)
Fixes #58619
Add integration test

(cherry picked from commit 80c4b86abe)
2020-02-10 15:16:15 -08:00
0ed22d1fbc add info on creating doc fragments in a collection (#67171) (#67279)
* add info on creating doc fragments in a collection
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>

(cherry picked from commit 4dd2513371)
2020-02-10 15:14:46 -08:00
361d7c677f Fix DNF idempotency. (#66209) (#66578)
(cherry picked from commit a7e4479d01)
2020-02-10 14:27:31 -08:00
99c96bbf42 [2.9] gitlab_project_variable: Remove sensitive information (#66559)
Redact GitLab Project variables which might include sensetive information
such as password, api_keys and other project related details.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 84b68aa05f)
2020-02-10 14:25:29 -08:00
6f0f2c9d68 [stable-2.9]add one note to help ansible user to understand the requirements to (#65969) (#66493)
execute iosxr_command module

Signed-off-by: Peng Xiao <xiaoquwl@gmail.com>
(cherry picked from commit 69f9c3c8eb)
2020-02-10 14:24:56 -08:00
a764f332f9 Declare support for Python 3.8 @ Trove classifiers (#66514)
(cherry picked from commit ee290bf5b1)

Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
2020-02-10 14:23:21 -08:00
57fbb0e571 Backports/2.9/67188 aws_az_info: Fix rename deprecaction warning (#67208)
* aws_az_info: Fix rename deprecaction warning (#67188)

* Add changelog
2020-02-10 14:22:43 -08:00
a9c3bfa96c Backport PR #66219 to support the backport of PR #64733 (#67209)
* Update user module to support no_log=False. (#66219)

Updates the user module to support pull request #64733. Neither the
update_password or password_lock field contains sensitive information, so
mark them as such.

(cherry picked from commit 40394ed671)

* Backport PR #66219 to support PR #64733

Backport PR #66219 to support the backport of PR #64733
(see: https://github.com/ansible/ansible/pull/66219).

* Delete backport-66219-update-user-module-for-64733.yml

* Update 66219-update-user-module-for-64733.yml

Co-authored-by: Matt Davis <nitzmahone@users.noreply.github.com>
2020-02-10 14:21:45 -08:00
7ace25dd6d Backport of pmrun.py: Recreate the older behavior where the entire success command was quoted (#67241)
* pmrun - quote success command (#66929)

* Recreate the older behavior where the entire success command was quoted

* Use shlex_quote for a correct fix of this

* Add changelog fragment

(cherry picked from commit fd8eb77cc3)

* Backport of 66929-pmrun-quote-entire-success-command-string

* Update changelog fragment

* Delete 66929-pmrun-quote-entire-success-command-string.yml

Unclear from docs, but this is the devel fragment so removing.

* Update changelog
2020-02-10 14:20:14 -08:00
182831d8b0 Make banner detection non-greedy in ios_banner (#63092) (#66274)
* Make banner detection non-greedy in ios_banner (#63092)

* Make banner detection non-greedy in ios_banner

* Added ios_banner unit test to detect bug #63091

* Corrected PEP8 errors

* Added integration test

* Corrected typo in integration test

(cherry picked from commit 01a92f0191)

* Added changelog fragment

* Update 66274-ios_banner_nongreedy.yml

Co-authored-by: kalimsshar <34369784+kalimsshar@users.noreply.github.com>
Co-authored-by: Matt Davis <nitzmahone@users.noreply.github.com>
2020-02-10 14:15:40 -08:00
b390f808d9 Link the testing documentation to the module documenting page (#67248) (#67288) 2020-02-10 14:15:20 -08:00
93e66c1362 Backport ovirt job (#67076)
* ovirt_job: add when job is detected but in state finished (#66810)

* ovirt_job: add when job is detected but in state finished

* add docs

* add changelog
2020-02-10 14:14:56 -08:00
045fc371eb win_uri: fix up tests (#67064) (#67066)
(cherry picked from commit 3ada0b2f65)
2020-02-10 14:14:28 -08:00
b9a2466e76 docker_container and docker_swarm_service: allow to actually disable healthcheck of image (#66599) (#67056)
* Allow to actually disable healthcheck of image.

* Add changelog.

(cherry picked from commit 5c1a3a3ac2)
2020-02-10 14:14:13 -08:00
e42c007753 Fix pacman: "IndexError: list index out of range" #63077 (#65750) (#67011)
* Fix #63077

If the package is already installed the stdout is not as expected by this function. Either remove `--needed` or just noop if we detect pacman returning. We cannot match the stdout string, as that is most likely localized.

```
[root@archBook user]# /usr/bin/pacman --upgrade --noconfirm --noprogressbar --needed  /srv/aur/src/i3cat-git/i3cat-git-r38.c6d29dd-1-x86_64.pkg.tar.xz
loading packages...
warning: i3cat-git-r38.c6d29dd-1 is up to date -- skipping
 there is nothing to do
```

* Add comment

Add comment

* Add changelog fragment.

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 14b1febf64)

Co-authored-by: Klaus Frank <agowa338@users.noreply.github.com>
2020-02-10 14:13:51 -08:00
a2b5af86dd [stable-2.9] include_vars - fix stack trace when run ad-hoc with dirs parameter (#66581) (#66910)
Add integration test

There are a number of other parameters that result in stack traces as well when this module is used ad-hoc. I'm not sure if we're interested in fixing them all since this module isn't meant to be run ad-hoc.
(cherry picked from commit cc2376b782)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-02-10 14:13:22 -08:00
aaadf71438 [stable-2.9] tests: ipify_facts: retry on fail (#66897) (#66903)
(cherry picked from commit 91063f40d6)

Co-authored-by: Rene Moser <mail@renemoser.net>

Co-authored-by: René Moser <mail@renemoser.net>
2020-02-10 14:12:54 -08:00
becf3fbf97 Ovirt add search with space (#66890)
* ovirt search name with space (#59184)

* init ovirt_search_name_with_space

* add search_by_name with whitespace

* add comments

* add changelog
2020-02-10 14:12:28 -08:00
587ed81d16 Backport ovirt network correct (#66886)
* ovirt_network: correct when not specified external_provider (#66859)

* add backport
2020-02-10 14:11:53 -08:00
783daf9d1b throttle: fix linear based strategies (#65422) (#66805)
* throttle tests: fix detection of parallel execution

The test wasn't able to detect if too many workers were running.

On my laptop:
- without this change, the 'throttle' target takes ~20 seconds
- with this change, the 'throttle' target takes ~70 seconds
- 1 second isn't long enough to encounter the issue

* Fix throttle test when strategy is 'free' based

'free' strategy allows multiple tasks to be executed in parallel: use
one 'throttledir' per task.

Use 'linear' strategy with a dedicated play for cleanup/setup tasks

* throttle: reset worker idx before queuing a new task

* TestStrategyBase: define task.throttle

otherwise '1' will be used instead of the default value due to the
following expression being equal to '1':

    int(templar.template(task_mock.throttle))

Co-authored-by: James Cammarata <jimi@sngx.net>
(cherry picked from commit bbbdc1c25c)
2020-02-10 14:11:17 -08:00
6df09ae41e pamd: Fix AttributeError when removing the first or last rule (#66398) (#66776)
(cherry picked from commit a4b59d0213)
2020-02-10 14:10:48 -08:00
474e6b1094 Backport 2.9: nxos_telemetry - Fix fact gathering for sensor-groups (#66677)
* Fix fact gathering for sensor-groups (#66439)

(cherry picked from commit 5c158755fc)

Add changelog for nxos_telemetry fix

* Update 66439_fix_nxos_telemetry_facts.yaml

Co-authored-by: Mike Wiebe <mwiebe@cisco.com>
Co-authored-by: Matt Davis <nitzmahone@users.noreply.github.com>
2020-02-10 14:10:29 -08:00
0952dad9e2 [stable-2.9] jenkins_job module: fix for python3 (#66642)
* jenkins_job module: fix for python3 (#54958)

* jenkins_job module: add changelog fragment
2020-02-10 14:10:12 -08:00
0731fff994 [stable-2.9] Reinstall i18n files for PostgreSQL tests (#66734) (#66769)
I am removing these from the test image to reduce its size a bit.
(cherry picked from commit 9df9ed4cd3)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-02-10 14:09:32 -08:00
13023455e1 [stable-2.9] display - remove extra new line after warning message (#65199) (#66768)
Add unit tests for display
(cherry picked from commit 8e195adda5)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-02-10 14:09:11 -08:00
3245b3dff2 [stable-2.9] synchronize - fix password authentication (#66542) (#66661)
On Python 2, leave all fds open since there is no mechanism to close specific fds with subprocess.Popen() on Python 2

Add unit tests.

Co-authored-by: Matt Martz <matt@sivel.net>
(cherry picked from commit 617fbad743)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-02-10 14:08:16 -08:00
6120cd18e2 [stable-2.9] podman - fix rootless container copy no pause (#66583) (#66588)
Fixes #66263

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit 077a8b4898)

Co-authored-by: Adam Miller <admiller@redhat.com>

Co-authored-by: Adam Miller <admiller@redhat.com>
2020-02-10 14:07:26 -08:00
c4f1e04bef [stable-2.9] file - change _diff_peek type in argument_spec (#60428) (#66587)
* Add integration tests
* Handle error in _get_diff_data()
* Change to warning rather than error
* Also change failure to warning in assemble action plugin
(cherry picked from commit 9b7198d25e)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-02-10 14:07:07 -08:00
3284262a60 Use UTF-8 without a BOM for win coverage (#66510) (#66513)
(cherry picked from commit e459eac565)
2020-02-10 14:06:39 -08:00
04d5325c3f Document network resource modules (#66226) (#67053)
* add network resource module details to docs

(cherry picked from commit 3e35d2d63ce17fb694e645785ad855f01420f7d8)

* network resource module page, with example output

(cherry picked from commit 2ad6055efd)
2020-02-05 10:35:59 -06:00
05df06fe4d Add anchor to each parameter row (#66895) (#67057)
* Add anchor to each paramater row
* Update docs/templates/plugin.rst.j2
* Insert full keys into plugin docs.
* Added visible links.

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 5b93a14a0f)

Co-authored-by: Dick Visser <dick.visser@geant.org>
2020-02-05 10:35:17 -06:00
c8610efa24 Network prompts (#66584) (#67054)
* add network prompt examples and module examples

* Update docs/docsite/rst/network/user_guide/network_working_with_command_output.rst

Co-Authored-By: Nathaniel Case <this.is@nathanielca.se>
(cherry picked from commit 68ab8c23be)
2020-02-05 10:28:44 -06:00
aff77f7b02 win_mapped_drive - Add WebDAV information (#67111) (#67112)
(cherry picked from commit f23cee2145)
2020-02-05 10:22:03 -06:00
a8657de818 Ovirt add docs ova backport (#66653)
* ovirt_vm: add docs about importing ova (#66652)

Signed-off-by: mnecas <necas.marty@gmail.com>
2020-02-05 09:58:09 -06:00
1e7434c49d Adding network plugin changes for netconf and network_cli (#65708) (#67049)
* Adding network plugin changes for netconf and network_cli

(cherry picked from commit b349ec8fcf)
2020-02-04 12:20:13 -06:00
a8b71747ae [stable-2.9] Add constraints for Jinja2 on Python 2.6. (#66826)
* Add constraint for Jinja2 on Python 2.6.

* Fix constraint in inventory_aws_conformance test.

* Add constrraints for template_jinja2_latest test.
(cherry picked from commit 965854fbd2)

Co-authored-by: Matt Clay <matt@mystile.com>
2020-01-27 15:18:49 -08:00
29cdd1ccca [stable-2.9] Change package name in docker_setup integration test (#66572)
* Change package name

* Retry to hopefully get a good mirror
(cherry picked from commit f15050b09e)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-01-24 11:31:35 -08:00
26a09160eb Trim down to one Ansible search option (#66284) (#66664)
* move swiftype search to upper left of docsite, fix spacing and length issues for search icon and searchbox

(cherry picked from commit 1a0724fdd4)
2020-01-22 15:42:59 -06:00
af0a72df30 Add a banner which will display on the testing site. (#64763) (#66666)
* Add a banner which will display when the docs are published to the testing site.
Thanks to shane for the javascript code

Co-authored-by: Sandra McCann <samccann@redhat.com>
(cherry picked from commit 365820f871)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2020-01-21 15:58:44 -06:00
c99f753239 Update Ansible release version to v2.9.4.post0. 2020-01-20 14:41:07 -08:00
818c66163e New release v2.9.4 2020-01-20 12:55:02 -08:00
e283c180d1 [stable-2.9] yum - fix bug where enablerepo is not honored when disablerepo all (#66557) (#66640)
Fixes #66549

The inefficiency improvement
https://github.com/ansible/ansible/pull/63713 introduced a bug where
`enablerepo` was not being honored if combined with
`disablerepo="*"`. This fixes that issue.

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit 22fe22f796)

Co-authored-by: Adam Miller <admiller@redhat.com>

Co-authored-by: Adam Miller <admiller@redhat.com>
2020-01-20 12:48:24 -08:00
85f36a3a42 restructure headings and copy-edit shell completion (#66479) (#66536)
* Docs: restructure headings and fix shell completion on installation guide, apply suggestions from code review

(cherry picked from commit 599cc0bdfa)
2020-01-16 10:49:03 -06:00
cfc6e573c5 Update Ansible release version to v2.9.3.post0. 2020-01-15 15:58:49 -08:00
6832d8bf6a New release v2.9.3 2020-01-15 15:25:23 -08:00
a951e007df [stable-2.9] Ignore warnings in ansible-test environment check.
(cherry picked from commit 3db1ac4f56)

Co-authored-by: Matt Clay <matt@mystile.com>
2020-01-14 08:50:47 -08:00
41df8ec8c2 Remove Server 2008 from CI 2020-01-14 00:02:20 -08:00
41ec9a8516 [stable-2.9] Add test constraint for setuptools. (#66426)
* Add test constraint for setuptools.

* Update pip test to work on centos6 container.
(cherry picked from commit 51e5b714e0)

Co-authored-by: Matt Clay <matt@mystile.com>
2020-01-13 13:52:12 -08:00
c94aa6dde6 adjusted doc and argument spec in zabbix modules to match sanity requirements (#66176)
(cherry picked from commit 3456700420)
2020-01-13 13:51:26 -08:00
de0936f9c4 add details on network gather facts improvements (#66220)
* add details on network gather facts improvements, implement feedback

(cherry picked from commit 9922014441)
2020-01-13 13:35:00 -08:00
d97a9a75bd Fix callback set_options issue with collections (#66128)
Fixes: #66127
(cherry picked from commit 7888eafb82)
2020-01-13 11:48:04 -08:00
5dc1d93eac Fix iosxr netconf plugin get device info (#65489)
* Fix iosxr netconf plugin get device info

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

*  Catch execption if the xml payload to get
   device info is not valid for iosxr version
   running on remote host.

* Fix CI issue

(cherry picked from commit 3919a891c2)
2020-01-13 11:39:40 -08:00
2d7819e75d Fix netconf plugin related to collections (#65718)
* Fix netconf plugin related to collections

Fixes #65655 (partly)

*  Make netconf plugins configurable so that the
   information of ncclient device handler
   for give platform resides in the platform
   specific netconf plugin.
*  If the device handler value in ncclient is
   different from the ansible_network_os value
   the right value of `ncclient_device_handler`
   should be set in the plugin documentation.

* Fix review comments

* Fix CI issue

* Fix review comment

(cherry picked from commit 1cfab26fab)
2020-01-13 11:28:51 -08:00
5d16603b2e Test fix (#65132)
(cherry picked from commit 89954e6ef5)
2020-01-10 18:54:07 -08:00
7769cc82d3 fix nxos_hsrp keyerror (#65796)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit cb2a45d286)

Add changelog for nxos_hsrp fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 18:53:53 -08:00
247c73432e Fix nxos_user roles bug (#65962)
(cherry picked from commit c2fed8603c)

Add changelog for nxos_user roles fix
2020-01-10 18:53:34 -08:00
4f3dd5a043 nxos_vlans: fix rmb behaviors and tests (#63650)
* nxos_vlans: fix rmb behaviors and tests

* whitespace fixes

* whitespace fixes 2

* review comments addressed

* TBD for legacy support

* additional tests to hit code coverage misses

* whitespace

(cherry picked from commit 3252665a94)

Add changelog for nxos_vlans fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 18:53:08 -08:00
984e38d829 Temporarily disable vpc peer-link tests (#66121)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 97aefb8e11)
2020-01-10 18:52:36 -08:00
54e0b2aa30 Make autocost bandwidth calculation a floor division for Py3 compatibility (#66095)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 06927eab1f)

Add changelog for nxos_ospf_vrf fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 18:52:18 -08:00
0d3c5c4bac Fix nxos_snmp_community command ordering (#66094)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 4674435367)

Add changelog for nxos_snmp_community fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 18:51:29 -08:00
4a034fdf4e Fix rendering duplicate peer-ip commands (#66088)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 0ebb0ac0fa)

Add changelog for nxos_vxlan_vtep_vni fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 18:51:06 -08:00
53847bd529 Fix nxos_l3_interfaces rendering of dhcp (#66049)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 94e054755f)

Add changelog for nxos_l3_interfaces fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 18:50:46 -08:00
eab972a70e Fix defaulting neighbor password
Add debug (#65909)

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit ae0df67539)

Add changelog for nxos_bgp_neighbor fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 18:50:03 -08:00
1a7500b72a Always cleanup vlan interfaces (#65756)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 7af98f9724)
2020-01-10 18:49:35 -08:00
4de0d4648d Fix nxos_vrf purge breaking with empty aggregate
Fix to nxos_vrf purge breaks with empty aggregate (#66004)

* resolving conflicts

* fixed issue with purge and state var. fixed space issue with vrf name

* lint issues

(cherry picked from commit a3d67edfca)

Add changelog for nxos_vrf fix
2020-01-10 18:49:10 -08:00
13031109aa Bugfix of 65761: postgresql_privs fail after it's updated to 2.9.2 (#65903)
* Bugfix of 65761: postgresql_privs fail after it's updated to 2.9.2

* add changelog

(cherry picked from commit 9b85a51c64)
2020-01-10 18:46:58 -08:00
e6405715c8 Fix network action plugin load in collection (#65849)
* Fix network action plugin load in collection

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

*  Load network action plugin that matches the module
   prefix name from list of collections.

* Update changelog

* Fix unit test

(cherry picked from commit 74e9b1e219)
2020-01-10 18:46:16 -08:00
a45659652d postgresql_schema: use query_params with cursor object (#65679) 2020-01-10 18:40:51 -08:00
508ebf295b backport of ovirt_vm template clone check (#65702)
* backport of ovirt_vm template clone check

* update change log

* update change log 2
2020-01-10 18:40:10 -08:00
73238a5dc0 Fix pacman stdout parsing in the Ansible module (#65238)
pacman output is localized and the Ansible module is parsing its output.
So, we need to force the locale.
Add changelog fragment

Fixes #65237

(cherry picked from commit 10b6038e21)
2020-01-10 18:39:30 -08:00
dd4e7950fc backport of ovirt_network: correct external provider (#66053)
* ovirt_network: correct external provider (#65701)

* ovirt_network: update external provider

* unnecessary remove blank line

* remove update check for external_provider

* first try to import then create

* add changelog
2020-01-10 18:38:49 -08:00
cab0d2d759 [2.9] vmware_deploy_ovf: Use correct datastore in multi-datacenter environment
Fixes: #63920

Need to pass the datacenter to assure we get the correct datastore managed object Id.

(cherry picked from commit dc59880c31)
2020-01-10 18:37:06 -08:00
95b7bc15a0 routeros_command – add support for dot in username (#66293)
* routeros_command – add support for dot in username (#65905)

* chore: changelog
2020-01-10 18:35:43 -08:00
610487df3c yum - only instantiate YumBase once (#63713)
* yum - only instantiate YumBase once

Previously, this code was re-instantiating the `YumBase` object
many times which is unnecessary and slow. However, we must do it
twice in the `state: absent` case because the `yumSack` and
`rpmSack` data of the previously instantiated object becomes
invalid and is no longer useful post transaction when we verify
that the package removal did in fact take place. Also, this patch
removes the repetitive re-processing of enable/disable of repos in
various places.

Here's a display of the speed increase against a RHEL7 host:

```yaml
- hosts: rhel7
  remote_user: root
  tasks:
  - name: Install generic packages
    yum:
      state: present
      name:
        - iptraf-ng
        - screen
        - erlang
  - name: Remove generic packages
    yum:
      state: absent
      name:
        - iptraf-ng
        - screen
        - erlang
```

Before this patch:
```
real    0m52.728s
user    0m5.645s
sys     0m0.482s
```

After this patch:
```
real    0m17.139s
user    0m3.238s
sys     0m0.277s
```

Fixes #63588
Fixes #63551

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

* add changelog

Signed-off-by: Adam Miller <admiller@redhat.com>
2020-01-10 18:33:51 -08:00
13c40c70db Allow updating of ec2_group rules with EC2 classic ELB targets (#62374)
* Allow updating of ec2_group rules with EC2 classic ELB targets

Fix regression introduced in #45296 with EC2 Classic SGs

Fixes: #57247

Also add (unsupported) ec2 classic test suite with test case for this scenario

* move ec2 classic tests to conditional within ec2_group target

* clean up ec2_classic tests

* ec2_classic account can't run most ec2_group tests
2020-01-10 18:33:06 -08:00
e842c9a151 Use a context manager in docker.ImageManager. (#65609)
Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 965474841f)
2020-01-10 18:32:09 -08:00
c3cd510770 terraform workspace list failure warns instead of fails (#65044)
* terraform workspace list failure warns instead of fails

Fixes #64788

* add a changelog fragment

(cherry picked from commit b580f2929d)
2020-01-10 18:30:45 -08:00
06044aa3b8 #58578 support absolute paths additionally (#58812)
* support absolute paths additionally

* add changelog

* rename changelog

* fix changelog to bugfix

(cherry picked from commit e711d01ed1)
2020-01-10 18:30:08 -08:00
09e89d538c [stable-2.9] Add method to automatically clean up after an action plugin (#65509)
* Use correct var, move cleanup for async
* Add changelog and tests. Fixes #65393. Fixes #65277.
* Kill off all long running async tasks from listen_ports_facts
* Update task to work with older jinja2
(cherry picked from commit 03a4edb)

Co-authored-by: Matt Martz <matt@sivel.net>
2020-01-10 18:29:29 -08:00
56c6ebe258 [stable-2.9] Make sorting in collection_loader match plugin loader (#65776)
* Simply sorting of Windows files below other plugin types
    Using the sort method with a custom key function uses less memory than creating multiple lists then joining them.

    This seemed to be an acceptable use of a lamdba, even though I geneally try to avoid them.

* Fix sorting of plugins inside of collections
    Explicitly sort Windows files below others, mimicking what we do in plugin/loader.py

* Add documentation about ansible.builtin and ansible.legacy
    Also document to the two different methods used for searching based on the candidate type.

* Add changelog
* Add integration test
* Update comment with expected sort order
(cherry picked from commit 6f76a48f59)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-01-10 18:28:05 -08:00
43cf40ffe0 [stable-2.9] Don't remove trailing / on galaxy api URLS (#63294)
This causes multiple unneeded http redirects.
Since each http redirect takes a few hundred
milliseconds, handling the redirects starts to
take up a significant amount of wall time.

Fixes: #63281
(cherry picked from commit d1c39b9068)

Co-authored-by: Adrian Likins <alikins@redhat.com>
2020-01-10 18:27:35 -08:00
67302136bf [stable-2.9] Fix 'CyberarkPassword' object has no attribute 'delimiter' (#66268)
This is a very small follow up to PR #59500
(cherry picked from commit 53e405dd42)

Co-authored-by: Marc Hörsken <mback2k@users.noreply.github.com>
2020-01-10 18:27:08 -08:00
44a5b20c67 ansible-galaxy - expand User-Agent string for Galaxy endpoints (#65578)
(cherry picked from commit eaba5572cd)
2020-01-10 18:26:00 -08:00
57b09d0684 win_uri win_get_url - Fix up redirection defaults (#65584)
(cherry picked from commit 9a81f5c3b7)
2020-01-10 18:25:34 -08:00
e577e8f30b display - Fix up tracebacks on 3rd party loggers when log path is set (#65582)
(cherry picked from commit b782227642)
2020-01-10 18:25:04 -08:00
66f089de4b ansible-galaxy ignore empty server_list (#65986)
* ansible-galaxy ignore empty server_list

(cherry picked from commit aba8f12495)
2020-01-10 18:24:27 -08:00
ab441a2784 Make sure warnings are printed during fact gathering (#66258)
(cherry picked from commit d3427bb860)
2020-01-10 18:24:00 -08:00
fd9c7f9acc win_user_right - docs to show how to remove all (#66315)
(cherry picked from commit 93bfa4b07a)
2020-01-10 18:23:41 -08:00
b55f20a3ee [2.9] various elbv2 bugfixes (#65212)
* Add aws elb multiple host header support (#65021)

* Add support for aws elbv2 multiple host header actions

* Add example of multiple host header

* Add test for multiple host headers

* Add missing quote

* Update test/integration/targets/elb_application_lb/tasks/test_modifying_alb_listeners.yml

Co-Authored-By: Jill R <4121322+jillr@users.noreply.github.com>

* Update test/integration/targets/elb_application_lb/tasks/test_modifying_alb_listeners.yml

Co-Authored-By: Jill R <4121322+jillr@users.noreply.github.com>

* Remove debug statements

(cherry picked from commit d52af75c68)

* elbv2 - print() statement results an task failure, even if the task itself was successfull (#65183)

(cherry picked from commit cba9abcbec)

* Add changelog fragment.

* Update changelogs/fragments/65021-65183-elb-bugs.yml

* Force values to be sorted when compared. (#65315)

* Force values to be sorted when compared.

This avoids problems where lists of values could be generated in
indeterminate order.

* Update lib/ansible/module_utils/aws/elbv2.py

Thank you felixfontein, sorry I missed this detail.

Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 777b6d3e30)

* Update changelog.

Co-authored-by: Michael Mayer <mjmayer@gmail.com>
Co-authored-by: Markus Bergholz <markuman@gmail.com>
Co-authored-by: roberbri <roberbri@cisco.com>
2020-01-10 17:53:48 -08:00
a7bb6700c6 [2.9] ec2 Filter dictionary iteration errors on py3.8 (#65705)
* Fix RuntimeError in ec2_group_info (#65434)

Modifying dictionary while iterating over it

* Fix ec2 filter dict iteration for python3.8 (#65521)

Python now throws a RuntimeError if dict keys are modified mid-iteration.
https://bugs.python.org/issue36452
Cast filter dicts to list before iteration.

Fixes: 65024
Related: 65434

* Backport of 65434, 65521 to address ec2 filter dictionary iteration on Py3.8

https://bugs.python.org/issue36452

* spell changelog entry correctly

Co-authored-by: Aaryn <10469251+arin-c@users.noreply.github.com>
2020-01-10 17:40:13 -08:00
3ff86a5cad docker_* modules: fix various errors in argument specs (#65632)
* Fix various errors in docker module argument specs.

* Adjust PR #.

* Fix option name.

* Fix username/password requirements for docker_login.

(cherry picked from commit e9cec0262d)
2020-01-10 17:18:56 -08:00
69070402f0 Fix network_cli become check to be compatible with collections (#65829)
*  The become method name check is not required in network_cli
   as the become command is specific to platform and is implemented
   in the platform specific terminal plugins

(cherry picked from commit ff5253fa0e)
2020-01-10 17:11:24 -08:00
21fad83716 Fix action plugin issue with network connection type in common collec… (#65830)
* Fix action plugin issue with network connection type in common collection (#65078)

* Fix action plugin isse with network connection type in common collection

*  For network connection in common collection the value of
   ansible_connection is the FQCN of the connection type
   For example ansible_connection=network.common.network_cli

*  Add fix in supported network action plugins to extract
   the connection name from FQCN

* Fix CI issue

* Fix review comments and update community network action plugins

(cherry picked from commit 2ef47148cd)

* Fix CI failures
2020-01-10 17:08:21 -08:00
e822ce196c Use dict_diff instead of sets to take diff lag members (#66126)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit cb46e5f06b)

Add nxos_lag_interfaces fix changelog

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2020-01-10 16:46:51 -08:00
992960cfbb Backport of 65791 - postgresql modules: use query parameters with cursor objects (#65864)
* Backport of 65791 - postgresql modules: use query parameters with cursor objects

* remove line from changelog fragment
2020-01-10 16:40:47 -08:00
d1ac4da6a1 crypto modules: fix various errors in argument specs (#65633)
* Fix various errors in crypto module argument specs.

* Adjust PR #.

* Fix provider requirement.

* Make sure openssl binary is installed.

(cherry picked from commit 57c042243f)
2020-01-10 16:36:42 -08:00
d706059006 Backport of 65787 - postgresql_sequence: use query parameters with cursor object 2020-01-10 16:29:40 -08:00
28b3531824 Backport of 64585: Don't return module error when mysql_connect fails (#65596)
* mysql: add changelog fragment for PR 64585 (#65594)

* mysql: add changelog fragment for PR 64585

* change fragment name and bug description

(cherry picked from commit 85486b1ce4)

* Don't return module error when mysql_connect fails (#64560) (#64585)

* Don't return module error when mysql_connect fails (#64560)

mysql_user expects an Exception when using check_implicit_admin.

* Adds integration tests for mysql_user check_implicit_admin (#64560)

(cherry picked from commit 47aea84924)

* remove tests

Co-authored-by: Jürgen Hötzel <juergen@hoetzel.info>
2020-01-10 16:15:05 -08:00
4a05724fd7 [stable-2.9] user - compare macOS user properties using same type (#62973)
self._get_user_property returns a string, so when doing a comparison
using this value, cast the second variable to a string so that the
comparison behaves correctly
* Add changelog
* Add to_text import
* Add integration test.
(cherry picked from commit c73288ad53)

Co-authored-by: John Chen <kryptonite303@users.noreply.github.com>
2020-01-10 15:58:20 -08:00
d2c21af3f7 Fixed argument spec for multiple modules (#65496)
This change contains fixes for argument spec and respective datatypes.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 96df2bdcf3)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-01-10 15:53:46 -08:00
636f26f07e Make docker_stack adhere to standard ansible return values (#63467)
* Make docker_stack adhere to standard return values

The names of the various fields returned from ansible modules are e.g defined here https://docs.ansible.com/ansible/latest/reference_appendices/common_return_values.html#msg.

Adhering to this improves usability and makes use of functionality for e.g stdout_lines etc.

* Update lib/ansible/modules/cloud/docker/docker_stack.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Fix under-indentation of continuation line (pep8)

Issue exposed in test here https://app.shippable.com/github/ansible/ansible/runs/146667/1/console

* Don't break old playbooks/roles

Made sure the changes are only adding new variables, not removing anything existing yet.

* Added comment

* Minor fixes

* Update lib/ansible/modules/cloud/docker/docker_stack.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update lib/ansible/modules/cloud/docker/docker_stack.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* minor change to docker_stack.py

* Add changelog fragment for PR 63467

* Format changelog fragment

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Add fragment about docker_stack return val depr

* Add docker_stack doc note about deprecated vals

* Remove whitespace in empty line

* Add docker_stack depr notice to porting guide

* Update changelogs/fragments/63467-docker-stack-return-fix.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update docs/docsite/rst/porting_guides/porting_guide_2.10.rst

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update lib/ansible/modules/cloud/docker/docker_stack.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Added back a missing new line

(cherry picked from commit a5d69f2a26)
2020-01-10 15:49:12 -08:00
b148d06bda Update 64902-fix-allow-duplicates-in-single-role.yml 2020-01-10 15:31:49 -08:00
8538127bdc Ensure allow_duplicates: true enables to run single role multiple times (#64902) (#65063)
* Ensure `allow_duplicates: true` enables to run single role multiple times(#64902)

* Changed return value in `_load_roles` . Fixes #64902

* Add changelog fragment

* Add an integration test for the issue

* Fix changelog generation error and integration test.

* Fix yaml syntax error in changelog fragment

(cherry picked from commit daecbb9bf0)
2020-01-10 15:31:49 -08:00
6586623a75 docker_network: fix multiple subnet (of same IP version) idempotence (#65839)
* Fix multiple subnet (of same IP version) idempotence for docker_network.

* Add changelog.

* Unit tests no longer make sense, since the part of the code they test has been removed.

* Re-add CIDR validation. Move it to better position (module setup instead of idempotence check).

* Update changelog.

* Only run new tests on VM test images.

* Actually do what is documented. Especially since an empty object is a valid value for aux_addresses.

(cherry picked from commit 17ef253ad1)
2020-01-10 15:07:53 -08:00
b5f817ca26 docker_container - #65993 - update restart policy (restart policy & restart retries) wit… (#66192)
* #65993 - update restart policy (restart policy & restart retries) without restarting the container

* - proper indentation on the continuation-line
- set restart_policy to the correct value independent from the api version

* - move restart_policy definitions into the if block
- add a new variable for the restart_policy configuration value

* add changelog fragment

* typo; minus -> underscore

* rename changelog fragment to contain the correct module name

* rename restart_policy_config_value to just restart_policy and refer to the correct dict values

(cherry picked from commit 02c126f5ee)
2020-01-10 15:04:00 -08:00
cd348c123b [2.9] docker_container: wait for removal if removal is in process (#66117)
* docker_container: wait for removal if removal is in process (#65854)

* Allow to inspect containers directly.

* Wait for containers to be removed before recreating them.

* Also wait for containers to be removed before creating them.

* Add changelog.

(cherry picked from commit 4df5bdb11e)

* Don't wait for removal during check mode. (#66145)

(cherry picked from commit 14e32c85b4)
2020-01-10 14:22:44 -08:00
1159193d16 [Backport 2.9] gitlab_runner: fix idempotency for shared runners (#65545)
* gitlab_runner: fix idempotency for shared runners (#65176)


(cherry picked from commit 2eb615f1ef)

* add changelog
2020-01-10 14:15:26 -08:00
b05a2c8a62 dnf: don't return fail_json['msg'] as list (#65302)
Although it's not enforced that fail_json['msg'] should be a string
[1], I think it is pretty strongly implied.

In this case the failure_response['msg'] is sent through as the
fail_json['msg'], and the trailing commas here turn it into a tuple.
It's not clear if this is a typo or intended, but it does cause
problems for callbacks that expect this as a string (e.g. [2]).

Since there seems no point to having these values as a tuple, remove
the trailing commas so they return a string as per everywhere else.

[1] 4c589661c2/lib/ansible/module_utils/basic.py (L2078)
[2] https://review.opendev.org/#/c/696081

(cherry picked from commit fc54ae9227)
2020-01-10 12:19:38 -08:00
e6db6d0d64 [stable-2.9] Handle InternalError raised by cryptography when running in FIPS mode (#65477)
Since older versions of paramiko do not require cryptography,
we cannot catch the exact exception from cryptography.

Remove other exceptions since we're catching everything now
(cherry picked from commit d35c1a435b)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-01-10 11:33:18 -08:00
003e9fdecd [stable-2.9] user - honor update_password parameter on BusyBox hosts (#65977)
The check for this parameter was missing from BusyBox.modify_user(), resulting in unexpected password changes to existing user accounts.
(cherry picked from commit 18130e1419)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-01-10 11:32:03 -08:00
2858983de3 docker_swarm_service: Fix parsing of Healthcheck.StartPeriod (#66151)
* Parse Healthcheck.StartPeriod properly

* Add changelog fragment

* Use proper markup in changelog

Co-Authored-By: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit f31b8e08b2)
2020-01-10 11:30:37 -08:00
1257448636 [2.9] Fix nxos_file_copy option value path validation (#65846)
* Fix nxos_file_copy option value path validation (#65423)

* Fix nxos_file_copy option value path validation

*  Modify `local_file`, `local_file_directory` and
   `remote_file` option type from `str` to `path`
   so that the option value is validated in Ansible
   for a legitimate path value

* Fix review comments

(cherry picked from commit 88008badb1)

* Fix review comments
2020-01-10 11:11:10 -08:00
a1b0f72c98 [2.9] solaris_zone: Allow only valid characters in zone name
CVE-2019-14904 - solaris_zone module accepts zone name and performs actions related to that.
However, there is no user input validation done while performing actions.
A malicious user could provide a crafted zone name which allows executing commands
into the server manipulating the module behaviour.

Adding user input validation as per Solaris Zone documentation fixes this issue.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 7d2ae7e322)
2020-01-10 10:45:12 -08:00
755348d870 [stable-2.9] Add Fedora 31 to the test matrix (#64848)
* Add Fedora 31 to the test matrix

* Remove Fedora 29 from the test matrix
(cherry picked from commit 0e5a83a1cc)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-01-09 13:59:04 -08:00
04ad3fcc89 [stable-2.9] DNF Handle Empty AppStream stream definition (#63819)
* DNF Handle Empty AppStream stream definition

Fixes #63683

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

* Switch Fedora dnf test target modularity to stratis

In Fedora 29, the metadata was not properly set for a default stream
for ripgrep even though there is a profile called "default", however
that's an arbitrary string and the module maintainer must set the
default stream (which it never was for the ripgrep module, thus
failing the "empty stream" install test)

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit ed86907587)

Co-authored-by: Adam Miller <admiller@redhat.com>
2020-01-09 11:22:43 -08:00
312608d960 [stable-2.9] Fix timezone integration test for Fedora 31 (#65013)
(cherry picked from commit 163904fe37)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2020-01-09 11:04:19 -08:00
0e3573640b [stable-2.9] Simplify docker_setup on Fedora.
This avoids installing dnf-plugins-core, which breaks the yum and dnf modules
when uninstalling packages using a wildcard after they have already been removed.

This should resolve issues with the yum integration tests failing after docker tests run.
(cherry picked from commit a5c36eedd8)

Co-authored-by: Matt Clay <matt@mystile.com>
2020-01-08 16:14:13 -08:00
df37d93754 Update indentation used in the code examples, unify empty lines (#65874) (#65886) 2020-01-02 15:49:51 -06:00
0341be2da5 Add notes on docker_network connectivity for containers and services. (#65840) (#65964)
(cherry picked from commit d3b6db3754)
2020-01-02 15:49:25 -06:00
43a9bc96a5 AWS Guidelines: Make 'security_token' optional so that they can be run outside of CI (#66107) (#66136) 2020-01-02 15:25:26 -06:00
5dfaf1dfe8 docker_swarm_service: Fix description of limits.memory (#66078) (#66113)
This option corresponds to the '--limit-memory' option. Also
fix other mentions memory reservation instead of limit.

(cherry picked from commit 30cfa92e90)

Co-authored-by: Pedro Alvarez Piedehierro <palvarez89@gmail.com>
2020-01-02 15:23:57 -06:00
fc89d45385 Update indentation used in the code examples, unify empty lines (#65346) (#65696) 2020-01-02 15:22:03 -06:00
12088b89c3 [stable-2.9] Disable failing azure_rm_storageaccount test.
(cherry picked from commit 342b9953bc)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-12-20 16:21:34 -08:00
652a456e45 [stable-2.9] Fix 'Assert CNAME failure' assertion (#65875)
(cherry picked from commit 14ebceec25)

Co-authored-by: Justin Ossevoort <github@internetionals.nl>
2019-12-20 13:49:08 -08:00
374e3b12f6 [stable-2.9] Add ansible-test constraint to avoid coverage 5.0+
(cherry picked from commit 9ea5b539b6)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-12-20 13:46:49 -08:00
56120d034a Backport/2.9/65145 zabbix modules now require higher version of underlying python module (#65602)
* updated required zabbix-api version for zabbix modules

(cherry picked from commit f48ac0da5d)

* added changelog fragment
2019-12-13 12:32:09 -06:00
6ba26e7556 Clarify how to install roles and collections from same requirements file (#65707) (#65736)
(cherry picked from commit 5eceebcaf3)
2019-12-11 13:02:55 -06:00
58a62da92d update version metadata to get faceted swiftype search running (#65574) (#65579)
* update version metadata to get faceted swiftype search running

(cherry picked from commit 96cbbdd59f)
2019-12-10 14:02:54 -06:00
b087d9ad01 [stable-2.9] Fix and reenable hcloud tests
(cherry picked from commit 5ad61ed7c1)

Co-authored-by: Lukas Kämmerling <lukas.kaemmerling@hetzner-cloud.de>
2019-12-06 10:04:36 -08:00
9ba42a50f3 [stable-2.9] Fix plugin paths for ansible-test pylint test. (#65526)
* Fix plugin paths for ansible-test pylint test.
(cherry picked from commit fb69d68)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-12-04 19:23:06 -08:00
f69ef0b2a8 Update Ansible release version to v2.9.2.post0. 2019-12-04 15:18:50 -08:00
f2285203dc New release v2.9.2 2019-12-04 14:54:51 -08:00
50c25760a0 Fix ansible-galaxy man page generation (#65478) (#65523)
The Action list was misformatted, leading to an error message in the man
page.

https://bugzilla.redhat.com/show_bug.cgi?id=1717110
(cherry picked from commit 9973121f44)
2019-12-04 13:46:47 -08:00
75adf6577c Added required parameter to document DOC-string to produce Documentation. (#65230) (#65518)
* Added required parameter to document DOC-string to produce Documentation.

Signed-off-by: Satyajit Bulage <sbulage@redhat.com>

* Just copy short_description as it was

(cherry picked from commit 770430fd07)
2019-12-04 13:31:10 -08:00
6074b48fd2 [stable-2.9] Disable failing hcloud tests.
(cherry picked from commit 85722c360f)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-12-04 10:43:10 -08:00
d434e3f1a0 Fix legacy facts keys having redundant underscore (#65167) (#65504)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 62c4ff8174)

Add changelog for nxos_facts fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-12-04 09:18:17 -08:00
6012f1ef67 Backport of 65310: postgresql_owner: use query_params with cursor (#65322) 2019-12-04 09:14:09 -08:00
999f91a705 [2.9] Check Point: fix all modules to be able to get parameter with value false (#65110)
* fix all modules to be able to get parameter with value false (very important fix) (#65040)

* add import of future and __metaclass__

* fix all modules to be able to get parameter with value false (very importent fix)

* Update ignore.txt

(cherry picked from commit b1e6667664)

* Update ignore.txt

* Create 65043-enable-parameter-value-to-be-false.yaml

* Update 65043-enable-parameter-value-to-be-false.yaml
2019-12-04 09:12:30 -08:00
f2107695e6 [2.9] pulp_repo: renamed module tls client auth params to avoid overlaping with fetch_url (#65014)
* renamed module tls client auth params to avoid overlaping with fetch_url (#59522)

* renamed module tls client auth parameters to avoid overlaping with ansible fetch_url

* added version_added info for params

* Updated version_added

Updated version_added info from 2.9 to 2.10

* Update pulp_repo.py

removed version_added for renamed params

* Apply suggestions from code review

added ca_cert alias and 'version_added'

Co-Authored-By: Mark Chappell <mchappel@redhat.com>

* Apply suggestions from code review

added old behavior for client_cert and client_key which will deprecate in 2.14

Co-Authored-By: Mark Chappell <mchappel@redhat.com>

* Update pulp_repo.py

fix for linting error ansibot is complaining

* added changelog fragment for 59522

* Apply suggestions from code review

more informative depreciation warning and changelog fragment

Co-Authored-By: Felix Fontein <felix@fontein.de>

* added mention for changes in client_key and client_cert behavior

* fixed too long line (linting)

* deprecated ca_cert alias to have consistent module params in Ansible 2.14

* fixed indentation for deprecation warning

* changed deprecated alias handling to argument_spec

* moved deprecated_aliases insied argument dict, thanks tremble

* suggestions from felixfontein

Move doc info about client_cert and client_key into its own paragraph

Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 1e59017d27)

* 2.10 -> 2.9.2

* * Adjust messages.

* Fix one more.

(cherry picked from commit d1c58bc942)
2019-12-04 09:06:49 -08:00
95ff4372ec [stable-2.9] Do not treat AnsibleUndefined as being unsafe (#65202) (#65427)
* [stable-2.9] Do not treat AnsibleUndefined as being unsafe (#65202)

* Do not treat AnsibleUndefined as being unsafe. Fixes #65198

* fix yaml formatting.
(cherry picked from commit b08e7daf46)

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

* Linting fix

* additional linting fix
2019-12-04 08:59:17 -08:00
612d70ba3c Remove k8s_scale dependency on k8s_raw (#65270)
* Remove k8s_scale dependency on k8s_raw (#59887)

* Remove k8s_scale dependency on k8s_raw

* fix sanity checks

(cherry picked from commit e60cdc310d)

* Add changelog fragment

* Rename 59887-scale-bug to 59887-scale-bug.yml
2019-12-03 20:16:03 -08:00
81a7957929 Backport of 65093, postgresql_lang: use query parameters with cursor.execute() (#65165)
* Backport of 65093, postgresql_lang: use query parameters with cursor.execute()

* fix CI tests
2019-12-03 20:12:21 -08:00
f5fa6ace4a [stable-2.9] Make Docker and Podman play nice (#65009) (#65015)
podman 1.4 now installs docker man pages. Add handler to remove docker packages to avoid test failure due to this conflict.

Adjust inventory_docker_swarm integration test
Add conditional to cleanup handlers to allow use of the setup_docker role without removing packages at the end of the play. The inventory_docker_swarm integration tests does its own cleanup..
(cherry picked from commit 6b2b876d43)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 20:11:09 -08:00
96126c26fb fix module that it reports the correct status of a change (#65098)
* fix module that it reports the correct status of a change

(cherry picked from commit 2028734ac3)

* postgresql_privs - fix sort comparison (#65125)

The result of .sort() is None, not the sorted object. The comparison was comparing the result of the .sort() method and not the sorted values.

(cherry picked from commit 426e37ea92)
2019-12-03 18:11:21 -08:00
87d9a088d0 config manager str type vault source (#65023) (#65090)
* config manager str type vault source

* Convert vault text to_text earlier and add tests

(cherry picked from commit 7092c196ed)
2019-12-03 18:09:58 -08:00
3d3dbd6e7b gitlab module: set max version for python-gitlab lib (#65049) 2019-12-03 18:08:02 -08:00
5a48f7ea6b [2.9] collection: Provide additional info about collection name restriction (#65276)
Fixes: #65151

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 9dca2bd3c4)
2019-12-03 18:06:37 -08:00
4b9644c00b Backport of 64661, postgres.py: add query_params (#65034) 2019-12-03 15:08:21 -08:00
95c023e1b2 Backport #58521, bug fixes to the Infoblox NIOS modules (#64972) 2019-12-03 14:59:38 -08:00
7b18723858 Fix postgres_user not commiting changes when groups is set (#64835) 2019-12-03 14:57:02 -08:00
9e023a91a6 zabbix_action module no longer requires event_source and esc_period arguments when state is absent (#64736)
(cherry picked from commit d8e014980f)
2019-12-03 14:55:57 -08:00
b4cb407b4b AWS IAM Sanity test cleanup (#63961) (#64644)
* AWS IAM Sanity test cleanup

(cherry picked from commit fd54c54b51)
2019-12-03 14:51:41 -08:00
c30e340094 [2.9] include_vars: Check NoneType for raw_params (#65301)
Lookup 'first_found' returns empty list which results in
raw_params checking. Check NoneType for 'raw_params' before
proceeding.

Fixes: #64939

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 8d0c2cd4d5)
2019-12-03 14:46:36 -08:00
1c2f36d4d9 ansible-galaxy - Add User-Agent to requests (#65438) (#65441)
(cherry picked from commit 8648003c1f)
2019-12-03 14:45:54 -08:00
fc69d01444 gen on_become prompt for ios backport (#63572) 2019-12-03 14:36:58 -08:00
b133384895 openssh_keypair: fix idempotence issue (#65017) (#65128)
* Fix idempotence issue.

* Add changelog.

(cherry picked from commit b36f572256)
2019-12-03 14:18:53 -08:00
93186e453f openssl_csr: make sure privatekey_path is specified when state is present (#65435) (#65461)
* Make sure privatekey_path is specified when state is present.

* Add changelog.

(cherry picked from commit ae4363f6d1)
2019-12-03 14:07:31 -08:00
03b5a6f5d6 galaxy - print HTTP reason on unknown error (#65273) (#65439)
(cherry picked from commit 6586b7132c)
2019-12-03 14:06:35 -08:00
d93f56dccb Fix using a URL for galaxy collection install (#65272) (#65432)
* Fix using a URL for galaxy collection install

* Update lib/ansible/galaxy/collection.py

Co-Authored-By: Sloane Hertel <shertel@redhat.com>
(cherry picked from commit 694ef5660d)
2019-12-03 14:05:25 -08:00
955cebdd04 proxmox: fix proxmox 6 version detection by using LooseVersion (#59165) (#65379)
* proxmox: use 'release' key for version detection if possible

* proxmox: fix PEP issues

* add changelog fragment

* Uses LooseVersion for proxmox version detection

* move imports

* removes useless comment

(cherry picked from commit 38193f6b60)
2019-12-03 14:04:00 -08:00
d7d00ed36d acme_certificate: Fix ACME v1 support when modify_account is set to false (#64648) (#65412)
* Fix ACME v1 when modify_account is set to false.

* Add changelog.

(cherry picked from commit 08b53b94a9)
2019-12-03 14:03:30 -08:00
1ccfef9c5a [2.9] VMware: Fix typo in fail_json in vmware_guest_powerstate (#65163)
Fixed typo from "chanaged" to "changed"

Fixes: #65161

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit d7039b6633)
2019-12-03 14:02:47 -08:00
1ca54af370 Handle LibraryError exception in postgresql_db (#65229) (#65247)
* Added changes into changelogs/fragments
* Removed no longer used 'LibraryError'.

Signed-off-by: Satyajit Bulage <sbulage@redhat.com>
(cherry picked from commit 5f8ec4d46e)
2019-12-03 14:02:27 -08:00
3a95101424 [stable-2.9] Add or later to the license expressed in the README (#65287)
This is a clarification, not a relicensing.

Our source code says "GPLv3+" or "version 3 of the License, or later".
Our documentation says GPLv3+:

https://github.com/ansible/ansible/blob/devel/docs/docsite/rst/dev_guide/developing_modules_checklist.rst#contributing-to-ansible-objective-requirements

We were just lazy when we wrote the README and left out the "or later".
this update to the README brings it in line with what everything else
says.
(cherry picked from commit a15fb26)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-12-03 14:01:16 -08:00
b816e7c82e Update plugins/netconf/ce.py to fix a bug(failed to get veriosn information via neocnf). (#65065) (#65232)
* fix version fail.

* add a changelog fragment.

* Update ce.py

* Rename plugins-netconf-ce-fix.yaml to 65065-plugins-netconf-ce-fix.yaml

* Update ce.py

(cherry picked from commit da8ec327cc)
2019-12-03 13:59:32 -08:00
a4e055e0cd docker_container and docker_network: avoid None errors (#65018) (#65235)
* Avoid None errors.

* Add changelog.

(cherry picked from commit 63b94fca7e)
2019-12-03 13:59:03 -08:00
cf269667c1 docker_swarm_service: Sort lists when checking for changes (#63887) (#65221)
* docker_swarm_service: Sort lists when checking for changes

When two lists are checked for changes in this module, the lists are
reported changed when the order of the items is different. This PR
resolves this issue.

* docker_swarm_service: Minor typo fix

* docker_swarm_service: Another minor typo

* docker_swarm_service: Should use sorted(), not sort()

* docker_swarm_service: Sort lists of dictionaries

* docker_swarm_service: Fix style issues in tests

* docker_swarm_service: Updates to integration tests

* docker_swarm_service: Casting string types within lists when comparing

* docker_swarm_service: Special handling of unordered networks with ordered aliases

* docker_swarm_service: Sorting network lists

* docker_swarm_serivce: Better unit test code coverage for lists and networks

* docker_swarm_service: Fixed coding style for sanity tests

* docker_swarm_service: More coding style fixes

* docker_swarm_service: Ignoring test for Python < 3

* docker_swarm_service: Update to version info check for backwards compatibility

* docker_swarm_service: Added change fragment #63887

* docker_swarm_service: Better handling of missing sort key for dictionary of lists

* docker_swarm_service: Preventing sorts from modifying in-place

Co-Authored-By: Felix Fontein <felix@fontein.de>

* docker_swarm_service: Removed spurious import in test

* docker_swarm_service: Preventing sorts from modifying more data in-place

Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit a096cd08c5)
2019-12-03 13:56:39 -08:00
0f1e63b236 [yarn] Set name_version when version is not specified (#62348) (#65213)
* Set name_version when version is not specified, fix #55097

This will default to installing the latest version available

* Add changelog fragment

* update changelog

(cherry picked from commit 136dc27572)
2019-12-03 13:56:02 -08:00
7b3e63de71 Fix netconf post "delay persistent connections" (#63463) (#65137)
* ensure_connect on manager use

* Remove ensure_connected from individual netconf plugins

(cherry picked from commit f5e0995cae)
2019-12-03 13:55:25 -08:00
2fd6ed12fe Windows coverage - output temp files with UTF-8 BOM (#65086) (#65088)
* Windows coverage - output temp files with UTF-8 BOM
ci_complete ci_coverage

* Remove testing changes to get ready for merge

(cherry picked from commit 200fb00310)
2019-12-03 13:33:50 -08:00
0cec26f4eb Fix py2/py3 compability issue for httpapi plugin fortios (#64982) (#65091)
(cherry picked from commit bc479fcafc)
2019-12-03 13:33:12 -08:00
68b8e0e797 [stable-2.9] Fix ansible-test handling of git submodules. (#65027) (#65075)
* Revert most of PR #61605 commit e218c9814c

This removes the git error handling that converted all git errors into warnings.

* Fix ansible-test handling of git submodules.
(cherry picked from commit ba273c72d8)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-12-03 13:32:15 -08:00
45cf977052 Correct win_dns_client test option name (#64967) (#64970)
(cherry picked from commit 096c3ffa80)
2019-12-03 13:30:39 -08:00
3c37d572aa [2.9] vmware_guest: Revert custom value customization in guest (#65059)
Due to confusion between 'Custom Attributes' and 'Advanced options',
this change got in devel. Revert to original behavior i.e. customizing
custom values using vmware_guest is done in this PR.

Fixes: #64291

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit a6bc43ba47)
2019-12-03 13:30:07 -08:00
cd37b2df60 become - stop using play context in more places (#62373) (#64965)
* become - stop using play context in more places - ci_complete

* Fix up review points

(cherry picked from commit 480b106d65)
2019-12-03 13:29:14 -08:00
02a6ed9bda [stable-2.9] Fix firewalld integration tests for CentOS 8 (#64873) (#64924)
(cherry picked from commit 79a38c8a3a)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:27:59 -08:00
0a91afd3b1 [stable-2.9] Use newer version of podman on RHEL (#64934) (#64964)
- Use same podman version for RHEL 7 and 8
- Pin to version 1.4
(cherry picked from commit a385ad321b)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:27:38 -08:00
1c1a950a2d [stable-2.9] Fix setup_mysql8 tests for CentOS 8 (#64868) (#64926)
(cherry picked from commit 41f301fe1b)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:27:09 -08:00
e5b13bb9e3 [stable-2.9] Fix setup_postgresql integration test for CestOS 8 (#64871) (#64925)
(cherry picked from commit f8c741894a)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:26:44 -08:00
39dcfb1671 [stable-2.9] Fix filesystem integration test for CentOS 8 (#64866) (#64923)
(cherry picked from commit 082b1b6cca)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:25:53 -08:00
84c9040d02 [stable-2.9] Fix setup_mysql_db for CentOS 8 (#64864) (#64920)
(cherry picked from commit 477fa63f68)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:25:39 -08:00
918e7db2e8 [stable-2.9] Fix yum_repository tests for CentOS 8 (#64863) (#64919)
Refactor tests to run the same tasks with CentOS and Fedora using different variables.
(cherry picked from commit 05a7ce798d)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:23:57 -08:00
77e1f9f536 [stable-2.9] Fix lookup_passwordstore integration test for CentOS 8 (#64869) (#64918)
pass is no longer packaged in EPEL
https://lists.zx2c4.com/pipermail/password-store/2019-July/003689.html
(cherry picked from commit 4291f09a68)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:22:40 -08:00
0de8379ee3 Fix ansible_failed_{task,result} undefined in rescue (#64831) (#64843)
This is a fix for a regression introduced by Perfy. Since then we mainly
operate on host.name instead of the Host object. In a call to
set_nonpersistent_facts where we set ansible_failed_task and
ansible_failed_result variables we were still passing the object which
led to those vars being undefined.

Fixes #64789

(cherry picked from commit 5c0b2c151c)
2019-12-03 13:22:08 -08:00
af714a294d [stable-2.9] Fix iso_extract tests for CentOS 8 (#64861) (#64917)
- use setup_epel role rather than task which contains correct URL now since it has changed for EL8
- add conditional to setup_epel to prevent attempted installation on non-RHEL distros
(cherry picked from commit f2e605c856)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:21:41 -08:00
cabeadb4b8 [stable-2.9] Fix paramiko_ssh test (#64857) (#64916)
(cherry picked from commit dd8a3ebb72)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:21:02 -08:00
94a7de568c [stable-2.9] Fix setup_rpm integration tests for CentOS 8 (#64862) (#64915)
(cherry picked from commit 5d2a3ecbc4)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:20:29 -08:00
688d63305b [stable-2.9] Fix group integration test for CentOS 8 (#64858) (#64914)
(cherry picked from commit 5e3b6c84c7)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-12-03 13:20:15 -08:00
ca5e7e7cc2 win_chocolatey: Fix error when choco.exe not found (#53115) (#64881)
* win_chocolatey: Fix error when choco.exe not found

* Slight tweak to check and added changelog fragment

* Removed ignore rule that's no longer needed

(cherry picked from commit 521d6465f6)
2019-12-03 13:19:50 -08:00
6ee5297c02 Close subprocess stdout and stderr in the ssh connection plugin (#64874)
Eliminate `ResourceWarning: unclosed file` by closing all
file handles of each subprocess used by the SSH connection
plugin to execute commands.

This change prevents Ansible from accumulating "forgotten"
open file handles.

PR #64785 by Julien Palard
Fixes #64768
2019-12-03 13:17:44 -08:00
e3af54ffdd [2.9] VMware: Fix get_tags_for_vm API in vmware_vm_info module (#64821)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit e7c6134fd0)
2019-12-03 13:15:23 -08:00
18af2d257f win_domain_computer module: Fix idempotence when name != sam_account_name (#56967) (#64816)
* win_domain_computer module: Minor documentation error

* Fix idempotence when name != samaccountname

* Added changelog

* Added unsupported alias for CI check

(cherry picked from commit 04b8f75ffa)
2019-12-03 13:13:59 -08:00
f3c58f554c allow using --check on win_iis_webapppool module (#50528) (#64812)
* allow using --check on win_iis_webapppool module

* Added changelog and slight logic tweak

* Fix typo in changelog fragment

(cherry picked from commit 23a751323b)
2019-12-03 13:13:21 -08:00
07365b2040 Backport/2.9/64397 (#64790)
* [FIX] graceful is not an immutable attribute

(cherry picked from commit 1f4d15fc55)

* [ADD] changelog fragment for PR 64397 to stable-2.9
2019-12-03 13:11:09 -08:00
58b6ad7444 Fixed some documentation for postgresql_slot (#65278) (#65358) 2019-12-02 13:27:11 -06:00
04d32c503f Backport/2.9/64351 Doc notes 6 (#64351) (#64949)
* Doc notes 6 cloudengine (#64351)

(cherry picked from commit 25e03b1e75)

* add a change log
2019-11-19 10:42:57 -06:00
f3699c80be Backport/2.9/64928 Doc notes 5 (#64928) (#64948)
* Doc notes 5 cloudengine (#64928)
* new version 2.10 can not be backported

(cherry picked from commit 8ea9d0c06a)

* add a change log
2019-11-19 10:04:32 -06:00
19447485b8 Backport/2.9/64927 Doc notes 4 (#64927) (#64951)
* Doc notes 4 cloudengine (#64927)

(cherry picked from commit 2ccdf29b5b)

* add a change log
2019-11-19 10:02:35 -06:00
039dc88b10 Backport/2.9/64348 Doc notes 3 (#64348) (#64947)
* Doc notes 3 (#64348)

(cherry picked from commit ad0769c095)

* add a change log
2019-11-19 09:46:31 -06:00
0089df4cab Backport/2.9/64347 Doc notes 2 (#64347) (#64946)
* Doc notes 2 (#64347) 
* Update ce_evpn_bgp_rr.py
* Update ce_evpn_bgp.py

(cherry picked from commit 9e3b1f3b32)

* add a change log
2019-11-19 09:45:31 -06:00
1f9a500b54 Backport/2.9/64346 Doc notes 1 (#64346) (#64950)
* Doc notes 1 (#64346), backport of #64950

(cherry picked from commit 705c014ec3)

* add  a change log
2019-11-19 09:43:22 -06:00
a2b734dd9b win_firewall_rule.py to include ICMP echo (ping) example (#55013) - 2.9 (#64813)
* Update win_firewall_rule.py to include ICMP echo (ping)  example (#55013)

* Update win_firewall_rule.py

<!--- Your description here -->
Added example of enabling ICMP protocol, as ping is commonly used for troubleshooting in automation scenarios.  Equivalent netsh command is:
netsh advfirewall firewall add rule name='ICMP Allow incoming V4 echo request' protocol=icmpv4:8,any dir=in action=allow

+label: docsite_pr

* Remove yaml-breaking space

Removed extraneous space that caused validation to fail.

* Remove more extraneous whitespace

(cherry picked from commit 91d0ad9a4c)

* Remove icmp_type_codes

Setting the ICMP Type Codes on the protocol is not valid in 2.8/2.9, requires https://github.com/ansible/ansible/pull/60361 which will update the docs in devel.
2019-11-18 16:04:07 -06:00
0486885b9f Update openssl_certificate.py (#64772) (#64802)
Changed 'generate' to 'generating'

(cherry picked from commit 83927c3437)
2019-11-18 15:36:50 -06:00
9b27c7b7dc Backport/2.9/brokenlinks (#65016)
* Remove duplicated and broken link to Roles (#64991)

(cherry picked from commit f198036d7f)

* Fix link to Roles (#64992)

(cherry picked from commit 1d0a832692)

* fix collection broken links (#65010)

(cherry picked from commit 2749090bc6)
2019-11-18 15:12:24 -06:00
23de3c1614 update configuring ansible-galaxy client (#64796) (#64904)
* update configuring ansible-galaxy client, deduplicate, clarify tokens, AH procedures, etc.

(cherry picked from commit a01376a493)
2019-11-15 11:52:24 -06:00
d4f1552a19 Update Ansible release version to v2.9.1.post0. 2019-11-13 17:19:54 -08:00
6c051b0241 New release v2.9.1 2019-11-13 12:50:24 -08:00
8b3d1581bd [stable-2.9] vmware_host_firewall_manager: fix #61332 (#63567) (#64410)
Since https://github.com/ansible/ansible/pull/56733, we were not able to apply
firewall rules with no `allowed_hosts` key.

closes: #61332

In addition, this patch ensures the `allowed_hosts` key accepts a dict,
instead of a dict in a single entry list.

```yaml
vmware_host_firewall_manager:
  esxi_hostname: "{{ esxi1 }}"
  rules:
    - name: NFC
      enabled: True
      allowed_hosts:
        - all_ip: False
          ip_address:
            - "1.2.3.4"
```

Should be written:

```yaml
vmware_host_firewall_manager:
  esxi_hostname: "{{ esxi1 }}"
  rules:
    - name: NFC
      enabled: True
      allowed_hosts:
        all_ip: False
        ip_address:
          - "1.2.3.4"
```

(cherry picked from commit ab2aaca61d)
2019-11-12 21:31:33 -08:00
af2def5507 [stable-2.9] Cleanup after MySQL integration tests (#63641) (#63863)
Add handlers to setup_mysql_db and setup_mysql8 to remove installed packages..
(cherry picked from commit 3e4ae42256)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-12 19:01:19 -08:00
1e0d7ac25b [stable-2.9] Eos vlan override (#63639) (#63687)
* [stable-2.9] Eos vlan override (#63639)

* Fix overridden & deleted in eos_vlans

* Fix vlan creation in overridden

* Right, Python 2.6
(cherry picked from commit 741d529)

Co-authored-by: Nathaniel Case <ncase@redhat.com>

* eos_vlans: Never try to set vlan_id as a property (#63689)

(cherry picked from commit d98482c294)

* Add changelog
2019-11-12 18:49:51 -08:00
65ab51082b Improve handling of "restarted" state for win_iis_website module (#63829) (#64760)
* Improve handling of "restarted" state for win_iis_website module

* Added changelog fragment

(cherry picked from commit bd9a0b6700)
2019-11-12 18:46:54 -08:00
25f8d0dcd3 win_acl no longer needs SeSecurityPrivilege (#57804) (#64758)
* win_acl no longer needs SeSecurityPrivilege
Set-ACL raises missing SeSecurityPrivilege error when the inheritance
from the parent directory is disabled.

* fixes test sanity

* registry rights can only be modified with Set-ACL

* add changelog

(cherry picked from commit 95d613f3ab)
2019-11-12 18:46:16 -08:00
d2d9a60eab Corrected Get-adcomputer (#63093) (#64756)
* Corrected Get-adcomputer

Corrected Get-adcomputer on "Remove-ConstructedState" and "Set-ConstructedState" functions.
resolved error: Unable to contact the server. This may be because this server does not exist, it is currently down, or it does not have the Active Directory Web Services running.

* Update lib/ansible/modules/windows/win_domain_computer.ps1

Co-Authored-By: Daniel-Sanchez-Fabregas <33929811+Daniel-Sanchez-Fabregas@users.noreply.github.com>

* Update win_domain_computer.ps1

changed
"-credential $credential" to "@extra_args" (Line 115 and 150)
corrected exception message (Line 122)

* Added changelog fragment, minor code tweak

(cherry picked from commit e77426dad3)
2019-11-12 18:45:14 -08:00
65f945fab1 Fix IOS_VLANS override operation for new VLANs (#63667)
* Fix IOS_VLANS override operation for new VLANs (#63624)

* fix vlans override state

* adding code comment

(cherry picked from commit 4f2665810f)

* changelog for 63624
2019-11-12 13:02:09 -08:00
50bbd72694 gitlab_user: Fix ssh key add and group membership add when there's other changes (#63621) (#63634)
* Fixed syntax in sshkey/group add

* Added changelog

* pep8 fix

(cherry picked from commit b4bb3dee9a)
2019-11-12 13:01:53 -08:00
20735f6b5b [stable-2.9] Explicitly use multiprocessing fork start method (#63581) (#63591)
* Explicitly use multiprocessing fork start method

* Remove unused import

* Remove unused import

* Fallback to just multiprocessing on py2
(cherry picked from commit 82ee341)

Co-authored-by: Matt Martz <matt@sivel.net>
2019-11-12 13:01:27 -08:00
14b48062ee Fix traceback for empty config (#62520) (#63090)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 67213ccb4d)

Add changelog for vyos traceback fix
2019-11-12 12:04:42 -08:00
5558b43f27 Fix traceback for empty config (#62515) (#63089)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit fc5358cea0)

Add changelog for IOS-XR traceback fix

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

Remove empty spaces
2019-11-12 12:02:14 -08:00
e3f7b5327e docker_image and docker_login: move tests needing a registry into own target, add tests for docker_login (#62721) (#62951)
* Move tests with docker registry into own target.

* Add docker_login tests.

* Add step which makes sure hello-world:latest is around.

* Make work inside docker container.

* Add dependency.

* Use plaintext password.

* Forgot check_mode.

* Add no_log to avoid double log output in verbose mode.

(cherry picked from commit a79f7e575a)
2019-11-12 12:01:54 -08:00
5ca92a848c package_facts: check 'vital' and 'automated' values ('pkg' manager) (#62766) (#62825)
(cherry picked from commit 278398555d)
2019-11-12 12:01:37 -08:00
3a5bd5be18 [stable-2.9] Account for empty strings when splitting the host pattern (#62442) (#62679)
Improve tests
- add more unit test cases
- add specific integration test with more cases

Testing shows no major downside to calling .strip() twice in a comprehension vs. using a regular for loop and only calling .strip() once. Going with the comprehension for ease of maintenance and because comprehensions are optimized in CPython.
(cherry picked from commit 987265a6ef)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-12 12:01:12 -08:00
7dad6ca149 [2.9] core: Handle empty extra vars in cli (#62240)
Fixes: #61497

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit a2e61f67d5)
2019-11-12 11:59:06 -08:00
b5dabab16e ce_config/bug/jingdong: a bug from jingdong. (#62872) (#63980)
* update to fix "`quit` may make seesion closed."

* update to fix "`quit` may make seesion closed."

* 274:49: E272: multiple spaces before keyword

* add a changelog fragment.

* Update ce_config.py

using run_command for prompts.

* Update ce_config.py

* Update ce_config.py

typo error

* update to use get_prompt

* Update ce_config.py

* Update ce_config.py

* Update ce_config.py

* Update ce_config.py

* Update ce_config.py

* Update ce_config.py

* Update ce_config.py

(cherry picked from commit e4b6dd1862)
2019-11-12 11:57:30 -08:00
fd392ecb46 [Backport/2.9/64018]update ce_acl_interface to fix bugs (#64025)
* update ce_acl_interface to fix bugs

(cherry picked from commit 2849738e24)

* Module modification information
2019-11-12 11:55:38 -08:00
7ca3b677c4 Backport PR to Fix ios_l2_interfaces skipping relevant L2 interfaces facts (#63893)
* Fix ios_l2_interfaces skipping relevant L2 interfaces facts (#63779)

* fix bug 63777

* fix comment

(cherry picked from commit d620a209a5)

* changelog
2019-11-12 11:51:16 -08:00
cdc6577395 [stable-2.9] syslogger - disable check mode (#63646) (#63750)
(cherry picked from commit dcec3d000e)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-12 11:50:53 -08:00
f440c23dd7 Improve module return values (#63541) (#63644)
* Remove lists from contains:, fix types, some more details.

* Adjust types.

* Add new type.

* Re-add meraki_mx_l7_firewall docs at right indentation level.

(cherry picked from commit a129499cf4)
2019-11-12 11:47:47 -08:00
2822744c68 dest lives in 4 different places depending on exeuction type (#62444) (#63283)
(cherry picked from commit d4ad541eee)
2019-11-12 11:44:56 -08:00
040247097c postgresql_publication: fix logic (#63737)
(cherry picked from commit 891489a27e)
2019-11-12 11:41:42 -08:00
8674090b19 Ovirt fix fetching of nested attributes backport (#63787)
* ovirt: Fix fetching of nested attributes (#61841)

This patch is fixing the fetching of nested attributes.

Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1748025

* add changelog
2019-11-12 11:40:40 -08:00
7df4550611 Ovirt disk correct fcp host backport (#63898)
* ovirt disk correct fcp host (#63857)

* add changelog
2019-11-12 11:40:10 -08:00
46b82cf01b [2.9] Fix typo in vmware_content_deploy_template docs (#63176)
Fixing typo mistake in testbed with section.
Deploy template from content library is supported from 67U3.

(cherry picked from commit c6c13b5626)
2019-11-12 11:39:47 -08:00
4aae6f5341 [stable-2.9] CentOS8/RHEL8 base don't have all the deps we were specifying (#63151)
We used a few packages for tests which don't exist in RHEL8 base.  Don't
dep on those so those tests will simply skip
(cherry picked from commit 2b6ee57)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-11-12 11:39:27 -08:00
49f1760fea Ovirt correct resloving false atrs backport (#63953)
* ovirt correct resolving nested atributes which are false (#63908)

* add changelog
2019-11-12 11:37:45 -08:00
13db4b90a5 openssl_csr: fix tests (#63994)
* Make sure tests are validated with correct backend in mind.

* Fix tests.

(cherry picked from commit 35a412fab7)
2019-11-12 11:36:24 -08:00
c65e003796 Fix grafana_datasource fails when name with spaces (#63987)
(cherry picked from commit df6b7bf77f)
2019-11-12 11:35:56 -08:00
5a2d55a51f Fix network plugin config option load from collection (#64046)
* Fix network plugin config option load from collection

Fixes #63975

* Update the complete sub-plugin name within network
  connection plugins to handle sub-plugin in collection
  scenario.

* Fix review comments

(cherry picked from commit 60276d3d8d)
2019-11-12 11:34:55 -08:00
2feaea913d command, script & shell: mention 'cmd' parameter (#62778) (#64746)
'cmd' parameter is supported since 2b3c5aa41e (v2.0.0-1)

(cherry picked from commit 47bf5deb54)
2019-11-12 13:24:54 -06:00
9bd5d96abb [stable-2.9] rpmfilename must be constructed using rpmmacros (#63025)
Different subpackages have different names so, at the least, the %NAME
macros must be used when constructing the rpmfilename.  Otherwise each
subsequent subpackage will overwrite the previous one.

This reinstates dag's fix from d4b6aecd97

Fixes #62673
(cherry picked from commit 30cc54d)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-11-12 11:22:35 -08:00
73f42d22ff Backport PR to fix ios_interfaces where non-existing virtual/loopback interfaces was not getting configured (#64259)
* fix bug 63761 (#63901)


(cherry picked from commit be1bcc7450)

* changelog
2019-11-12 11:19:18 -08:00
153f8341a5 Use templating in HostVarsVars __repr__ (#64282)
* Fix HostVarsVars templating

* Add some tests for HostVars and HostVarsVars templating

* changelog

(cherry picked from commit 371d7aae31)
2019-11-12 11:16:52 -08:00
94c8ca6c3e Master (#62626) (#62743)
* Master (#62626)

* Update win_package.ps1

Update Test-Path to use -LiteralPath instead of -Path to fix issue where powershell will not detect path with special characters such as '=' and '[]'.

* Update win_package.ps1

modified other instances of -Path and changed to -LiteralPath.  All except line L243 since it is a different function.

* added literal path to get-itemproperty

(cherry picked from commit 153a322f54)

* add fragment
2019-11-12 11:16:42 -08:00
cf31833a48 [2.9] Ovirt vm cpu treads docs backport (#64413)
* ovirt_vm: update cpu_threads docs (#64380)

* add changelog
2019-11-12 11:05:09 -08:00
1f0c518965 Document 'elements' for module option and return value documentation. (#64075)
(cherry picked from commit 0bf9146b29)
2019-11-12 11:04:35 -08:00
870294b2ed Ovirt host network dict correct backport (#64444)
* Ovirt host network dict correct (#64437)

* ovirt_host_network: correct comparing of two dicts

* update mode_number for 4th option

* add changelog

* add changelog
2019-11-12 11:03:31 -08:00
93d9a091a3 [stable-2.9] Fix up role version pagination for Galaxy install (#64373)
* Fix up role version pagination for Galaxy install

* Fix sanity issue
(cherry picked from commit 7acae62fa8)

Co-authored-by: Jordan Borean <jborean93@gmail.com>
2019-11-12 11:02:45 -08:00
6d829b0f6c [stable-2.9] debian: install lib in dist-packages (#64412)
On Ubuntu Precise and Trusty, the build was failing because the Ansible
libs were installed in /usr/lib/python2.7/site-packages.

According to the Debian Policy (2.5), they should actually be install in
/usr/lib/python2.7/dist-packages This is also CDBS default behaviour since
0.4.131.

See: https://www.debian.org/doc/packaging-manuals/python-policy/ch-python.html

Closes: #64160
2019-11-12 10:55:24 -08:00
64665ffcc9 ansible-test: bumping ACME test container version (#64424)
* Bumping ACME test container version.

* Add changelog.

(cherry picked from commit f4ff45dcd4)
2019-11-12 10:54:28 -08:00
c44cd68aa2 template lookup: fix regression when templating hostvars (#64070)
This fixes a regression that was caused by switching from copy() to
deepcopy() when 'saving' variables before templating. Since HostVars
did not implement the __deepcopy__() method, deepcopy returned incorrect
results when host vars were present in the variables.

Fixes #63940

(cherry picked from commit cd8ce16d48)
2019-11-12 10:53:55 -08:00
26e8474f6d [stable-2.9] unsafe wrapping should only happen for with_ loops (#64401)
* unsafe wrapping should only happen for with_ lookups. Fixes #64379. Addresses #64169

* edit porting guide entry

* typo in changelog fragment

* typo

Co-Authored-By: Sandra McCann <samccann@redhat.com>

* punctuation

Co-Authored-By: Sandra McCann <samccann@redhat.com>
(cherry picked from commit 254788b)

Co-authored-by: Matt Martz <matt@sivel.net>
2019-11-12 10:53:03 -08:00
270f851e7a Replace clear() method for backward compatibility. (#64504)
(cherry picked from commit 27d3dd58a4)
2019-11-12 10:52:15 -08:00
8528f414bd postgresql_publication: fix typo in module.warn (#64582)
* postgresql_publication: fix typo in module.warn

* postgresql_publication: fix typo in module.warn, add changelog

(cherry picked from commit 2039bf45fe)
2019-11-12 10:51:45 -08:00
3628c9c07e [2.9] Correct usage of API call in aws_config_aggregator
update_resource and delete_resource takes and requires four argument.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 21c8dae83b)
2019-11-12 10:51:17 -08:00
cef3036179 [2.9] Fixed tiny typo in interpreter_discovery.rst
Added missing '/'

(cherry picked from commit 84bffff96a)
2019-11-12 10:50:12 -08:00
209865502a Fixes #56832: Remove warning when falling back to apt-get if aptitude is missing. (#61782)
(cherry picked from commit a6ec6c3175)
2019-11-12 10:49:34 -08:00
362a8ffd8c Remove unused variable for junos_user (#62311)
This isn't used any place, lets remove it to fix lint checks on our
network collections.

(cherry picked from commit 119acc1afe)
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-11-12 10:48:53 -08:00
e38f74159d 2.9: perf: reduce getting handler variables (#59969) (#64676)
* perf: reduce getting handler variables (#59969)

* perf: reduce getting handler variables

ci_complete

* Do not re-create templar

(cherry picked from commit 9ccef9e819)

* Add changelog
2019-11-12 10:48:06 -08:00
28c4a41d9b [stable-2.9] Set alter_sys=True instead of False to address backwards… (#64686)
* [stable-2.9] Set alter_sys=True instead of False to address backwards incompat (#64670)

* Set alter_sys=True instead of False to address backwards incompat

* ci_complete

* Add integration test

* ci_complete

* sanity

* ci_complete

* Changelog fragment

* Update import test and validate-modules to match.
(cherry picked from commit b93d92ef9a)

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

* Rebase and add alter_sys to validate-modules
2019-11-12 10:46:48 -08:00
46b79e386c change $partition variable name to $ansible_partition (#63968)
* change $partition variable name to $ansbile_partition

* Added changelog fragment

(cherry picked from commit 8b13836b1f)
2019-11-12 10:46:05 -08:00
d8ea223543 Backport/2.9/63785 - zabbix_host logout missing (#64735)
* added missing atexit logout for zabbix_host module

(cherry picked from commit 59ed663113)

* added changelog fragment
2019-11-12 10:45:27 -08:00
f6a10b5633 [2.9] Remove temp directory created by wait_for_connection (#64738)
wait_for_connection creates AnsiballZ_ping.py in temp directory,
which remains on remote machine even after playbook run.

Fixes: #62407

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 68428efc39)
2019-11-12 10:24:52 -08:00
604e06c482 remove toshio as release manager (boohoo) (#64685) (#64740)
(cherry picked from commit 94e98d5369)
2019-11-12 12:06:02 -06:00
ea211caf5f Buypass now has a ACME v2 production endpoint. (#64649) (#64680)
(cherry picked from commit 4083d02989)
2019-11-11 19:14:38 -08:00
9dbc5b631a postgresql_query: add note to the documentation (#64432) (#64539)
(cherry picked from commit eb58f437fb)
2019-11-11 19:05:59 -08:00
d35a3a74cc openssl_csr and openssl_certificate: fix support for Ed25519 and Ed448 private keys (#63984) (#64125)
* Move X25519, X448, Ed25519 and Ed448 feature tests to module_utils.

* Correctly sign with Ed25519 and Ed448 keys.

* Fix public key comparison. Ed25519 and Ed448 do not have public_numbers().

* Add tests.

* Add changelog.

* Give better errors for cryptography 2.6.x and 2.7.x.

* Test for new errors.

* Forgot one.

* Used wrong private key.

* Use private key password for CA key. Add more stuff to its certificate.

(cherry picked from commit fed267df03)
2019-11-11 19:04:15 -08:00
4055e5cfc6 XenServer: Update docs with recent changes in XenAPI python lib and branding (#63728) (#63815)
- xenserver module_util: XenAPI lib import error message handling is now
   ported to missing_required_lib(). Updated unit tests.
 - xenserver_guest, xenserver_guest_info, xenserver_guest_powerstate modules:
   docs are updated to reflect recent changes in availability of XenAPI lib
   on PyPI.
 - xenserver_guest, xenserver_guest_info, xenserver_guest_powerstate modules:
   docs are updated to reflect recent Citrix rebranding of XenServer. Broken
   URLs to external resources are fixed.
 - xenserver_guest, xenserver_guest_info, xenserver_guest_powerstate modules:
   more tested platforms are mentioned in docs.
(cherry picked from commit 7afba9420a)
2019-11-11 18:10:54 -08:00
1979b4bf76 docker_swarm_service: Allow source to be omitted for tmpfs mounts (#64637) (#64640)
* Allow source to be omitted for tmpfs mounts.

* Add changelog.

(cherry picked from commit 574bd32db2)
2019-11-11 18:02:54 -08:00
afc4218ac4 docker_login: Use with statement for accessing files (#64382) (#64392) (#64524)
* docker_login: Use with statement for accessing files (#64382)

* Update changelogs/fragments/64382-docker_login-fix-invalid-json.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit 52c4c1b00d)
2019-11-11 18:01:44 -08:00
a0ec2976b2 [2.9] Callback: removing args from task_fields from Sumologic and Splunk plugin (#64274)
CVE-2019-14864 Ansible: Splunk and Sumologic callback plugins leak sensitive data in logs

Fixes #63522

Signed-off-by: Patrick O’Brien <patrick.obrien@thetradedesk.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit c76e074e4c)
2019-11-11 18:00:48 -08:00
8cc018d936 [stable-2.9] paramiko_ssh - Improve authentication error message (#64157) (#64163)
The error is not always an invalid username/password. It could be a connection timeout or refusal.
(cherry picked from commit d5fbe6573b)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-11 17:59:46 -08:00
68fcc7a50c [stable-2.9] copy - check for changes beyond first level of subdirectories (#58323) (#64111)
Add integration test for copy: deep recursive with remote_src=True
(cherry picked from commit b7e38dfa52)

Co-authored-by: Alexander Korsunsky <A.Korsunsky@gmail.com>
2019-11-11 17:37:45 -08:00
39aba6d304 lineinfile - don't run os.makedirs on empty dir path (#63921) (#64091)
* Fix #63919: don't run os.makedirs on empty dir path

* integration test for lineinfile create: yes without path (Sam Doran <sdoran@redhat.com>)

(cherry picked from commit 3c978a3225)
2019-11-11 17:36:16 -08:00
0e4fe7a52b ACMEAccount.get_request check status code value lower boundary (#63140) (#64071)
* check status code value lower boundary

Any HTTP code below 200 cannot be considered a success, should be
handled like a failure instead.

This is particularly true for below zero status codes.

Fixes #63139

* provide changelog fragment

* ensure connection errors are handled in Acme module

* add fetch_url check to ACME.send_signed_request

* remove module.fail_json

* move _assert_fetch_url_success out of ACMEAccount

* fix ansible-lint errors

* use simplified syntax status checking

(cherry picked from commit 0d905a0496)
2019-11-11 17:34:35 -08:00
b327e1e2c6 acl: fix module failure if there're spaces in a path (#63280) (#63811)
* Make acl module to work with whitespaces in path

* Added a changelog fragment

* Add quotes to changelog fragment

(cherry picked from commit 504d76e956)
2019-11-11 17:32:11 -08:00
02f45f45d7 Backportable subset of: openssl_csr: deprecate version option (#63432) (#63674)
Cherry-picked from ba686154b9.
2019-11-11 17:23:40 -08:00
61c323b199 Backport 2.9: Fix Gitlab module deprecation warning (#60425) (#63499)
* Fix Gitlab module deprecation warning (#60425)

* gitlab modules : Fix deprecation warnings and parameters

Also preparing for 2.10 deprecation

* gitlab modules : Correct deprecation message

(cherry picked from commit 7bb90999d3)

* gitlab_modules :  remove misssing required parameter (#63690)

* gitlab_group: remove required=True on server_url param

* gitlab_project: remove required=True on server_url param

* Revert "Example incorrect: server_url is required argument (#63670)"

This reverts commit b02467961a.
This modification shouldn't have been made.
This parameter is deprecated and #60425 forget to remove the required
parameter

(cherry picked from commit 0af32a1093)

* gitlab modules : Add changelog
2019-11-11 16:32:24 -08:00
0d993a6b78 Fix issue when setting an empty pass to no_log param (#62804) - 2.9 (#62814)
* Fix issue when setting an empty pass to no_log param (#62804)

* Fix issue when setting an empty pass to no_log param

* Fix typo

(cherry picked from commit 322e225830)

* Fix up actual get for older versions
2019-11-11 15:38:20 -08:00
64c52e6021 [stable-2.9] Fix ansible-test collections sanity import test. (#64467)
* Fix ansible-test collections sanity import test.

Resolves https://github.com/ansible/ansible/issues/64466

* Fix get_source implementation also.

* Fix is_package function.
(cherry picked from commit adcf9458f1)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-11-11 15:11:41 -08:00
276f4b21de [stable-2.9] Fix ansible-test sanity requirements install.
This fixes ansible-test so it no longer tries to install sanity test dependencies on unsupported Python versions.
(cherry picked from commit 437e9b7063)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-11-11 15:11:15 -08:00
259c278bcd [stable-2.9] Add constraint for pathspec.
This fixes installation of pathspec on Python 2.6.
(cherry picked from commit 32b57d57a0)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-11-11 15:10:57 -08:00
8b0249c0b0 [stable-2.9] Add missing var for format string in ansible-test.
(cherry picked from commit 32979430d0)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-11-11 15:10:43 -08:00
0586d2c630 Merge pull request #63537 from mattclay/backport-d829a50-stable-2.9
[stable-2.9] Fix use of deprecated function in xml module.
2019-11-11 15:09:48 -08:00
7c5e08c059 [stable-2.9] Fix ansible-test env var mixing running commands.
(cherry picked from commit 6be4741f72)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-11-11 15:09:16 -08:00
c271fd0df2 [stable-2.9] Fixes for validate-modules import handling. (#63932)
* Fix validate-modules support for collections.

- Relative imports now work correctly.
- The collection loader is now used.
- Modules are invoked as `__main__`.

* Remove obsolete validate-modules code ignores.

* Handle sys.exit in validate-modules.

* Add check for AnsibleModule initialization.

* Remove `missing-module-utils-import` check.

This check does not support relative imports or collections.

Instead of trying to overhaul the test, we can rely on the `ansible-module-not-initialized` test instead.

* Fix badly named error codes with `c#` in the name.

The `#` conflicts with comments in the sanity test ignore files.

* Add changelog entries.
(cherry picked from commit e9f8a34dce)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-11-11 15:07:58 -08:00
02cc45a8ae clarify acceptable file types in collection docs (#64618) (#64622)
* clarify acceptable file times in collection docs

* implement feedback

(cherry picked from commit 6a662b0ed0)
2019-11-08 14:52:37 -06:00
f561e7d15f updates RHEL packages to 2.9 (#64532) (#64620)
(cherry picked from commit ac9c75d467)
2019-11-08 14:00:03 -06:00
22df4947e2 [stable-2.9] Switch from RHEL 8.0 & 8.1b to 8.1 in CI.
(cherry picked from commit 75646037dc)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-11-07 14:58:55 -08:00
6c7fadd861 clarify vault warning and fix typo (#64457)
(cherry picked from commit 59eb966042)
2019-11-06 15:43:45 -06:00
6d309f726d Add note about large tarball sizes for collections (#64411) (#64416)
* add note on collection tarball size

(cherry picked from commit 797397558e)
2019-11-04 15:59:52 -06:00
c486638e4e add general facts-to-info paragraph (#64293) (#64297)
(cherry picked from commit 6e07d4c1d9)
2019-11-01 15:32:07 -05:00
0c6cb417e5 [Docs-Release-2.9] clean up porting guide links and network text (#64124) (#64290)
* clean up porting guide links and network text
* fix shippable error

(cherry picked from commit 56d5fd34e3)
2019-11-01 14:31:24 -05:00
284be7456c [stable-2.9] Exclude the ansible-test script from the main rpm package (#64277)
We want the script to live in the ansible-test rpm subpackage alongside
of its libraries

Fixes #64275
(cherry picked from commit 87de146038)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-11-01 12:27:20 -07:00
30bbbdbe33 action/ce.py:clear configuration candidate when return to user-view. (#63513)
* clear configuration candidate when return to user-view.

* add a changelog fragment for the pr.

* Update 63513-ce_action_wait_prompt_trigger_time_out.yaml

* Update 63513-ce_action_wait_prompt_trigger_time_out.yaml

(cherry picked from commit 47c31c201b)
2019-11-01 08:40:49 -07:00
0046d0be47 [temporary-2.9.1-branch-releng-only] lineinfile - use correct index value when inserting at the end (#63696)
(cherry picked from commit 92cd13a2cf)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-01 08:40:49 -07:00
96d304a894 [temporary-2.9.1-branch-releng-only] lineinfile - properly insert line when line exists and backrefs are enabled (#63763)
Use a separate variable for the boolean test rather than having the same variable sometimes be a boolean and sometimes be a regular expression match object

Add integration tests to cover this scenario
(cherry picked from commit 29d4d318a5)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-01 08:40:49 -07:00
c68507bcb0 Backport/2.9/62471 ce_link_status:update to fix a bug. (#62417) (#63423)
* update to fix a bug. (#62417)


(cherry picked from commit 7541dab1ef)

* add a changelog fragment.
2019-11-01 08:40:49 -07:00
6446b70728 docker modules: improve return value list documentation (#63145)
* Improve type documentation.

* Also improve return values.

(cherry picked from commit 7f643690c7)
2019-11-01 08:40:49 -07:00
67c02e5dee [2.9] crypto modules: improve return value list documentation (#63409)
* crypto modules: improve return value list documentation (#62929)

* Improve return value documentation by allowing entry for return values.
* Add docs formatting, adjust styling.
* Fix sample return value. (Taken from https://tools.ietf.org/html/rfc7517#appendix-A.1.)
* Work around abuse of .

(cherry picked from commit 054285c34c)

* Add changelog.
2019-11-01 08:40:49 -07:00
80233545cc docker_node_info: improve error handling (#63418)
* Improve error handling for get_service_inspect().

* Add changelog fragment.

(cherry picked from commit d753168e9d)
2019-11-01 08:40:49 -07:00
23f5b3b635 [stable-2.9] user - fix shadow file parsing on AIX (#62547)
Initialize variables in case the shadow file is not found.
Handle IndexErrors if something goes wrong with file parsing.
(cherry picked from commit e9d10f94b7)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-01 08:40:49 -07:00
644f77f3ab [Backport/2.9/63331]Update ce_facts to fix bugs (#63457)
* Update ce_facts to fix bugs

(cherry picked from commit 73e7da40ff)

* Update ce_facts modified information
2019-11-01 08:40:49 -07:00
a72a25d191 [backport 2.9] facts: detect FreeBSD jails guest (#62857) (#62913)
* facts: detect FreeBSD jails guest (#62857)

* facts: detect FreeBSD jails

* PEP8 fix

* changelog for pr62913
2019-11-01 08:40:49 -07:00
a0fb10c2ab [stable-2.9] package_facts - use AnsibleModule.warn() for warnings
(cherry picked from commit 2b1e24fc49)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-11-01 08:40:49 -07:00
353c9cb99d docker_image: fix option parameter so that warnings are issued (#63345)
* Fix option parameter so that warnings are issued.

* Add changelog.

(cherry picked from commit 61b3784131)
2019-11-01 08:40:49 -07:00
fc65941d86 Backport/2.9/63332 ce_netstream_global: bugs fix(list index out of range) (#63332) (#63389)
* ce_netstream_global: bugs fix(list index out of range) (#63332)

* update to fix bugs:index out of range

* list index out of range

* list index out of range

* update for bad-whitespace

* Update ce_netstream_aging.py

* Update ce_netstream_aging.py

* Update ce_netstream_global.py

* Update ce_netstream_global.py

* Update ce_netstream_global.py

* Update ce_netstream_template.py

* Update ce_netstream_global.py

* Update ce_netstream_global.py

* Update ce_netstream_template.py

* Update ce_netstream_aging.py

(cherry picked from commit b7f12f9ff3)

* add a changelog fragment.

* Update 63389_ce_netsream_list_index_out_of_range.yml

empty-lines too many blank lines (1 > 0)
2019-11-01 08:40:49 -07:00
3c0ed8c02a clean "changed" only after it has been processed (#59958)
* clean "changed" after it has been processed

without this change, a loop of `debug` tasks with `changed_when`
causes the "changed" status to get lost before output

* runme.sh tests for debug loop status

(cherry picked from commit bfd32c9b00)
2019-11-01 08:40:49 -07:00
125f7e8db1 issue #61672 backporting in Ansible 2.9 2019-11-01 08:40:49 -07:00
cc244f4e03 lineinfile - fix bug with insertbefore/insertafter and firstmatch (#63194)
(cherry picked from commit 3b18337cac)
2019-11-01 08:40:49 -07:00
9d1f07dd03 Backport/2.9/62587 module_utils/network/cloudengine:fix get_nc_next. (#62752)
* fix plugins/netconf/ce.py for netconf/capability/exchange (#60569)


(cherry picked from commit 037401b6e0)

* for capability/exchange/1.0 (#60630)

* for capability/exchange/1.0

* for capability/exchange/1.0

* update for shippable

* Update ce.py

* Update ce.py

(cherry picked from commit 28227c95a4)

* module_utils-network-cloudengine: fix get_nc_next. (#62587)

* fix get_nc_next.

* add a changelog fragment.

* upadte for  changelgo fragment.

* merge two prs, one depens another.

* merge two prs, one depens another.

* update changelog.

(cherry picked from commit d6ef7c8530)
2019-11-01 08:40:49 -07:00
fb897c3f48 [Backport/2.9/62589]update ce_bgp_af to fix bugs (#62652)
* update ce_bgp_af to fix bugs (#62589)

* update to fix bugs

* update to fix bugs

(cherry picked from commit 2a206f0e4c)

* Update ce_bgp_af modified information
2019-11-01 08:40:49 -07:00
c95f012ff6 [Backport/2.9/61442]Update ce_mtu to fix bugs (#62684)
* Update ce_mtu to fix bugs

(cherry picked from commit cb8a3a4c06)

* Update ce_mtu modified information
2019-11-01 08:40:49 -07:00
91eacc0f2b Bugfix for aggregate function in junos_user module (#62833)
* Update junos_user.py (#60459)

(cherry picked from commit c226c1015e)

* changelog fragment for junos_user bugfix
2019-11-01 08:40:49 -07:00
d68a05414a [Backport/2.9/61431]Update ce_interface_ospf to fix bugs (#62686)
* Update ce_interface_ospf to fix bugs

(cherry picked from commit b7e9bb8448)

* Update ce_interface_ospf modified information
2019-11-01 08:40:49 -07:00
59f33cde8b [Backport/2.9/61283]Update ce_info_center_global to fix bugs (#62688)
* Update ce_info_center_global modified information

* Update ce_info_center_global to fix bugs (#61283)

* Update ce_info_center_global to fix bugs

* Update ce_info_center_global to fix bugs

* Update ce_info_center_global to fix bugs

(cherry picked from commit 2d85cb3ded)
2019-11-01 08:40:49 -07:00
e9ef022b5d [Backport/2.9/61168]Update ce_evpn_bgp_rr to fix bugs (#62690)
* Update ce_evpn_bgp_rr to fix bugs

(cherry picked from commit 2cb3da3fa6)

* Update ce_evpn_bgp_rr modified information
2019-11-01 08:40:49 -07:00
4f8fefa6c4 [Backport/2.9/61136]Update ce_evpn_bgp to fix bugs (#62692)
* Update ce_evpn_bgp modified information

* Update ce_evpn_bgp to fix bugs

(cherry picked from commit 05d984b180)
2019-11-01 08:40:49 -07:00
2355ba73a5 [Backport/2.9/61652]Update ce_netstream_export to fix bugs (#62682)
* Update ce_netstream_export to fix bugs (#61652)

* Update ce_netstream_export to fix bugs

* Update ce_netstream_export to fix bugs

(cherry picked from commit 8233389446)

* Update ce_netstream_export modified information
2019-11-01 08:40:49 -07:00
ecf40c8275 [Backport/2.9/61653]Update ce_netstream_aging to fix bugs (#62658)
* Update ce_netstream_aging to fix bugs (#61653)

* Update ce_netstream_aging to fix bugs

* Update ce_netstream_aging to fix bugs

(cherry picked from commit 80fa2a0816)

* Update ce_netstream_aging modified information
2019-11-01 08:40:49 -07:00
254d2552f5 [Backport/2.9/61654]Update ce_ntp to fix bugs (#62656)
* Update ce_ntp modified information

* Update ce_ntp to fix bugs

(cherry picked from commit afea7cc454)
2019-11-01 08:40:49 -07:00
d869985a4c [Backport/2.9/61683]Update ce_vrf_af to fix bugs (#62654)
* Update ce_vrf_af to fix bugs

(cherry picked from commit 0c65db1a23)

* Update ce_vrf_af modified information
2019-11-01 08:40:49 -07:00
8c0e7bfb25 [Backport/2.9/61013]Update ce_evpn_global to fix bugs (#62694)
* Update ce_evpn_global modified information

* Update ce_evpn_global to fix bugs

(cherry picked from commit 9c6899a92f)
2019-11-01 08:40:49 -07:00
768bdeda0f [Backport/2.9/60937]Update ce_bgp_neighbor_af to fix bugs (#62696)
* Update ce_bgp_neighbor_af modified information

* Update ce_bgp_neighbor_af to fix bugs (#60937)

* Update ce_bgp_neighbor_af to fix bugs

* Update ce_bgp_neighbor_af to fix bugs

* Update ce_bgp_neighbor_af to fix bugs

(cherry picked from commit a260209098)
2019-11-01 08:40:49 -07:00
4725140514 [Backport/2.9/60634]Update ce_bgp_neighbor to fix bugs (#62698)
* Update ce_bgp_neighbor modified information

* Update ce_bgp_neighbor to fix bugs

(cherry picked from commit dc5f127086)
2019-11-01 08:40:49 -07:00
71743d3456 Update ce_bgp modified information 2019-11-01 08:40:49 -07:00
637933d433 update ce_bgp to fix bugs (#60573)
* update ce_bgp to fix bugs

* update ce_bgp to fix bugs

* update ce_bgp to fix bugs

* update ce_bgp to fix bugs

* Update ce_bgp to fix bugs

(cherry picked from commit 5f35916b22)
2019-11-01 08:40:49 -07:00
9e211c64ce docker_container: improve image finding / change detection (#62971)
* Improve image finding / change detection.

* Checked wrong object.

* Improve behavior. (Let docker daemon sort this out.)

* Add changelog.

* Add simple test.

* Fix image name.

* Use new docker_image params.

* Rewrite.

(cherry picked from commit 41eafc2051)
2019-11-01 08:40:49 -07:00
9fd70e3f3c Fix whitespace issue in filter (backport 2.9)
This fixes reported issue #60276

This is a backport of #62768
2019-11-01 08:40:49 -07:00
bdaa8baacb docker_container: fix idempotency for network IP addresses (#62928)
* Specifying IP addresses needs API version 1.22 or newer.

* Simplify code.

* Use IPAMConfig.IPv*Address instead of IPAddress and GlobalIPv6Address.

* Add changelog.

* Fix syntax errors.

* Add integration test.

* Don't rely on netaddr.

* Normalize IPv6 addresses before comparison.

* Install netaddr, and use it.

(cherry picked from commit 62c0cae29a)
2019-11-01 08:40:49 -07:00
25ff3d491a Fix _validate_csr_subject and _validate_csr_signature (#62790)
On python 3, if there is no explicit "return True", the
function call will be seen as "False", thus failling the module

(cherry picked from commit 75c4e9ec05)
2019-11-01 08:40:49 -07:00
de4d3dc34d ACME modules: make compatible to Buypass ACME v1 CA, and fix bug in ACME v1 account update (#61693)
(cherry picked from commit c6dcf78f53)
2019-11-01 08:40:49 -07:00
d55f7a0d26 Backport/2.9/docs release (#64173)
* docs: update to latest 3 versions (#64109)

(cherry picked from commit 409545825f)

* update too old version to 2.4 (#64167)

(cherry picked from commit c63ef6d911)

* update backport instructions to use stable-2.9 (#64168)

(cherry picked from commit f264e9cfca)

* [Doc-Release-2.9] update release and maintenance page for 2.9 (#64166)
* only 2.4 and earlier used the old changelog system

(cherry picked from commit 3f808d9ed6)
2019-11-01 09:03:23 -05:00
e6751a2d2a change 2.9 to lateset` (#64266) 2019-11-01 08:57:13 -05:00
6cad5e3546 Update Ansible release version to v2.9.0.post0. 2019-10-31 10:59:16 -07:00
24325a05df New release v2.9.0 2019-10-31 09:06:47 -07:00
891d801905 fixed changelog spelling issues (#64106) 2019-10-30 12:46:22 -05:00
381ca99de7 fix spelling issues (#64103) (#64107)
(cherry picked from commit 26236f474b)
2019-10-30 12:43:32 -05:00
b80ca85a69 Backport/2.9/docs (#64073)
* clarify no subfolders and md only for collections /docs folder (#63808)

(cherry picked from commit 6a2902c8d5)

* Fixed example error in windows_winrm user guide (#63922)
The example code to configure TLS 1.2 Support using Ansible had an indention error. The register variable 'enable_tls12' was not indented. This caused the subsequent task to fail since the variable was not registered. 

(cherry picked from commit c562e17659)

* Fix doc errors in AWS modules (#63851)
* Fix register/debug in aws_batch_compute_environment
* Fix aws_batch_job_queue doc errors
* Fix module naming: `batch_job_queue` > `aws_batch_job_queue`
* Fix missing register
* Update debug task to use modern YAML format
* Fix missing register + debug for lambda_policy
* Fix YAML syntax for elb_application_lb_info module

(cherry picked from commit e4f16368ed)

* Update documentation for package module (#63909)
It is not clear from the documentation that list can be used

(cherry picked from commit 7f2c367d78)

* [ec2_launch_template] Update description of state param (#63147)
Currently, it is not possible to delete specific versions of an ec2 launch template. The module docs incorrectly suggest that there is a `version` param to the module that can be used to do that. This patch aims to correct that error.

(cherry picked from commit 7ea7260753)

* template: Add a space in example block (#63930)

(cherry picked from commit f279715c29)

* revisions to docsite  README (#63957)

(cherry picked from commit 5c962ef859)

* combine galaxy.com install roles details (#63486)

(cherry picked from commit ee8a088205)

* Correct a typo (#64020)

(cherry picked from commit 18f4f0549f)

* Update password.py (#63965)
Update the examples of the password lookup plugin to show how multiple options are joined together.

(cherry picked from commit 92daec5d0b)

* Fix indentation of example (#63789)
Remove no_log since module_defaults aren't displayed like set_fact was

(cherry picked from commit 1e52782d6b)

* add newline to render table correctly (#63769)

(cherry picked from commit 1aee11c860)

* clarified some points on environment keyword usage (#64065)

(cherry picked from commit 885ee62b53)
2019-10-30 12:42:24 -05:00
12820ba64f Update Ansible release version to v2.9.0rc5.post0. 2019-10-23 13:21:18 -07:00
149ff0d3ad New release v2.9.0rc5 2019-10-23 11:18:01 -07:00
07fa9b5187 Backport/2.9/docs (#63814)
* Replaced old DSC links that given 404 (#63556)
Replace DSC links that returned "not found" with updated, working links.

(cherry picked from commit f638f29e44)

* Fix example in pip module documentation (#63462)

(cherry picked from commit d8b9f9fb4f)

* Update vmware ansible modules requirements section (#62797)
Update vSphere Automation Python SDK to the requirement section

Signed-off-by: Jobin George <jgeorge@vmware.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 8a77f17dea)

* Typo usersername should be username (#63671)

(cherry picked from commit 2ef4ac1404)

* Update description for firstmatch option (#62896)

Fixes issue https://github.com/ansible/ansible/issues/62862. The edit makes the description for the `firstmatch` option clearer. The `firstmatch` option was introduced by PR https://github.com/ansible/ansible/pull/33825

(cherry picked from commit aeb0dde7cc)

* Update win_regmerge.py (#63633)
s/windows/Windows/ in title

(cherry picked from commit 4326165be5)

* Example incorrect: server_url is required argument (#63670)
The example "Delete GitLab Group" does not work - requires server_url parameter. This likely applies to all Examples, so this change proposes at least putting in the required parameter in the examples. In future we can remove the soon-to-be deprecated server_url parameter.

(cherry picked from commit b02467961a)

* doc: win_user: fix typo in the description of the groups modifyer (#63743)

(cherry picked from commit 6046386dba)

* Update AWS dev guide to recommend module_defaults and point to CI policy repo (#63589)

(cherry picked from commit 9cda5819b9)

* Add example for port range to win_firewall_rule_module (#63269)

(cherry picked from commit 2e81b813dd)

* added a link to install instruction of OpenSSH (#63548)

(cherry picked from commit cfe2beae46)
2019-10-23 10:05:12 -05:00
e1b9bed57d [stable-2.9] Fix various import sanity test issues. (#63839)
* [stable-2.9] Fix various import sanity test issues.

- Relative imports are now properly recognized.
- Correct script invocation of Ansible modules is used.
- Warnings are now consistently reported as errors.
- Errors are now consistently reported with the file tested.

Resolves https://github.com/ansible/ansible/issues/62723
Resolves https://github.com/ansible/ansible/issues/61884
(cherry picked from commit 92ccdeac31)

Co-authored-by: Matt Clay <matt@mystile.com>

* Changelog entry for ansible-test sanity fixes.

(cherry picked from commit 0923ed56c7)
2019-10-23 07:10:22 -07:00
76c0a0825f [stable-2.9] Fix SSL protocol references in mqtt module. (#63654)
(cherry picked from commit 78eca0eb5d)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-23 07:07:35 -07:00
db5382341d [stable-2.9] AH servers include automation-hub as part of the server configuration. (#63700)
* AH servers include automation-hub as part of the server configuration.

So we don't need to add it here.

Fixes #63699

* Update unittests for the fix to galaxy wait_import_task
(cherry picked from commit cc1ff57)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-10-20 19:03:47 -07:00
3d04f25314 Update Ansible release version to v2.9.0rc4.post0. 2019-10-17 14:59:55 -07:00
289cdb6ea0 New release v2.9.0rc4 2019-10-17 09:56:06 -07:00
ab8f9969af [stable-2.9] Update default-test-container to 1.10.1.
This brings in the final Python 3.8.0 release instead of a release candidate.
(cherry picked from commit 7448084858)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-17 09:10:55 -07:00
118825f4ae [stable-2.9] Fix ansible-galaxy --version (#63636)
* [stable-2.9] Added changelog fragment
(cherry picked from commit 7da37e5)

Co-authored-by: Andrea Tartaglia <andrea@braingap.uk>

* Fixes --version in ansible-galaxy cli

(cherry picked from commit 202ad4f89a)
2019-10-17 08:59:14 -07:00
741b6e65ef [stable-2.9] Galaxy publish fix (#63580)
* Handle galaxy v2/v3 API diffs for artifact publish response

For publishing a collection artifact
(POST /v3/collections/artifacts/), the response
format is different between v2 and v3.

For v2 galaxy, the 'task' url returned is
a full url with scheme:

        {"task": "https://galaxy-dev.ansible.com/api/v2/collection-imports/35573/"}

For v3 galaxy, the task url is relative:

        {"task": "/api/automation-hub/v3/imports/collections/838d1308-a8f4-402c-95cb-7823f3806cd8/"}

So check which API we are using and update the task url approriately.

* Use full url for all wait_for_import messages

Update unit tests to parameterize the expected
responses and urls.

* update explanatory comment

* Rename n_url to full_url.

* Fix issue with overwrite of the complete path

* Fixes overwrite of the complete path in case there's extra path stored
  in self.api_sever
* Normalizes the input to the wait_import_task function so it receives
  the same value on both v2 and v3

Builds on #63523

* Update unittests for new call signature

* Add changelog for ansible-galaxy publish API fixes.
(cherry picked from commit 4cad7e4)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-10-16 18:24:40 -07:00
b04d328b3a Backport/2.9/docs2 (#63524)
* Update sros_config.py (#63132)

(cherry picked from commit b3deab4319)

* add note about collection links (#63346)

(cherry picked from commit bdd0fac606)

* Nosh module documentation update (#63303)
* detail the 'status' dictionary
* did not add individual descriptions, see nosh documentation for those
* sample: False not being rendered unless 'False' is quoted

(cherry picked from commit df283788e5)

* Move galaxy appendix info to a new Galaxy section (#63356)
* start galaxy docs restructure
* shared snippets in txt files
* moved all content to galaxy section

(cherry picked from commit ae265bc546)

* Enter should be Italics as it is a menu option (#63441)

(cherry picked from commit 7a8c909876)

* ini_file: remove incorrect documentation (#63394)

(cherry picked from commit ab249a469e)

* Changed with_items to loop in VMware example (#63022)

(cherry picked from commit 876a2d57be)

* ovirt update fetch_nested param doc (#63191)

(cherry picked from commit 0beab6bf69)

* Update 'delete' parameter description in synchronize module (#63450)

Co-Authored-By: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit da46800f1b)

* Update unarchive.py - Further clarify extra_opts (#58102)
Update the description in the options to help assist with what the module is looking for in the extra_opts.  #31873 alone is not enough since if you are not familiar with the option given in the example it may not be obvious that both elements are part of the same option instead of being two different options.

Co-Authored-By: Alicia Cozine <879121+acozine@users.noreply.github.com>
(cherry picked from commit e967060b9f)

* ovirt_vm add warning about next run configuration (#63458)

(cherry picked from commit 16e49fdd44)

* Fix doc - porting_guide_2.8 value example (#63493)

(cherry picked from commit e0f67b58ce)

* Fix warnings for ufw examples (#63505)

(cherry picked from commit e4eea0510c)
2019-10-16 10:26:31 -05:00
db2e1d9227 Backport/2.9/docs (#63521)
* Update stat.py (#63289)
Reword awkward documentation language.

(cherry picked from commit b46299ff86)

* Update win_disk_facts.py example (#63266)
Fix incorrect index for second disk (should be `disks[1]` not `disks[0]`)

(cherry picked from commit ce1c8c24f7)

* Fix broken link (#63185)

(cherry picked from commit 021d095625)

* Typo on line 161 (#63133)
fix module name for azure_rm_manageddisk in one example

(cherry picked from commit 81a614684a)

* docs: add Centos and Ubuntu to examples for playbook conditionals (#63085)

Co-Authored-By: Sandra McCann <samccann@redhat.com>
(cherry picked from commit 19587b35da)

* Spot instance code error (#63246)
Adds 'instance_initiated_shutdown_behavior: terminate' to spot instance example for greater efficiency.

(cherry picked from commit 5ed163ce3f)

* Pass a JSON file to the Lambda's payload (#63261)
* Add an example of passing a JSON file to the Lambda's payload
Events passed to Lambda are commonly in JSON format, the change provides an example of using JSON file as an alternative to the inline YAML payload in the other examples.

(cherry picked from commit 1d5206f53e)

* Update ec2.py (#63260)
Change the explanation of spot_wait_timeout

(cherry picked from commit 719170e5c1)

* fix aruba_config examples (#63136)

(cherry picked from commit 6ff5968781)

* [ec2_launch_template] Update examples (#63152)
- Update tasks names for existing examples
- Add a new example showing how to delete a launch template

(cherry picked from commit 32980f214a)
2019-10-16 10:24:38 -05:00
bbc7c2d2ea [2.9] Fix return value documentation (#63529)
* Fix return value documentation (1/2) (#63477)
* Avoid validation errors for missing 'contains:'.

(cherry picked from commit 6bea1597cc)

* Fix return value documentation (2/2) (#63478)
* Avoid validation errors for missing 'contains:'.
* Convert JSON text to JSON dict.
* example -> sample.
* Fix YAML.

(cherry picked from commit 4bc298af83)
2019-10-16 10:21:50 -05:00
7a326e876b mysql_user: add seealso (#63497) (#63500)
(cherry picked from commit ecf71dd720)
2019-10-15 13:58:02 -05:00
b500ab3232 [stable-2.9] Ensure we preserve the /api appended URL (#63472)
(cherry picked from commit d8389d9)

Co-authored-by: Matt Martz <matt@sivel.net>
2019-10-14 14:33:10 -07:00
f610ed3a4e [stable-2.9] Properly mask no_log values is sub parameters during failure (#63405)
* Get no_log parameters from subspec

* Add changelog and unit tests

* Handle list of dicts in suboptions

Add fancy error message (this will probably haunt me)

* Update unit tests to test for list of dicts in suboptions

* Add integration tests

* Validate parameters in dict and list

In case it comes in as a string

* Make changes based on feedback, fix tests

* Simplify validators since we only need to validate dicts

Add test for suboptions passed in as strings to ensure they get validated properly and turned into a dictionary.

ci_complete

* Add a few more integration tests
(cherry picked from commit e9d29b1fe4)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-10-14 14:31:16 -07:00
cfa6835f04 docker_* modules: docs improvements (#63165) (#63299)
* Improve docker_container docs.
* Fix usage of C(...) and I(...) and abuses of I(...).
* tls_verify has been made an alias of validate_certs some time ago.
* Fix YAML problems, order, formatting.
* Split long description.
* Rewrite state docs and make proper sentences.

Co-Authored-By: Andrey Klychkov <aaklychkov@mail.ru>

(cherry picked from commit 5349b3ae4c)
2019-10-11 13:28:20 -05:00
84ad291b3e Improve type documentation. (#62179) (#63142)
(cherry picked from commit a59b9d4269)
2019-10-11 13:25:26 -05:00
1ea7fc2f4c add ios/iosxr deprecated modules (#62992)
(cherry picked from commit 9b69e02882)
2019-10-11 13:23:59 -05:00
d59de7123a adapt to firewalld 0.7.0 for RHEL 8.1 Beta, Fedora 31+
Fixes #63254

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-10-11 07:37:32 -07:00
baeff7462d Wrap CLI passwords as AnsibleUnsafeText (#63352)
* isa string should rewrap as unsafe in get_validated_value

* _is_unsafe shouldn't be concerned with underlying types

* Start with passwords as text, instead of bytes

* Remove unused imports

* Add changelog fragment

* Update changelog with CVE
2019-10-10 19:49:34 -07:00
7417d53546 Update Ansible release version to v2.9.0rc3.post0. 2019-10-10 16:52:11 -07:00
40f415ba35 New release v2.9.0rc3 2019-10-10 15:17:53 -07:00
5b6e8590cf fix default collection resolution in adhoc (#63298)
* fix default collection resolution in adhoc

* if an adhoc command is run with a playbook-dir under a configured collection, default collection resolution is used to resolve unqualified module/action names

* Set ANSIBLE_PLAYBOOK_DIR in integration tests.

* Fix config conflict in ansible integration test.

* add adhoc default collection test

* text-ify warning string

(cherry picked from commit 6d52bdf4db)
2019-10-10 14:54:14 -07:00
1ca6667a2f [2.9 backport] config encode errors should not be fatal (#63311) (#63312)
* config encode errors should not be fatal (#63311)

* fixes #63310
* subset of fixes from #58638
* added warning on error

(cherry picked from commit 77de663879)

* bring back text-ification from #63349
2019-10-10 13:55:29 -07:00
ae3a79fa58 backport of galaxy trailing api fix (63238) to stable-2.9 (#63293)
* Stop appending '/api' to galaxy server url (#63238)

* Stop appending '/api' to configured galaxy server url

Since not all galaxy REST api server URLs live
at '/api', stop always appending it to the
'url' value loaded from config.

* Add note about manually migrated galaxy configs and /api

* Add '/api/' to galaxy url and guessing if galaxy API

* Fix most unit tests (update to expect /api/)

* Fix test_initialise_unknown unit test

Since we retry now with an added /api/, mock it as well.

* Update fallback default avail_ver to new format

(cherry picked from commit bad72693e4)

* Add changelog fragment galaxy_api_config

* Fix galaxy url use everywhere when url is set in config. (#63286)

In addition to trying the configured url (for ex, a migrated
'https://galaxy.ansible.com/') there is an attempt at that
URL with '/api' postpended.

If the extended URL works, update GalaxyAPI.api_server to
use the extended URL. Previously it only used it for finding
the API root info ('available_versions', etc)

(cherry picked from commit ed203c5902)
2019-10-10 09:31:22 -07:00
37b4a5089e [2.9] Fix STS assume role error message when role does not exist (#63307)
* Fix STS assume role error message when role does not exist (#63249)

AWS appears to have changed this error message again.
Fixes https://app.shippable.com/github/ansible/ansible/runs/145643/115/tests

* [2.9] Fix STS assume role error message when role does not exist

* fix changelog sanity
2019-10-10 09:30:09 -07:00
e05938e05e [stable-2.9] cronvar - use correct binary name (#63279) (#63338)
* [stable-2.9] cronvar - use correct binary name (#63279)

Fixes regression introduced by #62554
Add integration tests for cronvar.
(cherry picked from commit 9d014778ad)

Co-authored-by: Sam Doran <sdoran@redhat.com>

* cron: add integration tests (#59830)

* cron: add integration tests

Use faketime in order to reduce waiting time. Using opensuse15
container:

    Tuesday 30 July 2019  23:03:19 +0000 (0:00:05.410)       0:01:28.291 **********
    ===============================================================================
    cron : install cron and faketime packages ------------------------------ 78.65s
    cron : wait 70 seconds max ---------------------------------------------- 5.41s
    Gathering Facts --------------------------------------------------------- 0.97s
    cron : enable cron service ---------------------------------------------- 0.72s
    cron : Use faketime with cron service ----------------------------------- 0.71s
    cron : command ---------------------------------------------------------- 0.41s
    cron : create directory for cron drop-in file --------------------------- 0.41s
    cron : add cron task ---------------------------------------------------- 0.40s
    cron : command ---------------------------------------------------------- 0.25s
    cron : command ---------------------------------------------------------- 0.25s
    cron : include_vars ----------------------------------------------------- 0.06s

* cron test, simplify: use Environment instead ExecStart

Thanks to mscherer for the suggestion.

* clean up comment: remove reference to outdated path

$OUTPUT_DIR is a plain path which doesn't reference any other
environment variables

* cron test: display elapsed time

* cron test: display some logs in case of failure

* cron test: handle FreeBSD

* cron tests: add checks

(cherry picked from commit 3c8abc0b82)
2019-10-10 08:06:08 -07:00
d0a4f0fdbe [stable-2.9] Add RHEL 8.1b to the Shippable test matrix.
(cherry picked from commit 811127d64d)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-09 14:23:48 -07:00
6e0eafa3a7 add ANSIBLE_PLAYBOOK_DIR envvar support (#63220)
* add ANSIBLE_PLAYBOOK_DIR envvar support

* allows `ANSIBLE_PLAYBOOK_DIR` envvar as a fallback on CLI types that support `--playbook-dir`. This should have been implemented with #59464, but was missed due to an oversight.
* added basic integration test

* make first-class PLAYBOOK_DIR config entry

* update changelog

(cherry picked from commit fd229dcbb5)
2019-10-09 10:44:50 -07:00
bcd118c771 Backport/2.9/docs3 (#63251)
* Fixing typo mistake in testbed with section. Deploy template from content library is supported from 67U3

(cherry picked from commit c6c13b5626)

* Typo fix in mssql_db (#63184)
Changed from 'then' to 'than'

(cherry picked from commit b5cc0872e7)

* VMware: Update maintenance notes on vmware_cfg_backup (#62853)
Maintenance mode seems only to be required for load or restet, not for save_configuration. 

(cherry picked from commit e977e0af74)

* Misc typo in nxos_config documentation (#62629)
* Changed 'exit' to 'exist'
* Removed unnecessary word 'first'

(cherry picked from commit 0554b50eed)

* postgresql: add elements for list params to the module's documentation (#63186)

(cherry picked from commit 8a37a2440e)

* mysql: add elements for list params to the modules' documentation (#63187)

(cherry picked from commit 30c2d21f17)

* Add spaces around {{ indicators. (#63125)
The example looked a little less readable by not having spaces after `{{` and before `}}`. This commit should make the examples match [ansible-lint rule 206](https://github.com/ansible/ansible-lint/blob/master/lib/ansiblelint/rules/VariableHasSpacesRule.py)

(cherry picked from commit b7a9d99cef)

* fix typo in collection/plugins/readme (#63162)

(cherry picked from commit da1a945088)

*  Docs: User guide overhaul, part 1 (#63056)

(cherry picked from commit 941a9b68fc)
2019-10-09 09:13:24 -05:00
0ca9624802 Backport/2.9/docs2 (#63250)
* Concise file module example description (#62932)
A file won't be created by the example, the execution would fail unless the file already exists as specified by the module options

(cherry picked from commit 87a6f8397e)

* Added suffix note to process_name_exact parameter (#62849)

(cherry picked from commit 992b81e8fc)

* Fix broken link to powershell resources (#62845)
The previous link (https://docs.microsoft.com/en-us/powershell/dsc/builtinresource ) is a 404 . MS has a new link https://docs.microsoft.com/en-us/powershell/dsc/resources/resources  with the same content

(cherry picked from commit cae4255a16)

* Update playbooks_environment.rst (#62800)

(cherry picked from commit cea8a222a3)

* Update win_dsc.py (#62863)

(cherry picked from commit 798c5a55fa)

* Adjust documentation for yum clean to use best practices (#62898)
The yum module docs suggested using `shell: yum clean all`, which gives an `ansible-lint` error. Plus, you should use the `command` module unless you need more advanced features than just passing in an arbitrary command. Fixes that problem by using the `command` module in the example instead.

(cherry picked from commit 1e6fd6f54d)

* This should never have been "support:network" (#63068)

(cherry picked from commit 7ae46329f2)

* Add docs on hiding sensitive data in loops (#63096)

(cherry picked from commit 0311897722)

* Doc updates to openssl_certificate and ecs_certificate (#63006)
* Update lib/ansible/modules/crypto/entrust/ecs_certificate.py

Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit e55f46f302)

* Update intro_installation.rst (#62994)

(cherry picked from commit f2214951c5)

* Update xml.py (#63128)
Update example to remove escape characters in front of special characters as it is not needed to add explicitly anymore with latest ansible version

(cherry picked from commit 82a6f9d198)
2019-10-08 19:45:25 -05:00
4e5c13e075 Backport/2.9/docs (#63247)
* add more anchors to collections docs (#62827)

(cherry picked from commit 7e01de96d7)

* add anchors to support galaxy links (#62808)

(cherry picked from commit 1b3bf33bdf)

* doc: fix typos (#62852)

(cherry picked from commit b33ae14949)

* Add some documentation about using plugins in collections (#62465)
- FQCN requirements
- Sharing code in collections
- Limitations with inventory caching

(cherry picked from commit d41050b28b)

* Remove Latin phrases from the docs (#62419)
* add styleguide about avoiding use of latin words

(cherry picked from commit e7436e278f)

* ovirt: Fixing typo in ovirt_disk examples (#62962)

(cherry picked from commit 50dc41cca2)

* vmware guidlines: adjust the location of cloud-config-vcenter.ini.template (#62970)

Update the location of the cloud-config-vcenter.ini.template template.
The file has been moved by: 2e7d36a3f9.

(cherry picked from commit 7ecfa4a471)

* Prefer https:// links in the docs site (#62939)

This is a follow-up of last year's 1a11cec. It deals with links which
at that point either were not present or did not support https://.

(cherry picked from commit c8315bfd60)

* fix minor typos (#62950)

(cherry picked from commit ad580a71c4)

* Modernize Vagrant documentation (#62923)
* By requiring a slightly newer Vagrant version (from 2015) we get the
  same generated Ansible inventory format is still used by today's
  version of Vagrant. That extended inventory format also has the
  benefit of allowing for simpler Ansible examples.
* Switching to a current and supported Ubuntu LTS version.

(cherry picked from commit 0d79013f51)

* add ios/iosxr deprecated modules (#62908)

(cherry picked from commit 6bbd9c9eca)
2019-10-08 19:33:58 -05:00
d29802ee46 Updated with slipped dates for the 2.9.0 release (#63243)
(cherry picked from commit 5997d33381)
2019-10-08 14:09:46 -07:00
0ff3bceb22 roadmap should reflect upstream release, not downstream (#61611)
(cherry picked from commit 0e1ec04efb)
2019-10-08 14:09:46 -07:00
6cdd8e5fc2 Add support for automation-hub authentication to ansible-galaxy (#63031)
Adds support for token authentication in Automation Hub. Fixes: ansible/galaxy-dev#96

(cherry picked from commit 239d639fee)
2019-10-08 08:13:38 -07:00
c4446a8f2e [stable-2.9] Fix ansible-test virtualenv real python search.
ansible-test now properly searches for `pythonX.Y` instead of `python` when looking for the real python that created a `virtualenv`.
(cherry picked from commit b91f452f4f)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-08 08:11:26 -07:00
d69852c890 [stable-2.9] Install zip for unarchive test when using dnf.
(cherry picked from commit 86ae3cfa12)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-08 08:10:53 -07:00
f004deaf91 [stable-2.9] Work around ssh-keygen issue in ansible-test. (#63211)
Newer versions of ssh-keygen create PEM keys that are not recognized by Paramiko.

Now ansible-test compensates for this by updating they keys it generates so Paramiko will recognize them.
(cherry picked from commit 022335669c)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-08 07:43:30 -07:00
24e64d1ba1 [stable-2.9] Fix ansible-test integration temp dir location.
Previously the temporary directory used to run integration tests resided under the user's home directory. This prevented ansible-playbook from detecting the default collection when running tests.

Now the temporary directory is created within the collection to facilitate default collection detection.
(cherry picked from commit 4c79f1ec4d)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-08 07:11:10 -07:00
52f52504fe Update Ansible release version to v2.9.0rc2.post0. 2019-10-03 18:27:23 -07:00
eac0319e7a New release v2.9.0rc2 2019-10-03 11:35:02 -07:00
e3b61c40bb IOS-XR: Fix iosxr_lag_interfaces intermittent failures (#62998)
* Fix iosxr_lag_interfaces intermittent failures

*  If the dictionary is read out of order from member
   the current logic in `diff_list_of_dicts` returns
   unwanted diff. Hence use `dict_diff` utils
   function instead of sets.

Remove zip() to make existing tests happy

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Address review comments

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 69317a9d3e)

Add changelog for iosxr_lag_interfaces fix
2019-10-03 11:24:27 -07:00
6d5cac5f51 [stable-2.9] Fix nxos_l3_interfaces module and tests (#62545)
* Fix nxos_l3_interfaces module and tests

* Use get_interface_type

* get_interface_type in utils lib

(cherry picked from commit 918f768890)
2019-10-02 17:36:04 -07:00
27ef947b84 Default collection install path to first path in COLLECTIONS_PATHS
(cherry picked from commit 70feb012b3)
2019-10-02 15:01:20 -07:00
42f16219b6 dnf - properly handle idempotent removal of wildcard globs (#63034)
Signed-off-by: Adam Miller <admiller@redhat.com>
2019-10-02 11:41:29 -07:00
66d4d8c494 Fix and reenable hcloud_network_info tests 2019-10-02 10:34:34 -07:00
ce7ebd30e8 [stable-2.9] Limit Shippable matrix check to ansible repo.
(cherry picked from commit ada02f1966)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-10-01 11:53:18 -07:00
32c8de5797 [stable-2.9] Fixes to the rpm dependencies
* Remove duplicate bundled provides line in the rpm spec file
* Remove jmespath and passlib on RHEL7 as these are optional dependencies
  which aren't shipped with RHEL7
(cherry picked from commit 593d639)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-09-30 22:52:03 -07:00
4dda11a770 [stable-2.9] Exclude tmp dir from ansible-test results copy.
This fixes test errors related to failures copying temporary test results files from a remote system back to the local system.

It also speeds up processing of test results and reduces network utilization by avoiding the temporary files.
(cherry picked from commit 3f2380ccce)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-30 16:26:00 -07:00
042143177c docker_container: document some of the unexpected behaviors. (#62325) (#62944)
(cherry picked from commit fd627e3b78)
2019-09-30 15:06:12 -04:00
56054beac8 [stable-2.9] find - clarify description of 'contains' (#62445) (#62917)
(cherry picked from commit 2375fd0990)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-09-30 15:01:46 -04:00
1902d17744 Improved docs on docker_swarm_service (#62712) (#62889)
* Improved docs on docker_swarm_service

Co-Authored-By: Piotr Wojciechowski <23406016+WojciechowskiPiotr@users.noreply.github.com>

Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit d4064a965b)
2019-09-30 14:58:14 -04:00
2f0f076b71 Fix MSO examples (#62839)
Fix reported issues with the examples.
2019-09-30 14:51:45 -04:00
40c40a9653 Backport/2.9/docs2 (#62805)
* Update pip module docs (#62359)
* Clarifying pip module requirements in reference to #47361
* Further clarifying message with link to ansible_python_interpreter

(cherry picked from commit d3ec5ca80f)

* chore/doc-module: sts_assume_role.py (#62475)
Update `Example` section with with the correct module usage.

(cherry picked from commit a4a216640f)

* Improve dconf documentation to include conversion problems (#62316)

(cherry picked from commit 864928365e)

* Add examples for various inventory setups to the documentation (#62323)
* Updates docs/docsite/rst/user_guide/intro_inventory.rst, closes #12480.
* Use code-block and rename groups in inventory setup examples
* Fix group name in inventory setup example

Co-Authored-By: Sandra McCann <samccann@redhat.com>

(cherry picked from commit 7047b66d34)

* added networking porting guide info (#61999)
* Update docs/docsite/rst/porting_guides/porting_guide_2.9.rst

Co-Authored-By: Nathaniel Case <this.is@nathanielca.se>

(cherry picked from commit 6d35f9026f)

* [docs] split collections into user and dev guide sections (#62363)

(cherry picked from commit 7badeb6df0)

* fixed options (#62605)

(cherry picked from commit 170b4e63ff)

* ec2_vpc_subnet: Rename resource_tags > tags (#62663)

Most of the AWS module documentation refers to `tags` and not
`resource_tags`. This patch updates the documentation to match
other AWS module documentation. 😉

Signed-off-by: Major Hayden <major@redhat.com>
(cherry picked from commit cced1a3cd1)

* [Docs] Document the resource module builder (#62222)

(cherry picked from commit b17581a307)

* Fix link syntax and a typo in dev collections doc (#62650)

(cherry picked from commit 2969614c2c)

* hcloud_volume: clarify volume size units (#62771)

(cherry picked from commit 190b8fcd1c)

* ovirt_host update force doc (#62491)

(cherry picked from commit 3b2b418aad)

* update example document for zabbix_action module (#62667)

(cherry picked from commit 3299f29f7c)
2019-09-30 14:48:15 -04:00
633b089930 package_facts: improve return value documentation (#62725) (#62891)
* Improve documentation for package_facts.
* Add sample return value.

(cherry picked from commit 1520eba0a7)
2019-09-30 14:36:14 -04:00
1dcebfd7d0 fixes option names in examples (#62747)
(cherry picked from commit 00cf6d8e9a)
2019-09-30 14:32:12 -04:00
7ad4f6238c Improve type documentation. (#62178)
(cherry picked from commit fbf182c369)
2019-09-30 10:25:50 -07:00
9efac6864d docker_login: fix Python 3 problem in #60381 (#62621)
* Fix Python 3 problem: run_command() returns native strings, not byte strings.

* Add changelog.

(cherry picked from commit 2e5137078d)
2019-09-30 09:19:22 -07:00
b07ac9cb96 Changelog fragment 2019-09-30 09:18:26 -07:00
008bc53150 kubevirt: also add wait_sleep (#61020)
(cherry picked from commit cf86a5e07a)
2019-09-30 09:18:26 -07:00
988d369305 [stable-2.9] Fix ansible-test PYTHONPATH handling.
Running from an installed version of ansible-test now results in tests using a dedicated directory for PYTHONPATH instead of using the site-packages directory where ansible is installed.

This provides consistency with tests running from source, which already used a dedicated directory.

Resolves https://github.com/ansible/ansible/issues/62716
(cherry picked from commit 831e1bf2e0)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-30 09:17:57 -07:00
2a68bc0c29 mongodb_replicaset/test: properly kill the nodes
The `pids` module returns the list of the PID in a `pids` key.

This change ensures we correctly wait for the end of the previous mongod
instances before we start the next ones.

In addition, we remove an unnecessary `ignore_errors`.

See: #61938

Original PR: https://github.com/ansible/ansible/pull/62627
(cherry picked from commit cee55ab718)
2019-09-24 11:28:52 -07:00
fc1d7f9e5a VMware: Remove mentions of enable_vsan from vmware_cluster_ha example (#62616)
* VMware: Remove mentions of enable_vsan from vmware_cluster_ha example
* Add changelog fragment

(cherry picked from commit 0c66e7ef10)
2019-09-20 12:32:12 -07:00
e44c77fe0a Update Ansible release version to v2.9.0rc1.post0. 2019-09-20 12:06:34 -07:00
6c3726f3e1 New release v2.9.0rc1 2019-09-20 09:21:38 -07:00
895d3c1c1e [stable-2.9] k8s: apply no longer the default behaviour (#62632) (#62666)
* [stable-2.9] k8s: apply no longer the default behaviour (#62632)

There are too many lingering uncertainties about the correctness of
apply behaviour. All tests seem to suggest it works, and it's definitely
performed well in real world application, but it may be a breaking
and unexpected change to default to apply

We will let apply bed in during 2.9 and allow people to opt in, we
may default to it in future (or not)
(cherry picked from commit bb0fa0a)

Co-authored-by: Will Thames <will@thames.id.au>
2019-09-20 09:02:41 -07:00
de3e76ad98 Fix test_galaxy failing test (#62624)
(cherry picked from commit 85eba9d860)
2019-09-19 13:37:17 -07:00
b443f980e7 New release v2.9.0rc1 2019-09-19 12:25:26 -07:00
eae2e0d1f4 Add a representer for AnsibleUnsafeBytes (#62598)
* Add a representer for AnsibleUnsafeBytes

* changelog

* Add unit tests

Remove native string test until we have time to evaluate how this the function should work
Add non-ASCII characters to test cases

* Compare to the string on Python 2

Add a comment in the test about this behavior
(cherry picked from commit 4cc4c44dd0)
2019-09-19 12:12:48 -07:00
d58d2bc875 [Backport 2.9] vyos: Fix to give no traceback on empty config (#62568)
* vyosnoconfig tracebackfix (#62518)

* vyosnoconfig tracebackfix

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* vyos noconfig tracebackfix test cases added

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* test/integration/targets/vyos_lldp_global/tests/cli/empty_config.yaml

(cherry picked from commit b24f7d2800)

* empty config traceback fix

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>
2019-09-19 12:03:43 -07:00
6dd81d3c46 nsupdate: Don't mention the Microsoft DNS server (#62330)
Microsoft's DNS server uses GSS-TSIG to secure Dynamic DNS
updates. That is a Kerberos based form of TSIG neither supported by
the Ansible nsupdate module nor the underlying dnspython module.

Related to #57294 and #62238.

(cherry picked from commit 70a33c3140)
2019-09-19 11:30:08 -07:00
7750d30eb4 temporarily disable hcloud_network_info tests
`hcloud_network_info` tests are currently broken in `stable-2.9`.

See: https://github.com/ansible/ansible/issues/62606
2019-09-19 10:11:02 -07:00
2abdb4ee7b Pull request for temp/backport-60947 (#62596)
* Check module names in action plugin without collection attached (#60947)

* Check for eos_config in action plugin by module name, not entire fqmn

* Modify toher action plugins to find module name

* Restore missing `not`

* Cover netconf plugin as well

* Whoops

(cherry picked from commit e89048f68a)

* Add changelog entry

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-09-19 10:04:02 -07:00
50782978c7 Backport/2.9/62571 (#62577)
* modify vmss to support specialized (#62571)

(cherry picked from commit 558ce6575d)

* add changelog

* additional change
2019-09-19 10:02:17 -07:00
227efbc7ae [Backport/2.9/61684]Update ce_ospf to fix bugs (#62597)
* Update ce_ospf to fix bugs

(cherry picked from commit 1583c5ead2)

* Update ce_ospf modified information
2019-09-19 07:39:24 -07:00
3d5367243b [Backport/2.9/62498]update ce_static_route to fix bugs (#62593)
* update ce_static_route to fix bugs

(cherry picked from commit 9a458d658f)

* Update ce_static_route modified information
2019-09-19 07:38:50 -07:00
34609a0973 Fix traceback empty config error to meaningful msg for IOS (#62572)
* Fix traceback empty config error to meaningful msg for IOS (#62538)

* fix empty config msg

* fix space

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
(cherry picked from commit 35463d45f4)

* changelog
2019-09-19 07:33:26 -07:00
b8e905cd4d Backport/2.9/62559 (#62570)
* snapshot fix for backporting (#62559)

(cherry picked from commit 054519920e)

* changelog fragment
2019-09-19 07:27:34 -07:00
5a99d473d3 Ensure k8s apply works with check mode (#60572)
* Ensure k8s apply works with check mode

Update the new predicted object with fields from the previous object
before applying in check mode

Don't log output of `file` with `state: absent` on huge virtualenvs!

Fixes #60510

* Use openshift client fix to improve apply for check mode

Use new apply_object method to get a better approximation
of the expected object in check mode.

Requires released upgrade to openshift

* Add changelog fragment for k8s apply check mode fix

* Update changelogs/fragments/60510-k8s-apply-check-mode.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>
(cherry picked from commit a684bb9f5b)
2019-09-18 21:10:06 -07:00
1bb6d3c21a [stable-2.9] Disable setting of -s in shebang
RPM builds on Fedora and RHEL create a python shebang line with -s

This is not good for ansible since ansible has a lot of optional
features which need extra dependencies installed.  If the user installs
those extra dependencies to their home directory or to /usr/local then
the -s will keep them from being used.
(cherry picked from commit bebb11b)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-09-18 20:37:00 -07:00
6aa02a74fe [stable-2.9] cron - Only run get_bin_path() once (#62554)
(cherry picked from commit b7897e3a8d)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-09-18 19:05:47 -07:00
b1ba759862 Fix plugin names for collection plugins. (#60317)
* Fix plugin names for collection plugins.

Add an integration test to verify plugin __name__ is correct for collection plugins.

* Fix collection loader PEP 302 compliance.

The `find_module` function now returns `None` if the module cannot be found. Previously it would return `self` for modules which did not exist.

Returning a loader from `find_module` which cannot find the module will result in import errors on Python 2.x when using implicit relative imports.

* add changelog

* sanity/units/merge fixes

(cherry picked from commit 1c64dba3c9)
2019-09-18 19:04:51 -07:00
741b49a247 psexec - Fix kerb and interactive support (#62556)
(cherry picked from commit 064e443ea5)
2019-09-18 19:03:20 -07:00
9bbaa0d688 fix collection jinja2 cache issue (#62543)
* prevents premature lookup (and potential KeyError) of Jinja filter/test function cache that's not fully populated

(cherry picked from commit d0c7b42e58)
2019-09-18 19:02:32 -07:00
3d00ffc154 Add link to become plugins in become docs (#62462)
(cherry picked from commit d16ee65ecd)
2019-09-18 16:02:49 -07:00
7f7acd915a [stable-2.9] cron - Use the default crontab executable in cron and cronvar modules (#59765)
In some remote environments, the `crontab` executable is
overloaded with a custom executable, which typically does
some pre/post processing before forwarding to crontab.

Instead of using the hardcoded `/usr/bin/crontab`, this uses
the `get_bin_path` utility to locate the default crontab executable.
(cherry picked from commit 951a80c8b0)

Co-authored-by: Jean-Frédéric <JeanFred@users.noreply.github.com>
2019-09-18 16:01:55 -07:00
0b7fec8b11 Remove unsed / duplicate imports for iosxr module_utils (#61385)
(cherry picked from commit 5a60bdd308)
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-09-18 15:59:34 -07:00
74d33e5e44 Add hint for config option priority (#62463)
* Add hint for config option priority

* Fix some spelling issues

(cherry picked from commit bf5b6695ec)
2019-09-18 15:59:03 -07:00
cfd6b3d708 win_exec_wrapper - Be more defensive when trying to get output errors (#62376)
* win_exec_wrapper - Be more defensive when trying to get output errors

* Fix up property search

(cherry picked from commit bad338aca6)
2019-09-18 15:57:47 -07:00
bf5444ddae To fix delete to pass the right parameters wrt to Checkpoint modules (#62540)
* fix delete to pass the right parameters (#62525)


(cherry picked from commit 2232232b45)

* changelog
2019-09-18 13:19:05 -07:00
45f573d2ed PR to fix if equals error code command is not found (#62539)
* fix if equals error code if command not found (#62529)


(cherry picked from commit 55f285a384)

* changelog
2019-09-18 11:37:36 -07:00
26a615a6f8 PR to fix the traceback session uid error (#62527)
* fix session_uid (#62523)


(cherry picked from commit cf8e84fc62)

* changelog
2019-09-18 09:28:54 -07:00
a3ff8e0579 Add fix for specifying current dir in collections_paths (#62478)
(cherry picked from commit 2e1c6a7839)
2019-09-18 09:27:27 -07:00
b300cbf757 Pull request for temp/unused-import-backports (#62472)
* Remove unsed import for eos facts module (#61795)

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit f81b7dd10a)

* Remove unused import for cisco ios facts (#61790)

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 44eaea9f80)

* Remove unsed import for junos facts (#61787)

This is no longer needed.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 7be672e1c2)

* Remove unused import from iosxr facts (#61785)

This is no longer needed and can be removed.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit c723eb2f04)

* Remove unused import for vyos facts (#61784)

This is no longer needed and can be removed.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
(cherry picked from commit 736938625b)

* Add changelog entry

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-09-18 09:26:52 -07:00
ef94e3c72a [stable-2.9] Backport default-test-container updates. (#62473)
* Update default test container with Python 3.8b4 (#62100)

* [stable-2.9] test: bump default-test-container

VMware VSphere SDK needs an up to date version of `pip` for the
installation step. With the current image, we face the following error:

```
(...)
02:27 Collecting git+https://github.com/vmware/vsphere-automation-sdk-python.git (from -r /root/ansible/test/lib/ansible_test/_data/requirements/integration.cloud.vcenter.txt (line 2))
02:27   Cloning https://github.com/vmware/vsphere-automation-sdk-python.git to /tmp/pip-req-build-pm27t16b
02:33 Requirement already satisfied: pyvmomi in /usr/local/lib/python3.6/dist-packages (from -r /root/ansible/test/lib/ansible_test/_data/requirements/integration.cloud.vcenter.txt (line 1)) (6.7.1.2018.12)
02:33 Requirement already satisfied: lxml>=4.3.0 in /usr/local/lib/python3.6/dist-packages (from vSphere-Automation-SDK==1.4.0->-r /root/ansible/test/lib/ansible_test/_data/requirements/integration.cloud.vcenter.txt (line 2)) (4.4.0)
02:33 Processing ./\\localhost/tmp/pip-req-build-pm27t16b/lib/vapi-runtime/vapi_runtime-2.12.0-py2.py3-none-any.whl
02:33 Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '/root/ansible/\\\\localhost/tmp/pip-req-build-pm27t16b/lib/vapi-runtime/vapi_runtime-2.12.0-py2.py3-none-any.whl'
```

Bump default-test-container to 1.9.3 to get an up to date release of
`pip` (was 19.0.2, is now 19.2.3)..
(cherry picked from commit b68f5b406a)

Co-authored-by: Gonéri Le Bouder <goneri@lebouder.net>

* Add missing changelog fragments. (#62471)

* Add missing default-test-container 1.9.2 fragment.
* Add missing default-test-container 1.9.3 fragment.
2019-09-18 09:12:29 -07:00
82879b03f7 [Backport/2.9/61774]Update ce_stp to fix bugs (#62512)
* Update ce_stp to fix bugs

(cherry picked from commit c62a0b35c7)

* Update ce_stp modified information
2019-09-18 07:31:06 -07:00
c202f39f47 [Backport/2.9/61842]Update ce_snmp_target_host to fix bugs (#62509)
* Update ce_snmp_target_host to fix bugs

(cherry picked from commit 76016f9988)

* update ce_snmp_target_host to fix bugs
2019-09-18 07:30:14 -07:00
f45db211e7 [Backport/2.9/61843]Update ce_snmp_traps to fix bugs (#62507)
* Update ce_snmp_traps to fix bugs

(cherry picked from commit fd11b82272)

* update ce_snmp_traps to fix bugs
2019-09-18 07:28:27 -07:00
2549af3f23 [Backport/2.9/61995]Update ce_vxlan_arp to fix bugs (#62505)
* Update ce_vxlan_arp to fix bugs (#61995)

* Update ce_vxlan_arp to fix bugs

* Update ce_vxlan_arp to fix bugs

(cherry picked from commit 12512f7319)

* update ce_vxlan_arp to fix bugs
2019-09-18 07:27:51 -07:00
a0fb290a87 cloudformation_info - fix KeyError (#62290)
* cloudformation_info - fix KeyError

* changelog

(cherry picked from commit 66e5427ffb)
2019-09-18 07:27:00 -07:00
c0f2a2df2a [Backport/2.9/61996]update ce_vxlan_vap to fix bugs (#62503)
* Update ce_vxlan_vap to fix bugs

(cherry picked from commit 2db73601ba)

* update ce_vxlan_vap to fix bugs
2019-09-18 07:25:16 -07:00
ff9873beaa [stable-2.9] Stabilize nxos initiated copy for nxos_file_copy plugin (#62355)
* Retry spawn connection on failure

* Add debug logs

* Additional debug logs

* Close session before respawn attempt

* More debug info and increase loops

* Remove debug info and reset error dict on reconnect

* Add epdb debuger

* Add epdb debuger

* Add epdb debuger

* Wait before sending password and close pexpect session

* Fix comment typo

* Scrub error logs

* Scrub error logs

* Add more specific initial connect pattern

* Fix shippable errors

* Dont make remote_scp_server_password a hard requirement

* Add saftey check

(cherry picked from commit 97b15e9f0c)
2019-09-18 07:22:46 -07:00
6c3911b304 Fix network_cli exec_command connection init (#62344)
* Fix network_cli exec_command connection init

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

*  If `exec_command` method is invoked from module side
   on connection object to execute the command on target
   host check if connection is created if not create the
   connection.

* Fix review comment

(cherry picked from commit 74e4993628)
2019-09-18 07:15:50 -07:00
01a01186db [stable-2.9] Remove obsolete MANIFEST.in entries.
(cherry picked from commit 7d40f6d)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-18 07:13:11 -07:00
303cc6aca5 [2.9] acme_* modules: bump acme-test-container version (#62448)
* Bump acme-test-container version. (#62381)

(cherry picked from commit d8d3790d6a)

* Add changelog fragment.
2019-09-18 07:11:42 -07:00
28055bbf8f Fix traceback error in IOS and IOSXR when ran with empty config (#62423)
* fix changelog

* Fix traceback error in IOS and IOSXR when ran without config (#62400)

* fixes issue 61321

* complete iosxr

* fix ios_vlans

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
(cherry picked from commit 7a5a5e7c87)
2019-09-18 07:10:10 -07:00
37c64b3eb3 Pull request for temp/bgp_61761 (#62469)
* Make *_bgp modules collection safe (#61761)

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add changelog entry

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-09-18 07:02:42 -07:00
4e323de7ef Remove bad sanity ignore entry. 2019-09-17 21:16:20 -07:00
5d4bcea149 [stable-2.9] Remove leading space in warning messages (#62002)
ci_complete
(cherry picked from commit ea6e96985a)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-09-17 18:14:10 -07:00
0d79d993f7 [stable-2.9] Mark ansible-test cloud credentials as sensitive.
(cherry picked from commit 9f7b124a6f)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-17 18:10:32 -07:00
d681c3b0bd Add implicit localhost hostvars note (#61956)
(cherry picked from commit b1afb37ac9)
2019-09-17 16:36:18 -07:00
f81eb42094 fixed build error for docs (#62356)
(cherry picked from commit 7a36606574)
2019-09-17 16:36:18 -07:00
0d56376a4e Fix os_keystone_endpoint endpoint_interface docs (#62283)
The os_keystone_endpoint module has two interface arguments -
'interface' for authentication, and 'endpoint_interface' for the
endpoint being registered. Currently the module documentation only
covers 'interface', when in fact it should cover 'endpoint_interface'
and pick up 'interface' from the standard OpenStack module parameter
documentation.

(cherry picked from commit 448a8c4e5f)
2019-09-17 16:36:18 -07:00
208ca6f4a2 Fix azure_rm_virtualmachinescalesetinstance_info doc error (#62335)
* update azure_rm_virtualmachinescalesetinstance doc to use correct module name in examples

(cherry picked from commit ac56d35e19)
2019-09-17 16:36:18 -07:00
fac9aaf9f1 Update mitogen link (#62247)
(cherry picked from commit 2d19150757)
2019-09-17 16:36:18 -07:00
034eae6332 Updating link for guest_id info (#61988)
(cherry picked from commit c324503f5a)
2019-09-17 16:36:18 -07:00
7e1060c716 Add some details to any_errors_fatal documentation (#62029)
(cherry picked from commit 09f1c286e0)
2019-09-17 16:36:18 -07:00
4881811d66 document suboptions for type:list options too (#62177)
(cherry picked from commit c1773d5d2b)
2019-09-17 16:36:18 -07:00
6f888687af sanity ignores for a collection need to go to tests/sanity/ (#62182)
collections use tests/ not test/ as the folder for tests

(cherry picked from commit 740ec90688)
2019-09-17 16:36:18 -07:00
2c8b706a0c typo: missing-subption-docs → missing-suboption-docs (#62180)
updates the name of the test and all ignore.txt entries

(cherry picked from commit 48a39f5616)
2019-09-17 16:36:18 -07:00
64a2e39c9e fix fact caching plugin name from json to jsonfile (#62198)
(cherry picked from commit dc7a765e57)
2019-09-17 16:36:18 -07:00
1a7e2e02f8 Docs formatting: recursively preprocess suboptions (#61900)
* Simplify code, move option massaging code into own function.
* Process suboptions recursively.

(cherry picked from commit 4393940a41)
2019-09-17 16:36:18 -07:00
c00357aa7d docs: avoid confusing double negation (#62143)
Avoid "no backward incompatible interface" term which uses a double
negation and replaces it with easier "backward compatible interface"
contruct.

(cherry picked from commit 179eb623d7)
2019-09-17 16:36:18 -07:00
afbfd3958e Elaborate on note that docker-priv only works with integration (#62035)
(cherry picked from commit f79d03d292)
2019-09-17 16:36:18 -07:00
4c8fa415b1 test: disable hcloud_floating_ip_info
Temporarily disable `hcloud_floating_ip_info`, this until #62414 is
resolved.

(cherry picked from commit edf15b346f)
2019-09-17 16:33:42 -07:00
cca87ffafb fix typos in network modules (#62320)
* fix typos in network modules
(cherry picked from commit f11429a80d)
2019-09-17 16:32:45 -07:00
ffbda8d153 WIP - Fix ansible-doc bugs and add integration tests. (#62461)
* Add integration tests for ansible-doc.

* Enable tests that now pass

* Cleanup processing of plugin docs

* Mostly separate the steps of processing plugin docs

  1) Acquire source data
  2) Transform and calculate additonal data
  3) Format data for output
  4) Output data

  format_plugin_doc() is still mixing transformation and formatting but
  that should be fixed in a devel-only change

* Raise exceptions in _get_plugin_doc() on errors.

* Remove check to exclude on blacklisted extensions.  We already request
  only .py files

* If there is no DOCUMENTATION entry in the plugin, raise an exception
  from _get_plugin_doc().  Everywhere we use _get_plugin_doc(), this is
  treated as an error

* If there is no ANSIBLE_METADATA raise an exception as well as
  displaying of docs assumes that this has been set.

* If there is neither DOCUMENTATION nor ANSIBLE_METADATA, warn about the
  lack of METADATA and error on the lack of DOCUMENTATION.  Lack of
  DOCUMENTATION is more important so it is what the user should see.

* Add a few special cases for backwards compat.  These should probably
  be made errors in 2.10:
  * no docs but has metadata shows no documentation rather than an error
  * empty plugin file shows no doumentation rather than an error

* Simplify backwards compatibility logic.

(cherry picked from commit 3b86dc3e12)
2019-09-17 16:32:04 -07:00
ffb3e19dc6 [stable-2.9] Fix ansible-doc traceback and sanity test. (#62040)
* Fix ansible-doc traceback for removed modules.

This avoids tracebacks with errors like the following when a module has been removed:

module module_name missing documentation (or could not parse documentation): 'NoneType' object does not support item assignment

* Fix ansible-doc sanity test warning handling.

Warnings about removed modules/plugins on stderr are now properly ignored.

Previously an ansible-doc error could result in unrelated errors going undetected because tests were stopped early and the underlying error was ignored.
(cherry picked from commit 064e8e1ef4)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-17 16:32:04 -07:00
997f272c4e hcloud_networ_info: be more resilient is network already exists
We may already have an existing network or subnet. This commit ensures
we don't raise an error in this case.
e.g: https://app.shippable.com/github/ansible/ansible/runs/143559/145/tests

(cherry picked from commit 459677877a)
2019-09-17 15:52:49 -07:00
51b8daa64d Fix ios_lldp_global enable to enabled raised in issue 61554 (#62440)
* fix ios_lldp_global (#62420)


(cherry picked from commit 9addad0f4a)

* changelog
2019-09-17 14:13:25 -07:00
ec841a086c [stable-2.9] Redact sensitive values by default in ansible-test
(cherry picked from commit 0631e057e9)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-17 13:18:30 -07:00
0484e87cd4 [stable-2.9] Fix "JSON object must be str, bytes or bytearray, not list" (#62418)
* [stable-2.9] Fix "JSON object must be str, bytes or bytearray, not list" (#62350)
(cherry picked from commit 84d9b3e)

Co-authored-by: Nathaniel Case <ncase@redhat.com>

* Add changelog
2019-09-17 11:29:19 -07:00
b9e8a6a170 gather_facts action plugin: Fix loading network facts modules for smart gathering (#59856)
* fix smart gathering for network_os in gather_facts action plugin

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

* Fix detection of network_os for smart gathering

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

* Add unittest

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

* make pep8 happy

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 5cd3be9129)
2019-09-17 11:28:13 -07:00
d4e577bd6d nxos_telemetry replaced state (#62368)
(cherry picked from commit b0668e17ed)
2019-09-17 07:57:13 -07:00
7a668dab06 Backport PR for Check Point Unit tests for the following module from PR 62338 (#62390)
* Network and address range tests (#62338)

* commit network and address_range

* remove test_cp_mgmt_network from ignore.txt

(cherry picked from commit b4dcd7c835)

* changelog

* fix shippable

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-09-17 07:56:58 -07:00
99f22c1751 To fix ios_l3_interfaces resource module round trip failure backport for PR 61642 (#62399)
* To fix ios_l3_interfaces resource module round trip failure (#61642)

* fix 61396

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* add ios_l3_interfaces rtt tests

* remove unnecessary config

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* change test description

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* remove rtt and move to new PR

(cherry picked from commit f9fd1f3626)

* fix changelog
2019-09-17 07:42:56 -07:00
bcd63a6c92 Backport PR for Check Point Unit tests for the following module from PR 62214 (#62405)
* Add unit tests for check_point ansible modules (#62214)

* Update test_cp_mgmt_network.py

* 18 tests

(cherry picked from commit 271825cfaf)

* changelog
2019-09-17 07:36:31 -07:00
fed6c0ace6 Backport PR for Check Point Unit tests for the following module from PR 62213 (#62386)
* Add unit tests for check_point ansible modules (#62213)

* Update test_cp_mgmt_network.py

* 17 tests

(cherry picked from commit c7f9c3f27e)

* changelog
2019-09-17 07:13:11 -07:00
a48f8f229e routeros_facts: fix for error when there's more than 10 interfaces (#62346)
* routeros_facts: fix for error when there's more than 10 interfaces (#61376)

* fix: proper regex for preprocessing routeros output

* test: regression test

* test: fix nondeterministic unit test

* changelog
2019-09-17 07:12:40 -07:00
4df7faa213 Backport PR for Check Point Unit tests for the following module from PR 62216 (#62389)
* changelog

* Forth pr 18 tests (#62216)

* Update test_cp_mgmt_network.py

* 18 tests

(cherry picked from commit ebdf78d6e4)

* fix eol

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-09-17 07:12:06 -07:00
347c10c5ff Backport PR for Check Point Unit tests for the following module from PR 62215 (#62388)
* Third pr 18 tests (#62215)

* Update test_cp_mgmt_network.py

* 18 tests

(cherry picked from commit 3a5c68205c)

* changelog
2019-09-17 07:11:03 -07:00
1148e68049 Backport PR for Check Point Unit tests for the following module from PR 62322 (#62385)
* Commands tests (#62322)

* commands tests

* add space in order to delete it and tun shipable tests again

* delete space in order to run shipable tests again

(cherry picked from commit 47cf4e6565)

* changelog
2019-09-17 07:10:21 -07:00
d009354c74 added file
Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-09-16 22:41:32 -07:00
cc32fc0429 changelog 2019-09-16 22:41:32 -07:00
cfb1f33c79 changelog 2019-09-16 22:41:32 -07:00
e2aaf72d6a unique tests (#62328)
(cherry picked from commit 6bb8861b0e)
2019-09-16 22:41:32 -07:00
e4965be9af fix typos in storage modules (#62333)
(cherry picked from commit f44bfccb56)
2019-09-16 22:40:51 -07:00
e9a16d381d Change enable to enabled for junos_interfaces module (#62321)
Fixes #62319

Change `enable` option to `enabled` in junos_interfaces
and junos_lldp_interfaces
data model to be in sync with other network platform
resource modules added in 2.9 version.

(cherry picked from commit a9a5f4e40d)
2019-09-16 22:38:04 -07:00
54ea1353b3 [stable-2.9] Mark AWS credentials in ansible-test as sensitive.
This avoids displaying the credentials in CI when retrying tests at maximum verbosity.
(cherry picked from commit b73e7721df)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-16 22:12:50 -07:00
7f2ba1aaf8 [stable-2.9] Fix display of sanity test doc links.
The documentation links are now displayed when running from an install.

Previously the links were only displayed when running from source.
This was due to ansible-test checking for the presence of documentation files locally, which are only present when running from source.
The check is no longer necessary since there is a sanity test in place to enforce the presence of documentation for all sanity tests.
(cherry picked from commit 32d965e)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-16 17:20:40 -07:00
34a48dc2ca Re-enable some docker_swarm tests. (#61875)
(cherry picked from commit 098a13dff4)
2019-09-16 17:18:11 -07:00
f4c1378ae5 Update junos_config.py (#62221)
Add the commands alias to match UX of IOS, EOS etc.

(cherry picked from commit 991b865cb6)
2019-09-16 17:13:38 -07:00
3765a08359 Handle cases where normal commit operation throws a prompt (#62132)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit f1766457a2)

Add changelog for iosxr prompt fix
2019-09-16 17:12:28 -07:00
20fee691e3 [stable-2.9] Don't treat no checksum as a checksum match (#62146)
Fixes #61978
* moar tests for get_url fetch behavior with existing file
* add changelog fragment
(cherry picked from commit 7d51cac)

Co-authored-by: Matt Martz <matt@sivel.net>
2019-09-16 16:41:50 -07:00
f7fed1dacc Fix for junos cli_config replace option (#62131)
* Fix for junos cli_config replace option

*  For device that support replace option by loading
   configuration from a file on device `config` option
   is not required and value of `replace` option is the
   path of configuration file on device. This fix allows
   invoking run() function in cli_config if `config` option
   is None and `replace` option is not boolean

*  The command to replace running config on junos device
   is `load override <filename>` and not `load replace <filename>`
   This is fixed in the junos cliconf plugin.

* Add integration test

(cherry picked from commit 200ed25648)
2019-09-16 16:16:05 -07:00
9812e52682 [stable-2.9] VMware: Fix issue with order of changes in vmware_vcenter_statistics (61345) (#62088)
* VMware: Fix issue with order of changes in vmware_vcenter_statistics

* [WIP] VMware: Fix fragile sort order in vmware_vcenter_statistics (#62288)

* vmware_vcenter_statistics: Fix fragile sort order

* vmware_vcenter_statistics: Python 2.6 compatibility

(cherry picked from commit 3e4d5aeee3)
2019-09-16 15:45:35 -07:00
54f23c7ef7 Add proper hostname cleanup for nxos tests (#61810)
(cherry picked from commit c5a4086ed7)
2019-09-16 15:44:10 -07:00
773755de6b Remove choices from gather_network_resources facts and fix negated all, min (#61362)
* remove choices from gather_network_resources facts and allow negating subset without needing to add a new subset specific for negation

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

* negated all, min should not return any fact

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit c1e02d5c7a)
2019-09-16 15:21:14 -07:00
dc2dd97e7d [stable-2.9] fix nxos_config tests for httpapi (#62082)
* fix nxos_config tests for httpapi

* Remove become parameter

(cherry picked from commit c4894b512d)
2019-09-16 15:06:59 -07:00
424feef990 Call get_capabilities to initiate device connection (#62103)
(cherry picked from commit b03091213d)
2019-09-16 15:00:28 -07:00
5aa859d0d7 [2.9] openssh_keypair: make sure public key has same permissions as private key (#62037)
* openssh_keypair: make sure public key has same permissions as private key (#61658)

* Make sure public key has same permissions as private key.

* Add changelog.

* Text, not binary.

(cherry picked from commit c19cea9b03)

* openssh_keypair file permissions/ownership: add porting guide entry (#62176)

* Add porting guide entry for 2.9.

(cherry picked from commit 0e72cbd451)
2019-09-16 14:44:59 -07:00
8df2541983 Fix bfd cmd order and test issues (#61943)
(cherry picked from commit f582d74f7c)
2019-09-16 14:37:13 -07:00
6377e6c9e8 nxos_lacp_interfaces: fix integration test dependencies (#61947)
* nxos_lacp_interfaces: fix integration test dependencies

* Add conditional mode test to m/d/r tests

(cherry picked from commit 6e72893d78)
2019-09-16 14:35:44 -07:00
0b771869ea nxos_l2_interfaces: fix for integration tests failing to setup layer2 (#61887)
(cherry picked from commit c0f3777fe2)
2019-09-16 14:35:10 -07:00
87c9514565 lookup_rabbitmq pika > 1.0.0 is_closing bug fix (#61959)
* In pika v1.0.0 BlockingChannel.is_closing was removed.  Updating
plugin accordingly.

Ref: https://github.com/pika/pika/pull/1034

* Adding change fragment for is_closing bug.

* Updated change fragment description.

(cherry picked from commit 9b149917a6)
2019-09-16 14:33:21 -07:00
0666a2987d [stable-2.9] Connect before reading the prompt? (#61797) (#61883)
* [stable-2.9] Connect before reading the prompt? (#61797)
(cherry picked from commit a365e77)

Co-authored-by: Nathaniel Case <ncase@redhat.com>

* Add changelog

* Update changelogs/fragments/61797-netcli-get_prompt.yaml

Co-Authored-By: Toshio Kuratomi <a.badger@gmail.com>
2019-09-16 14:32:45 -07:00
1219d8381f rabbitmq_publish fix for incorrectly stating message was not published to the queue (#61960)
* Pika v1.0.0 and above were causing issues for publish_message.  Updated
to ensure publish_message works with pika 0.13.1 and 1.0.0 and above.

* Adding changelog fragment for rabbitmq_publish fix.

* Updating return value.

(cherry picked from commit 1b2fd2cb5f)
2019-09-16 13:57:07 -07:00
15b3bab5b7 Always specify header of connection keep-alive regardless of python v… (#62218)
* Always specify header of connection keep-alive regardless of python version.

* Add chgangelog fragment

* Fixes to changelog fragment

(cherry picked from commit 606e13919e)
2019-09-16 13:53:58 -07:00
01eef82ed9 hall: remove the module for supporting nonexistent messenger (#62152)
(cherry picked from commit 8b42de29fa)
2019-09-16 13:51:08 -07:00
ea548bbef5 Set no_log to True for junos_user encrypted_password (#62184)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
(cherry picked from commit 4e6270750a)

Add changelog for junos_user encrypted_password no_log=True

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-09-16 13:50:21 -07:00
e424b1b847 [stable-2.9] Fix ansible-test vcenter test filtering.
The default behavior of the ansible-test vcenter plugin is to use the govcsim container to run tests.

However, unless the govcsim mode was specified using the VMWARE_TEST_PLATFORM environment variable, the filter code would skip the tests unless the tests ran on Shippable or the user had an ansible-core-ci key.

Now the filter correctly recognizes that govcsim is the default.
(cherry picked from commit cd4882e)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-16 13:44:55 -07:00
c59cf1d148 [stable-2.9] Fix ansible-test collections requirements installation. (#62181)
* Fix location of unit test requirements.

* Preserve ansible-test unit test requirements.

* Remove redundant unit test requirements.

* Fix location of network test requirements.

* Preserve ansible-test network test requirements.

* Remove redundant network test requirements.

* Add missing ordereddict requirements.

* Load collection requirements correctly.

* Add changelog fragment.
(cherry picked from commit cdc4926)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-16 13:43:12 -07:00
7dff7b916b [stable-2.9] Ensure we don't erase unsafe context in TaskExecutor.run on bytes (#62287)
* Ensure we don't erase unsafe context in TaskExecutor.run on bytes. Fixes #62237

* Remove unused import

* Add missing import

* use args splatting for to_unsafe_text/bytes

* Add security issue to changelog

* fix yaml linting issue
(cherry picked from commit 5be0668)

Co-authored-by: Matt Martz <matt@sivel.net>
2019-09-16 12:39:52 -07:00
9d6282e633 [stable-2.9] Standardize eos resource modules (#61736)
* Fix eos_l3_interfaces case sensitivity

* Unify EOS module notes

* Add normalize_interfaces to eos_l2_interfaces

* Pull normalize_interface into eos_interfaces

* Add normalize_interface to lag_interfaces

* Add normalize_interface to lldp_interfaces

* Add normalize_interface to lacp_interfaces

* more module cleanup

* Add changelog
(cherry picked from commit 7917d4def7)

Co-authored-by: Nathaniel Case <ncase@redhat.com>
2019-09-16 12:37:40 -07:00
f082d23eec Fix network resource module wording and typographical errors (#61613) (#61779)
(cherry picked from commit 39f35ac5bb)
2019-09-16 13:26:49 -05:00
9b04bf88e4 explicited RouterOS does not support connection: local (#62229)
(cherry picked from commit b8aa87bd06)
2019-09-16 11:03:43 -05:00
0f3011c231 elasticache_info: fix a typo (#62204) (#62254)
(cherry picked from commit a72ea8440a)
2019-09-16 10:34:22 -05:00
a90f23e2fd fix typos in web_infrastructure modules (#62202) (#62255)
(cherry picked from commit 655f771547)
2019-09-16 10:33:39 -05:00
0c39f2e682 fix typos in net_tools_modules (#62201) (#62261)
(cherry picked from commit 6936187bbe)
2019-09-16 10:32:12 -05:00
2467a5a4c1 fix typos in identity modules (#62200) (#62265)
(cherry picked from commit 742eebc92c)
2019-09-16 10:30:25 -05:00
01cc6a82d7 fix typos in commands modules (#62197) (#62269)
(cherry picked from commit 6691527799)
2019-09-16 10:28:05 -05:00
bdbecd298d fix typos in clustering modules (#62196) (#62271)
(cherry picked from commit dee529dc66)
2019-09-16 10:25:49 -05:00
f9b1e256dd Backport of 62336: fix typos in remote_management modules (#62339) 2019-09-16 10:15:41 -05:00
f273a766b3 Allow tower inventory plugin to accept integer inventory_id (#62157)
* Allow tower inventory plugin to accept integer inventory_id

* Use to_native for error messages, fix docs typo
2019-09-16 07:13:09 -07:00
148cdc1268 revert back to contiguous (#62301) (#62305)
(cherry picked from commit f6a51b3f07)
2019-09-13 16:13:08 -05:00
b6335a72f1 fix typos in cloud modules (#62194) (#62274)
* fix typos in cloud modules

* fix typos in cloud modules, fix ci tests

(cherry picked from commit 7e91998049)
2019-09-13 14:10:13 -05:00
3d2157973f Improve documentation on doc fragments (#62219) (#62291)
Add information and examples on how to use additional properties from a doc fragment
Add info about layering properties

(cherry picked from commit 9b348e690c)
(cherry picked from commit 5deb01c84d)
(cherry picked from commit 041c52d629)
2019-09-13 13:40:30 -05:00
6137cddce2 fix typos in modules (#62135) (#62169)
(cherry picked from commit 5eb5f74083)
2019-09-12 15:16:46 -05:00
80c39bd85b Fix typos in database modules and their integration tests (#62125) (#62172)
(cherry picked from commit bcc3620182)
2019-09-12 14:52:54 -05:00
5bcc1b6855 [backport][docs] Backportapalooza docs #2 (#62104)
* docs: Update apt_key.py, add requirements of gpg (#61552)

(cherry picked from commit 5d7d4a93c8)

* Proposals aren't really used much, delete reference from docs (#61800)

(cherry picked from commit 41055b5dc8)

* Update gitlab_hooks docs (#61837)

(cherry picked from commit 223dab99ea)

* Unify ios_logging and eos_logging documentation with accepted options (#61777)

(cherry picked from commit cc9adf7f1a)

* don't set default:None in documentation when there is no default (#61111), otherwise "None" will be rendered as a string on docsite

(cherry picked from commit 1aca1f86b6)

* Update mso_schema_template_deploy.py (#61849), correct module name in examples

(cherry picked from commit 394a05108d)

* Update hashi_vault.py documentation  with kv V2 example (#61221)

(cherry picked from commit 70f501d5c8)
2019-09-12 14:47:25 -05:00
7e3d322b54 Removed absent parameter from state due to risk 2019-09-11 19:13:17 -07:00
77c2139f7e [stable-2.9] Fix ansible-test pytest plugin loading. (#62119) (#62120)
* [stable-2.9] Fix ansible-test pytest plugin loading. (#62119)

* Avoid assertion rewriting in pytest plugins.

Adding PYTEST_DONT_REWRITE to the ansible-test pytest plugin docstrings disables assertion rewriting in pytest for those plugins.

This avoids warnings during test execution if the plugins are loaded multiple times (such as being imported within tests).

* Run ansible-test pytest plugins early.

The ansible-test pytest plugins need to load and run earlier than conftest modules.

To facilitate this, the pytest_configure function is run during loading, which works since they are loaded (but not always run) before conftest modules are loaded.

A check has also been added to the pytest_configure functions to prevent them from running multiple times in the same process.

* Load pytest plugins using an env var.

The -p command line option loads plugins before conftest, but only during collection.
The PYTEST_PLUGINS environment variable loads plugins before confest, both during collection and test execution.
(cherry picked from commit aaa6d2e)

Co-authored-by: Matt Clay <matt@mystile.com>

* Add missing changelog entry for ansible-test fix.

PR https://github.com/ansible/ansible/pull/62119 was missing a changelog entry.

(cherry picked from commit 6c78f02121)
2019-09-11 14:40:59 -07:00
e616ce1091 [stable-2.9] bump hcloud version to 1.4.1 (#62097)
* bump hcloud version to 1.4.1

`hcloud`<=1.4.0 has requirement `requests==2.20.0`. This prevents the
installation of the Vcenter Automation SDK which depends on `requests>=2.22.0`.

`hcloud` 1.4.1 does not have the problem: 8bff356efb
Bumping the dependency will resolve the issue.
(cherry picked from commit 0f52b18)

Co-authored-by: Gonéri Le Bouder <goneri@lebouder.net>
2019-09-11 14:25:14 -07:00
6ecf17ee4d Return commands key instead of xml in result for junos rm (#62041)
Fixes https://github.com/ansible/ansible/issues/61773

*  Change `xml` key name to `commands` key to be in sync with
   other platform resource modules.

(cherry picked from commit ff53ca76b8)
2019-09-11 14:21:11 -07:00
6966f7ebe0 Minify ansible (#61792)
* make all comments special to survive minify
* minified css

(cherry picked from commit 7efaad711e)
2019-09-11 14:02:29 -07:00
507e9df69b Minify theme (#61734)
* moved most ansible edits out of theme.css
* remove unnecessary edit to theme.css
* replace with upstream minified theme.css for 0.4.3

(cherry picked from commit de826b437d)
2019-09-11 14:02:29 -07:00
631d07b8d5 fix width (#61619)
(cherry picked from commit 1d40d2b572)
2019-09-11 14:02:29 -07:00
25905fc91a Update ovirt_vm.py (#62072)
Typo fix: "IDE" is not an acceptable choice for disk type, "ide" is a valid choice
(cherry picked from commit a3e9d14702)
2019-09-11 14:02:29 -07:00
d99025fe8e Update playbooks_prompts.rst (#62003)
Fixed typo: "wierd" > "weird"
(cherry picked from commit e3ea89801b)
2019-09-11 14:02:29 -07:00
10d5286bc2 meraki_organization - Add warning about organization deletion (#61886)
* meraki_organization - Add warning about organization deletion
The documentation is now more explicit about the ramifications of using `state: absent` in a task.
(cherry picked from commit 7d303e54f6)
2019-09-11 14:02:29 -07:00
2538bd83f4 Update unit tests requirements/units.txt path (#61656)
(cherry picked from commit 615f9949c0)
2019-09-11 14:02:29 -07:00
35109ed67e Add caution about handlers & import to Pitfalls (#61060)
* Add caution about handlers & import to Pitfalls on the playbooks_reuse page.
The fact that handlers lose their name: when using import_tasks:, while logical, is not intuitive and should be noted.
Co-Authored-By: Sandra McCann <samccann@redhat.com>

(cherry picked from commit 375eb9723a)
2019-09-11 14:02:29 -07:00
8d5ded4cec Typo 'state:' net_lldp (#61543)
'state:' should be "absent" not "lldp"
(cherry picked from commit ce8af1c8c5)
2019-09-11 14:02:29 -07:00
f93068e49b Fix galaxy server reference in the docs (#61823)
(cherry picked from commit 2fbe4ca102)
2019-09-11 14:02:29 -07:00
321606b731 Add example of "parent_group" usage in aws_ec2.py (#60430)
##### SUMMARY
Looks like the "parent_group" option in "keyed_groups" is a very recent feature that is not being documented.
This pull request just adds a simple example of the usage of this useful feature.

##### ISSUE TYPE
- Docs Pull Request

+label: docsite_pr
(cherry picked from commit 411b208147)
2019-09-11 14:02:29 -07:00
0d02c8eb7a Clarity on mutual exclusion of Username and Token (#61668)
##### SUMMARY
Although there is an example showing that username is not required with personal access token, it will be nice to more clearly state in options description.
##### ISSUE TYPE
- Docs Pull Request

+label: docsite_pr
(cherry picked from commit 58acc8d082)
2019-09-11 14:01:52 -07:00
d39cea4448 net_user documentation typo configured_password (#61556)
password -> configured_password in the last example
(cherry picked from commit bcbcac3bd8)
2019-09-11 14:01:52 -07:00
b915a0c396 Update homebrew_cask example docs (#61637)
Changed homebrew_cask module flag from "allow_external_apps" to "accept_external_apps" in example section

(cherry picked from commit 447c7d9ff0)
2019-09-11 14:01:52 -07:00
6040b9f399 Docs - Add Meraki to platform option list (#61651)
(cherry picked from commit 54906a68fe)
2019-09-11 14:01:52 -07:00
706558d66b grafana_plugin: update documentation (#60600)
(cherry picked from commit 9c1dc0ea7f)
2019-09-11 14:01:52 -07:00
726dafac3d osx_defaults - doc tweaks (#60881)
* [osx_default] We are looking for the "defaults" executable, not "osx_defaults"

* [osx_default] Add example for setting system wide default

(cherry picked from commit a09b89f567)
2019-09-11 14:01:52 -07:00
a8a7cc0e58 Fix documentation to reflect CLI usage for collections-path (#60164)
(cherry picked from commit f1180f3d3f)
2019-09-11 14:01:52 -07:00
d80de9d095 Remove unnecessary information (#61657)
(cherry picked from commit 4b9b5d3745)
2019-09-11 14:01:52 -07:00
ceec818314 Ecs taskdefinition secrets (#60112)
* adding specific examples for using environment and secrets in the container definition
(cherry picked from commit 47b9c5bf04)
2019-09-11 14:01:52 -07:00
fba6fbb4b9 Fix typesetting of "GitLab" (#61702)
(cherry picked from commit 7dbd6116d8)
2019-09-11 14:01:52 -07:00
cb4479d882 adding a collection local try section (#61626)
(cherry picked from commit bfaa29303b)
2019-09-11 14:01:52 -07:00
73f4acbd9f mysql_info: fix typo (#62067)
(cherry picked from commit e589e22b7e)
2019-09-11 12:33:50 -07:00
b109538a0f postgresql: fix typos in modules (#62065)
(cherry picked from commit 8b24fe1f0a)
2019-09-11 12:33:13 -07:00
886843807f Fix ansible-test coverage --all (#62115)
(cherry picked from commit 6fb1d56fdc)
2019-09-11 12:07:47 -07:00
d9d8d55861 [stable-2.9] Work around virtualenv/venv issue in ansible-test. (#62111)
Creating a virtual environment using `venv` when running in a virtual environment created by `virtualenv` results in a copy of the original virtual environment instead of creation of a new one.

To work around this, `ansible-test` now identifies when it is running in a `virtualenv` created virtual environment and uses the real Python interpreter to create the `venv` virtual environment.
(cherry picked from commit a7bc11c)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-11 12:06:45 -07:00
c2387536ab [stable-2.9] Properly exclude tests/output/ from code coverage.
(cherry picked from commit 983f0ad)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-11 12:05:58 -07:00
4f51852b5e [stable-2.9] Fix ansible-test to ignore tests/output/. (#62084)
The `test/results/` directory for Ansible test output was already ignored when not using git.

When Ansible Collections were switched to `tests/output/` the ignore entry was previously overlooked.
(cherry picked from commit f110abb)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-11 12:05:35 -07:00
307c8c6a49 Fix mysql.py logic related to 53326 (#61832)
(cherry picked from commit e4d4e49388)
2019-09-11 10:55:26 -07:00
df4f0e4ec2 To fix IOSXR L3 Interfaces idempotency failures (#61860)
* fix zuul idemptency failures

* adding eol

(cherry picked from commit 1425d23513)
Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-09-10 14:12:30 -07:00
b3fbc3c156 [stable-2.9] Fix issues with ansible-test --venv option. (#62033)
* Fix ansible-test venv activation.

When using the ansible-test --venv option, an execv wrapper for each python interpreter is now used instead of a symbolic link.

* Fix ansible-test execv wrapper generation.

Use the currently running Python interpreter for the shebang in the execv wrapper instead of the selected interpreter.

This allows the wrapper to work when the selected interpreter is a script instead of a binary.

* Fix ansible-test sanity requirements install.

When running sanity tests on multiple Python versions, install requirements for all versions used instead of only the default version.

* Fix ansible-test --venv when installed.

When running ansible-test from an install, the --venv delegation option needs to make sure the ansible-test code is available in the created virtual environment.

Exposing system site packages does not work because the virtual environment may be for a different Python version than the one on which ansible-test is installed.
(cherry picked from commit c77ab11051)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-09-09 20:35:16 -07:00
427da1d213 win_become - don't dispose logon token until end (#61905)
(cherry picked from commit 6e8d430872)
2019-09-09 15:30:53 -07:00
e628c87b29 allow external collections under the ansible NS (#61908)
* fixes #59988

(cherry picked from commit 7f4328ad12)
2019-09-09 14:04:08 -07:00
071201bf4f ansible-test: vcenter+Worldstream: hide password
Hide the temporary password when `ansible-test` is called with the
`--redact` parameter.

(cherry picked from commit 8e22a60f97)
2019-09-09 13:48:04 -07:00
1cb40e1aed Fixes to ecs_certificate cert chain for #61738 (#61858)
* Fixes to ecs_certificate cert chain for #61738

* Added changelog fragment

* Fixes to ecs_certificate for cleaner join, and better integration test

* Fix integration test formatting

* End cert chain with a \n

* Update changelogs/fragments/61738-ecs-certificate-invalid-chain.yaml

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update main.yml

(cherry picked from commit 943888b955)
2019-09-09 13:44:16 -07:00
94f8f320ed [stable-2.9] Add missed eos modules to porting guide (#61994)
(cherry picked from commit 646a0b9)

Co-authored-by: Nathaniel Case <ncase@redhat.com>
2019-09-09 13:41:47 -07:00
fce737b3bb Allow junos_config changes the candidate configuration only (#61969)
This allows junos_config to changes the candidate configuration only and
does not commit it as the active configuration at once w/ the
'check_commit' option.

(cherry picked from commit 483e76ee58)
2019-09-09 13:40:38 -07:00
0de5620b65 Fix ansible-connection persist after playbook run complete issue (#61591)
* Fix ansible-connection persist after playbook run issue

*  PR https://github.com/ansible/ansible/pull/59153 to add support
   for delaying the ansible-connection added an old issue of
   ansible-connection persisting even after playbook run is finished
   till either command timeout or connect timeout is triggered.
   ansible-connection persist after playbook execution is done
   and also delays the connection initilization untill a method
   in invoked from module side on the connection object.

* Add chanegelog

(cherry picked from commit 4f29b5a76b)
2019-09-09 13:36:20 -07:00
60d68268ec [stable-2.9] Properly hide limit and list-hosts args from ansible-inventory (#61618)
* Properly hide limit and list-hosts args from ansible-inventory. Fixes #61604

* Add changelog fragment

* Consolidate limit

* Fix positional argument with --graph

* Properly error for hidden arguments

* linting issue

* host pattern changelog
(cherry picked from commit 8331c8f)

Co-authored-by: Matt Martz <matt@sivel.net>
2019-09-09 13:31:56 -07:00
1e32aa4354 VMware: not ssl.SSLContext if validate_certs false (#57185)
Python < 2.7.9 does not have the ssl.SSLContext attribute.
ssl.SSLContext is only required when we want to validate the SSL
connection. If `validate_certs` is false, we don't initialize the
`ssl_context` variable.

Add unit-test coverage and a little refactoring:

- avoid the use of `mocker`, when we can push `monkeypatch` which is
  `pytest`'s default.
- use `mock.Mocker()` when possible

closes: #57072
(cherry picked from commit 3ea8e0a144)
2019-09-09 13:26:35 -07:00
9902888a21 fix erroneous failures in docker_compose due to deprecation warnings … (#61650)
* fix erroneous failures in docker_compose due to deprecation warnings from docker (#60961)

* Update error handling to work with new method of capturing output

Co-Authored-By: Felix Fontein <felix@fontein.de>

* update error handling

* fix syntax error

* fix indentation

* fix indentation (again)

* remove erroneous line

(cherry picked from commit 0c73e47a42)
2019-09-09 13:22:34 -07:00
55e7efcd8f docker_container: improve port range parsing error behavior (#61740)
* Improve port range parsing.

* Add changelog.

(cherry picked from commit d40ba28fb4)
2019-09-09 13:20:05 -07:00
93e8f4cef0 Fix failure due to API version check
(cherry picked from commit dfe02d1ff4)
2019-09-09 13:17:36 -07:00
97100bbea2 [stable-2.9] User - correct group removal description in docs (#61936)
(cherry picked from commit 61efffcbe1)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-09-06 13:35:26 -07:00
fb9502c922 Fix bug preventing wait_condition from being respected when using apply (#61493)
(cherry picked from commit f406b8b4c4)
2019-09-06 13:32:07 -07:00
fb0bc0eb6b [stable-2.9] Fix rpm dependencies for ansible-test
Needs to require ansible = version rather than ansible-version
(cherry picked from commit 59afffa)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-09-05 18:35:29 -07:00
7910f0f152 Update Ansible release version to v2.9.0b1.post0. 2019-09-05 14:44:49 -07:00
b108c59b89 New release v2.9.0b1 2019-09-05 11:46:29 -07:00
d2b5a08eb8 To fix and rename checkpoint to check_point due to legal reasons (#61872)
* Rename checkpoint to check_point due to legal reasons, fix #61145 (#61172)

* Fix #61145

* Fix type keyword

* Removed file fragment

(cherry picked from commit 9744ce1e1d)

* add changelogs

* adding eol

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-09-05 10:47:04 -07:00
124036337e azure_rm_iothub: disable the functional test (#61854)
The test fails with: Operation failed with status: 'Unauthorized'
This commit disable the test until the situation is resolved.

See: https://github.com/ansible/ansible/issues/61852
(cherry picked from commit 08e01380e6)
2019-09-05 08:59:49 -07:00
622f5a248d [stable-2.9] Rebalance Azure tests groups
(cherry picked from commit 173d47d1f4)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-09-05 08:59:27 -07:00
ec48f1d35b [stable-2.9] test: disable the docker swarm tests (#61816)
`docker_swarm` tests tend to hang during the creation of the Swarn
cluster.

See: https://github.com/ansible/ansible/issues/61815
(cherry picked from commit 7132466327)

Co-authored-by: Gonéri Le Bouder <goneri@lebouder.net>
2019-09-05 08:57:54 -07:00
ac61dc60aa Azure _info modules: fix returned ansible_facts when called as _info (#61805)
* Fix Azure _info modules which still returned ansible_facts.

* Adjust PR #.

* Fix wrong assignment.

* Reorganize code for clarity.

(cherry picked from commit e06dbe6e4f)
2019-09-05 08:48:31 -07:00
ec7803387e documentation: modify the link to the docker.txt listing all images (#61838) (#61846)
The file was moved.

(cherry picked from commit aadb192846)
2019-09-05 10:06:17 -05:00
3bf9f57f43 ansible-galaxy fix --server option for roles (#61820)
(cherry picked from commit 3a7b77a94c)
2019-09-04 19:55:46 -07:00
ab6efcd6cc [stable-2.9] Don't truncate the last character from galaxy urls. Fixes #61624 (#61775)
(cherry picked from commit 8214d18)

Co-authored-by: Matt Martz <matt@sivel.net>
2019-09-04 18:01:46 -07:00
23a79ecc77 [stable-2.9] aws_s3 - wait for the bucket before setting ACLs (#61735) (#61768)
* [stable-2.9] aws_s3 - wait for the bucket before setting ACLs (#61735)

* Wait for the bucket to become available if possible before setting ACLs
(cherry picked from commit 91ccb03552)

Co-authored-by: Sloane Hertel <shertel@redhat.com>

* s3 - improve waiting for the bucket (#61802)

(cherry picked from commit ff05991265)
2019-09-04 14:01:24 -07:00
9ff8d8d898 Fix creation of DigitalOcean droplets using digital_ocean_droplet module (#61655)
* Omit disallowed 'id' attribute in request body to create a droplet

* Add changelog fragment for PR #61655
2019-09-04 12:10:00 -07:00
4cc9ee950f [stable-2.9] Allow 13 asterisk characters in password field without warning (#54893)
On OpenBSD, 13 asterisk characters as a password hash, marks the
account as disabled. Otherwise daily(8) script which executes
security(8) will email operator about not properly locked accounts.

Before the diff, we see following warning:

> [WARNING]: The input password appears not to have been hashed. The 'password' argument must be encrypted for this module to work properly.

After the diff, warning is gone.
(cherry picked from commit 1dea661ce8)

Co-authored-by: kucharskim <mikolaj@kucharski.name>
2019-09-04 12:09:04 -07:00
3558d38b17 [stable-2.9] Fix systemd start state with deactivating service state
(cherry picked from commit ee4b3b8854)

Co-authored-by: Strahinja Kustudic <kustodian@gmail.com>
2019-09-04 12:08:03 -07:00
8141aa9a55 To fix iosxr_l3_interfaces module zuul tests (#61592)
* fix 61540

* fix utils

(cherry picked from commit 24ad1dffc9)
2019-09-04 12:07:39 -07:00
58fda1632f Fixes IOS L3 intermittent zuul failure (#61682)
* fix ios l3 intermittent failure

* fix self

* dict to ordered dict

* fix diff_again fn

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* remove orderdict as its expensive

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* update verify fn

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
(cherry picked from commit 2672dc9694)
2019-09-04 12:06:58 -07:00
fa3d52729c Backport/2.9/61691 (#61759)
* Fix Decode Bug in Py3

(cherry picked from commit 87642ac93e)

* Update fortios.py

(cherry picked from commit 416bc3c040)

* Remove special char from name

* Ensure full compatibility when ansible is install from Py2

* Update lib/ansible/plugins/httpapi/fortios.py

Co-Authored-By: Nathaniel Case <this.is@nathanielca.se>
(cherry picked from commit 7601b7fa0d)

* Update lib/ansible/module_utils/network/fortios/fortios.py

Co-Authored-By: Nathaniel Case <this.is@nathanielca.se>
(cherry picked from commit e4f6a19cb4)

* Update lib/ansible/module_utils/network/fortios/fortios.py

Co-Authored-By: Nathaniel Case <this.is@nathanielca.se>
(cherry picked from commit ba1c2e4ea0)

* Suggested changes by Qalthos

(cherry picked from commit ae4bde8500)

* Suggested changes by Qalthos

(cherry picked from commit 63bea8e2a6)

* Retriggerting due to shippable failure
2019-09-04 12:04:33 -07:00
187f85f4d2 [stable-2.9] aws_codebuild tests - add retries and delay instead of a pause task (#61731) (#61771)
* [stable-2.9] aws_codebuild tests - add retries and delay instead of a pause task (#61731)

- Add retries instead of a pause task
- Shorten the IAM role name length
- Put the IAM role name in defaults/main.yml instead
- Fix the aws_codepipeline tests too
(cherry picked from commit 9ee0deea24)

Co-authored-by: Sloane Hertel <shertel@redhat.com>

* codebuild/codepipeline - fix regex for shippable resource_prefix (#61783)

* Fix bad assumption about shippable resource_prefix for codebuild and codepipeline tests
* Update test/integration/targets/aws_codepipeline/defaults/main.yml

(cherry picked from commit d5c8d325e4)
2019-09-04 10:38:35 -07:00
682c3674b8 Set win_pagefile as unstable as thats what it is (#61732)
(cherry picked from commit 00add5b668)
2019-09-04 10:30:04 -07:00
e14ccbf2c0 [stable-2.9] debian: prepare the ansible-test package
- Generate an extra package for `ansible-test`.
- Manually install the files because CDBS get confused by our two
  Python packages
- Refresh the package descriptions to match what is done with the RPM
(cherry picked from commit 3f9316b)

Co-authored-by: Gonéri Le Bouder <goneri@lebouder.net>
2019-09-03 23:52:33 -07:00
0f55c2c04b [stable-2.9] Update the rpm spec file to include ansible-test
* Include ansible-test in a subpackage
* Sync with the ansible engine spec file
* Addresses https://github.com/ansible/ansible/issues/60380 to the
  extent that we're likely to fix that.
(cherry picked from commit 9be8a98)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2019-09-03 21:59:29 -07:00
365acd0daa Correct indentation of the code in the example (#61622) (#61725) 2019-09-03 13:47:28 -05:00
23ea477734 [stable-2.9] Increase unit test timeout to account for long image download times (#61717)
(cherry picked from commit c9e7a2122d)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-09-03 10:11:38 -07:00
53db5020b6 Update Fedora 29 test image
(cherry picked from commit 3d78dad84b)
2019-09-03 09:53:13 -07:00
06220179e5 [stable-2.9] Avoid infinite recursion on login (#61617)
(cherry picked from commit d20d10b)

Co-authored-by: Nathaniel Case <ncase@redhat.com>
2019-09-03 09:48:27 -07:00
e9e8d2b5d6 Make sure postgresql tests are run for all postgres_* modules (#61647)
(cherry picked from commit 4d057e0331)
2019-09-03 09:44:37 -07:00
bbf268c451 [stable-2.9] apt: honor cache_update=false on auto-install deps (#56549)
* apt: honor cache_update=false on auto-install deps
* add porting guide
(cherry picked from commit fd4ff54580)

Co-authored-by: Rene Moser <mail@renemoser.net>
2019-09-03 09:43:46 -07:00
a1715ee1b2 postgresql modules: explicit defaults for bool params (#61538) (#61679)
(cherry picked from commit a6d9401c88)
2019-09-03 11:38:10 -05:00
dc5f369245 [stable-2.9] ansible-test - Continue if the git command returns an error (#61605)
* ansible-test - Contiune if the git command returns an error

* Just return stdout

* Use to_text() when displaying exception

* Add a message property to SubprocessError
(cherry picked from commit e218c98)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2019-08-30 13:23:26 -07:00
e9310c1a44 [stable-2.9] Fix ansible-test coverage path handling. (#61528) (#61593)
* [stable-2.9] Fix ansible-test coverage path handling. (#61528)

* Fix ansible-test coverage path handling.
* Split CI unit tests into two groups.
(cherry picked from commit e4e5005640)

Co-authored-by: Matt Clay <matt@mystile.com>

* Add changelog fragment.
2019-08-30 09:44:21 -07:00
72d93259e7 [stable-2.9] Use relative submodule status in ansible-test.
The `git submodule status` command is relative to the current git repository by default.
When running from a repository subdirectory paths can be returned above the current directory.
Specifying the current directory with `git submodule status` avoids listing submodules above that directory.

This will fix issues when testing a collection that is rooted below the repository root when that repository uses submodules.
(cherry picked from commit 4063d58339)

Co-authored-by: Matt Clay <matt@mystile.com>
2019-08-30 07:57:47 -07:00
c6996727ba Skip certain tests on 2016 (#61585)
(cherry picked from commit 3bd69a47ec)
2019-08-30 07:55:11 -07:00
a271cb6136 Azure fix _info/_facts return values for some modules (#61584)
* Azure fix _info/_facts return values for some modules

* Further test fixes

* securitygroup fixes after the move to _info module

(cherry picked from commit 951dac7691)
2019-08-29 23:33:14 -07:00
391a67401d New release v2.9.0b1 2019-08-29 22:33:55 -07:00
a8023c52d9 Galaxy refactory 2.9 (#61581)
* Refactor galaxy collection API for v3 support (#61510)

* Refactor galaxy collection API for v3 support

* Added unit tests for GalaxyAPI and starting to fix other failures

* finalise tests

* more unit test fixes

(cherry picked from commit a7fd6e99d9)

* Added changelog fragment
2019-08-29 22:31:17 -07:00
d82e61c939 New release v2.9.0b1 2019-08-29 18:55:35 -07:00
7c342183c5 Update changelog url 2019-08-29 14:37:43 -07:00
19076 changed files with 2266344 additions and 293693 deletions

View File

@ -1,217 +0,0 @@
trigger:
batch: true
branches:
include:
- devel
- stable-*
pr:
autoCancel: true
branches:
include:
- devel
- stable-*
schedules:
- cron: 0 7 * * *
displayName: Nightly
always: true
branches:
include:
- devel
- stable-*
variables:
- name: checkoutPath
value: ansible
- name: coverageBranches
value: devel
- name: entryPoint
value: test/utils/shippable/shippable.sh
- name: fetchDepth
value: 500
resources:
containers:
- container: default
image: quay.io/ansible/azure-pipelines-test-container:3.0.0
pool: Standard
stages:
- stage: Sanity
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
nameFormat: Test {0}
testFormat: sanity/{0}
targets:
- test: 1
- test: 2
- test: 3
- test: 4
- test: 5
- stage: Units
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
nameFormat: Python {0}
testFormat: units/{0}
targets:
- test: 2.7
- test: 3.5
- test: 3.6
- test: 3.7
- test: 3.8
- test: 3.9
- test: '3.10'
- stage: Windows
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
nameFormat: Server {0}
testFormat: windows/{0}/1
targets:
- test: 2012
- test: 2012-R2
- test: 2016
- test: 2019
- test: 2022
- stage: Remote
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
targets:
- name: macOS 12.0
test: macos/12.0
- name: RHEL 7.9
test: rhel/7.9
- name: RHEL 8.5 py36
test: rhel/8.5@3.6
- name: RHEL 8.5 py38
test: rhel/8.5@3.8
- name: RHEL 9.0
test: rhel/9.0
- name: FreeBSD 12.3
test: freebsd/12.3
- name: FreeBSD 13.0
test: freebsd/13.0
groups:
- 1
- 2
- 3
- 4
- 5
- stage: Docker
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
testFormat: linux/{0}
targets:
- name: Alpine 3
test: alpine3
- name: CentOS 7
test: centos7
- name: Fedora 34
test: fedora34
- name: Fedora 35
test: fedora35
- name: openSUSE 15 py2
test: opensuse15py2
- name: openSUSE 15 py3
test: opensuse15
- name: Ubuntu 18.04
test: ubuntu1804
- name: Ubuntu 20.04
test: ubuntu2004
groups:
- 1
- 2
- 3
- 4
- 5
- stage: Galaxy
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
nameFormat: Python {0}
testFormat: galaxy/{0}/1
targets:
- test: 3.8
- test: 3.9
- test: '3.10'
- stage: Generic
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
nameFormat: Python {0}
testFormat: generic/{0}/1
targets:
- test: 3.8
- test: 3.9
- test: '3.10'
- stage: Incidental_Remote
displayName: Incidental Remote
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
testFormat: i/{0}
targets:
- name: RHEL 8.5 py36
test: rhel/8.5@3.6
- name: RHEL 8.5 py38
test: rhel/8.5@3.8
- stage: Incidental_Windows
displayName: Incidental Windows
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
nameFormat: Server {0}
testFormat: i/windows/{0}
targets:
- test: 2012
- test: 2012-R2
- test: 2016
- test: 2019
- test: 2022
- stage: Incidental
dependsOn: []
jobs:
- template: templates/matrix.yml
parameters:
testFormat: i/{0}/1
targets:
- name: IOS Python
test: ios/csr1000v/
- name: VyOS Python
test: vyos/1.1.8/
- name: AWS Python 2.7
test: aws/2.7
- name: AWS Python 3.6
test: aws/3.6
- name: Cloud Python
test: cloud/
- stage: Summary
condition: succeededOrFailed()
dependsOn:
- Sanity
- Units
- Windows
- Remote
- Docker
- Galaxy
- Generic
- Incidental_Remote
- Incidental_Windows
- Incidental
jobs:
- template: templates/coverage.yml

View File

@ -1,20 +0,0 @@
#!/usr/bin/env bash
# Aggregate code coverage results for later processing.
set -o pipefail -eu
agent_temp_directory="$1"
PATH="${PWD}/bin:${PATH}"
mkdir "${agent_temp_directory}/coverage/"
options=(--venv --color -v)
ansible-test coverage combine --group-by command --export "${agent_temp_directory}/coverage/" "${options[@]}"
if ansible-test coverage analyze targets generate --help >/dev/null 2>&1; then
# Only analyze coverage if the installed version of ansible-test supports it.
# Doing so allows this script to work unmodified for multiple Ansible versions.
ansible-test coverage analyze targets generate "${agent_temp_directory}/coverage/coverage-analyze-targets.json" "${options[@]}"
fi

View File

@ -1,60 +0,0 @@
#!/usr/bin/env python
"""
Combine coverage data from multiple jobs, keeping the data only from the most recent attempt from each job.
Coverage artifacts must be named using the format: "Coverage $(System.JobAttempt) {StableUniqueNameForEachJob}"
The recommended coverage artifact name format is: Coverage $(System.JobAttempt) $(System.StageDisplayName) $(System.JobDisplayName)
Keep in mind that Azure Pipelines does not enforce unique job display names (only names).
It is up to pipeline authors to avoid name collisions when deviating from the recommended format.
"""
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import os
import re
import shutil
import sys
def main():
"""Main program entry point."""
source_directory = sys.argv[1]
if '/ansible_collections/' in os.getcwd():
output_path = "tests/output"
else:
output_path = "test/results"
destination_directory = os.path.join(output_path, 'coverage')
if not os.path.exists(destination_directory):
os.makedirs(destination_directory)
jobs = {}
count = 0
for name in os.listdir(source_directory):
match = re.search('^Coverage (?P<attempt>[0-9]+) (?P<label>.+)$', name)
label = match.group('label')
attempt = int(match.group('attempt'))
jobs[label] = max(attempt, jobs.get(label, 0))
for label, attempt in jobs.items():
name = 'Coverage {attempt} {label}'.format(label=label, attempt=attempt)
source = os.path.join(source_directory, name)
source_files = os.listdir(source)
for source_file in source_files:
source_path = os.path.join(source, source_file)
destination_path = os.path.join(destination_directory, source_file + '.' + label)
print('"%s" -> "%s"' % (source_path, destination_path))
shutil.copyfile(source_path, destination_path)
count += 1
print('Coverage file count: %d' % count)
print('##vso[task.setVariable variable=coverageFileCount]%d' % count)
print('##vso[task.setVariable variable=outputPath]%s' % output_path)
if __name__ == '__main__':
main()

View File

@ -1,24 +0,0 @@
#!/usr/bin/env bash
# Check the test results and set variables for use in later steps.
set -o pipefail -eu
if [[ "$PWD" =~ /ansible_collections/ ]]; then
output_path="tests/output"
else
output_path="test/results"
fi
echo "##vso[task.setVariable variable=outputPath]${output_path}"
if compgen -G "${output_path}"'/junit/*.xml' > /dev/null; then
echo "##vso[task.setVariable variable=haveTestResults]true"
fi
if compgen -G "${output_path}"'/bot/ansible-test-*' > /dev/null; then
echo "##vso[task.setVariable variable=haveBotResults]true"
fi
if compgen -G "${output_path}"'/coverage/*' > /dev/null; then
echo "##vso[task.setVariable variable=haveCoverageData]true"
fi

View File

@ -1,101 +0,0 @@
#!/usr/bin/env python
"""
Upload code coverage reports to codecov.io.
Multiple coverage files from multiple languages are accepted and aggregated after upload.
Python coverage, as well as PowerShell and Python stubs can all be uploaded.
"""
import argparse
import dataclasses
import pathlib
import shutil
import subprocess
import tempfile
import typing as t
import urllib.request
@dataclasses.dataclass(frozen=True)
class CoverageFile:
name: str
path: pathlib.Path
flags: t.List[str]
@dataclasses.dataclass(frozen=True)
class Args:
dry_run: bool
path: pathlib.Path
def parse_args() -> Args:
parser = argparse.ArgumentParser()
parser.add_argument('-n', '--dry-run', action='store_true')
parser.add_argument('path', type=pathlib.Path)
args = parser.parse_args()
# Store arguments in a typed dataclass
fields = dataclasses.fields(Args)
kwargs = {field.name: getattr(args, field.name) for field in fields}
return Args(**kwargs)
def process_files(directory: pathlib.Path) -> t.Tuple[CoverageFile, ...]:
processed = []
for file in directory.joinpath('reports').glob('coverage*.xml'):
name = file.stem.replace('coverage=', '')
# Get flags from name
flags = name.replace('-powershell', '').split('=') # Drop '-powershell' suffix
flags = [flag if not flag.startswith('stub') else flag.split('-')[0] for flag in flags] # Remove "-01" from stub files
processed.append(CoverageFile(name, file, flags))
return tuple(processed)
def upload_files(codecov_bin: pathlib.Path, files: t.Tuple[CoverageFile, ...], dry_run: bool = False) -> None:
for file in files:
cmd = [
str(codecov_bin),
'--name', file.name,
'--file', str(file.path),
]
for flag in file.flags:
cmd.extend(['--flags', flag])
if dry_run:
print(f'DRY-RUN: Would run command: {cmd}')
continue
subprocess.run(cmd, check=True)
def download_file(url: str, dest: pathlib.Path, flags: int, dry_run: bool = False) -> None:
if dry_run:
print(f'DRY-RUN: Would download {url} to {dest} and set mode to {flags:o}')
return
with urllib.request.urlopen(url) as resp:
with dest.open('w+b') as f:
# Read data in chunks rather than all at once
shutil.copyfileobj(resp, f, 64 * 1024)
dest.chmod(flags)
def main():
args = parse_args()
url = 'https://ci-files.testing.ansible.com/codecov/linux/codecov'
with tempfile.TemporaryDirectory(prefix='codecov-') as tmpdir:
codecov_bin = pathlib.Path(tmpdir) / 'codecov'
download_file(url, codecov_bin, 0o755, args.dry_run)
files = process_files(args.path)
upload_files(codecov_bin, files, args.dry_run)
if __name__ == '__main__':
main()

View File

@ -1,17 +0,0 @@
#!/usr/bin/env bash
# Generate code coverage reports for uploading to Azure Pipelines and codecov.io.
set -o pipefail -eu
PATH="${PWD}/bin:${PATH}"
if ! ansible-test --help >/dev/null 2>&1; then
# Install the devel version of ansible-test for generating code coverage reports.
# This is only used by Ansible Collections, which are typically tested against multiple Ansible versions (in separate jobs).
# Since a version of ansible-test is required that can work the output from multiple older releases, the devel version is used.
pip install https://github.com/ansible/ansible/archive/devel.tar.gz --disable-pip-version-check
fi
# Generate stubs using docker (if supported) otherwise fall back to using a virtual environment instead.
# The use of docker is required when Powershell code is present, but Ansible 2.12 was the first version to support --docker with coverage.
ansible-test coverage xml --group-by command --stub --docker --color -v || ansible-test coverage xml --group-by command --stub --venv --color -v

View File

@ -1,34 +0,0 @@
#!/usr/bin/env bash
# Configure the test environment and run the tests.
set -o pipefail -eu
entry_point="$1"
test="$2"
read -r -a coverage_branches <<< "$3" # space separated list of branches to run code coverage on for scheduled builds
export COMMIT_MESSAGE
export COMPLETE
export COVERAGE
export IS_PULL_REQUEST
if [ "${SYSTEM_PULLREQUEST_TARGETBRANCH:-}" ]; then
IS_PULL_REQUEST=true
COMMIT_MESSAGE=$(git log --format=%B -n 1 HEAD^2)
else
IS_PULL_REQUEST=
COMMIT_MESSAGE=$(git log --format=%B -n 1 HEAD)
fi
COMPLETE=
COVERAGE=
if [ "${BUILD_REASON}" = "Schedule" ]; then
COMPLETE=yes
if printf '%s\n' "${coverage_branches[@]}" | grep -q "^${BUILD_SOURCEBRANCHNAME}$"; then
COVERAGE=yes
fi
fi
"${entry_point}" "${test}" 2>&1 | "$(dirname "$0")/time-command.py"

View File

@ -1,25 +0,0 @@
#!/usr/bin/env python
"""Prepends a relative timestamp to each input line from stdin and writes it to stdout."""
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import sys
import time
def main():
"""Main program entry point."""
start = time.time()
sys.stdin.reconfigure(errors='surrogateescape')
sys.stdout.reconfigure(errors='surrogateescape')
for line in sys.stdin:
seconds = time.time() - start
sys.stdout.write('%02d:%02d %s' % (seconds // 60, seconds % 60, line))
sys.stdout.flush()
if __name__ == '__main__':
main()

View File

@ -1,29 +0,0 @@
# This template adds a job for processing code coverage data.
# It will upload results to Azure Pipelines and codecov.io.
# Use it from a job stage that completes after all other jobs have completed.
# This can be done by placing it in a separate summary stage that runs after the test stage(s) have completed.
jobs:
- job: Coverage
displayName: Code Coverage
container: default
workspace:
clean: all
steps:
- checkout: self
fetchDepth: $(fetchDepth)
path: $(checkoutPath)
- task: DownloadPipelineArtifact@2
displayName: Download Coverage Data
inputs:
path: coverage/
patterns: "Coverage */*=coverage.combined"
- bash: .azure-pipelines/scripts/combine-coverage.py coverage/
displayName: Combine Coverage Data
- bash: .azure-pipelines/scripts/report-coverage.sh
displayName: Generate Coverage Report
condition: gt(variables.coverageFileCount, 0)
- bash: .azure-pipelines/scripts/publish-codecov.py "$(outputPath)"
displayName: Publish to codecov.io
condition: gt(variables.coverageFileCount, 0)
continueOnError: true

View File

@ -1,55 +0,0 @@
# This template uses the provided targets and optional groups to generate a matrix which is then passed to the test template.
# If this matrix template does not provide the required functionality, consider using the test template directly instead.
parameters:
# A required list of dictionaries, one per test target.
# Each item in the list must contain a "test" or "name" key.
# Both may be provided. If one is omitted, the other will be used.
- name: targets
type: object
# An optional list of values which will be used to multiply the targets list into a matrix.
# Values can be strings or numbers.
- name: groups
type: object
default: []
# An optional format string used to generate the job name.
# - {0} is the name of an item in the targets list.
- name: nameFormat
type: string
default: "{0}"
# An optional format string used to generate the test name.
# - {0} is the name of an item in the targets list.
- name: testFormat
type: string
default: "{0}"
# An optional format string used to add the group to the job name.
# {0} is the formatted name of an item in the targets list.
# {{1}} is the group -- be sure to include the double "{{" and "}}".
- name: nameGroupFormat
type: string
default: "{0} - {{1}}"
# An optional format string used to add the group to the test name.
# {0} is the formatted test of an item in the targets list.
# {{1}} is the group -- be sure to include the double "{{" and "}}".
- name: testGroupFormat
type: string
default: "{0}/{{1}}"
jobs:
- template: test.yml
parameters:
jobs:
- ${{ if eq(length(parameters.groups), 0) }}:
- ${{ each target in parameters.targets }}:
- name: ${{ format(parameters.nameFormat, coalesce(target.name, target.test)) }}
test: ${{ format(parameters.testFormat, coalesce(target.test, target.name)) }}
- ${{ if not(eq(length(parameters.groups), 0)) }}:
- ${{ each group in parameters.groups }}:
- ${{ each target in parameters.targets }}:
- name: ${{ format(format(parameters.nameGroupFormat, parameters.nameFormat), coalesce(target.name, target.test), group) }}
test: ${{ format(format(parameters.testGroupFormat, parameters.testFormat), coalesce(target.test, target.name), group) }}

View File

@ -1,45 +0,0 @@
# This template uses the provided list of jobs to create test one or more test jobs.
# It can be used directly if needed, or through the matrix template.
parameters:
# A required list of dictionaries, one per test job.
# Each item in the list must contain a "job" and "name" key.
- name: jobs
type: object
jobs:
- ${{ each job in parameters.jobs }}:
- job: test_${{ replace(replace(replace(replace(job.test, '/', '_'), '.', '_'), '-', '_'), '@', '_') }}
displayName: ${{ job.name }}
container: default
workspace:
clean: all
steps:
- checkout: self
fetchDepth: $(fetchDepth)
path: $(checkoutPath)
- bash: .azure-pipelines/scripts/run-tests.sh "$(entryPoint)" "${{ job.test }}" "$(coverageBranches)"
displayName: Run Tests
- bash: .azure-pipelines/scripts/process-results.sh
condition: succeededOrFailed()
displayName: Process Results
- bash: .azure-pipelines/scripts/aggregate-coverage.sh "$(Agent.TempDirectory)"
condition: eq(variables.haveCoverageData, 'true')
displayName: Aggregate Coverage Data
- task: PublishTestResults@2
condition: eq(variables.haveTestResults, 'true')
inputs:
testResultsFiles: "$(outputPath)/junit/*.xml"
displayName: Publish Test Results
- task: PublishPipelineArtifact@1
condition: eq(variables.haveBotResults, 'true')
displayName: Publish Bot Results
inputs:
targetPath: "$(outputPath)/bot/"
artifactName: "Bot $(System.JobAttempt) $(System.StageDisplayName) $(System.JobDisplayName)"
- task: PublishPipelineArtifact@1
condition: eq(variables.haveCoverageData, 'true')
displayName: Publish Coverage Data
inputs:
targetPath: "$(Agent.TempDirectory)/coverage/"
artifactName: "Coverage $(System.JobAttempt) $(System.StageDisplayName) $(System.JobDisplayName)"

1
.gitattributes vendored
View File

@ -1 +1,2 @@
.github/ export-ignore
hacking/ export-ignore

1698
.github/BOTMETA.yml vendored

File diff suppressed because it is too large Load Diff

54
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,54 @@
---
name: 🐛 Bug report
about: Create a report to help us improve
---
<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->
##### SUMMARY
<!--- Explain the problem briefly below -->
##### ISSUE TYPE
- Bug Report
##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
```
##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
```
##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
<!--- Paste example playbooks or commands between quotes below -->
```yaml
```
<!--- HINT: You can paste gist.github.com links for larger files -->
##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->
<!--- Paste verbatim command output between quotes -->
```paste below
```

View File

@ -1,263 +0,0 @@
---
name: 🐛 Bug report
description: Create a report to help us improve
body:
- type: markdown
attributes:
value: >
**Thank you for wanting to report a bug in ansible-core!**
⚠
Verify first that your issue is not [already reported on
GitHub][issue search] and keep in mind that we may have to keep
the current behavior because [every change breaks someone's
workflow][XKCD 1172].
We try to be mindful about this.
Also test if the latest release and devel branch are affected too.
**Tip:** If you are seeking community support, please consider
[starting a mailing list thread or chatting in IRC][ML||IRC].
[ML||IRC]:
https://docs.ansible.com/ansible-core/devel/community/communication.html?utm_medium=github&utm_source=issue_form--bug_report.yml#mailing-list-information
[issue search]: ../search?q=is%3Aissue&type=issues
[XKCD 1172]: https://xkcd.com/1172/
- type: textarea
attributes:
label: Summary
description: Explain the problem briefly below.
placeholder: >-
When I try to do X with ansible-core from the devel branch on GitHub, Y
breaks in a way Z under the env E. Here are all the details I know
about this problem...
validations:
required: true
- type: dropdown
attributes:
label: Issue Type
description: >
Please select the single available option in the drop-down.
<details>
<summary>
<em>Why?</em>
</summary>
We would do it by ourselves but unfortunatelly, the curent
edition of GitHub Issue Forms Alpha does not support this yet 🤷
_We will make it easier in the future, once GitHub
supports dropdown defaults. Promise!_
</details>
# FIXME: Once GitHub allows defining the default choice, update this
options:
- Bug Report
validations:
required: true
- type: input
attributes:
label: Component Name
description: >
Write the short name of the rst file, module, plugin, task or
feature below, *use your best guess if unsure*.
**Tip:** Cannot find it in this repository? Please be advised that
the source for some parts of the documentation are hosted outside
of this repository. If the page you are reporting describes
modules/plugins/etc that are not officially supported by the
Ansible Core Engineering team, there is a good chance that it is
coming from one of the [Ansible Collections maintained by the
community][collections org]. If this is the case, please make sure
to file an issue under the appropriate project there instead.
[collections org]: /ansible-collections
placeholder: dnf, apt, yum, pip, user etc.
validations:
required: true
- type: textarea
attributes:
label: Ansible Version
description: >-
Paste verbatim output from `ansible --version` below, under
the prompt line. Please don't wrap it with tripple backticks — your
whole input will be turned into a code snippet automatically.
render: console
value: |
$ ansible --version
placeholder: |
$ ansible --version
ansible [core 2.11.0b4.post0] (detached HEAD ref: refs/) last updated 2021/04/02 00:33:35 (GMT +200)
config file = None
configured module search path = ['~/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = ~/src/github/ansible/ansible/lib/ansible
ansible collection location = ~/.ansible/collections:/usr/share/ansible/collections
executable location = bin/ansible
python version = 3.9.0 (default, Oct 26 2020, 13:08:59) [GCC 10.2.0]
jinja version = 2.11.3
libyaml = True
validations:
required: true
- type: textarea
attributes:
label: Configuration
description: >-
Paste verbatim output from `ansible-config dump --only-changed`
below, under the prompt line.
Please don't wrap it with tripple backticks — your
whole input will be turned into a code snippet automatically.
render: console
value: |
$ ansible-config dump --only-changed
placeholder: |
$ ansible-config dump --only-changed
DEFAULT_GATHERING(~/src/github/ansible/ansible/ansible.cfg) = smart
DEFAULT_HOST_LIST(~/src/github/ansible/ansible/ansible.cfg) = ['~/src/github/ansible/ansible/hosts']
DEFAULT_VAULT_PASSWORD_FILE(~/src/github/ansible/ansible/ansible.cfg) = ~/src/github/ansible/ansible/vault/print-password.sh
validations:
required: true
- type: textarea
attributes:
label: OS / Environment
description: >-
Provide all relevant information below, e.g. target OS versions,
network device firmware, etc.
placeholder: RHEL 8, CentOS Stream etc.
validations:
required: true
- type: textarea
attributes:
label: Steps to Reproduce
description: |
Describe exactly how to reproduce the problem, using a minimal test-case. It would *really* help us understand your problem if you could also pased any playbooks, configs and commands you used.
**HINT:** You can paste https://gist.github.com links for larger files.
value: |
<!--- Paste example playbooks or commands between quotes below -->
```yaml (paste below)
```
placeholder: |
1. Implement the following playbook:
```yaml
---
# ping.yml
- hosts: all
gather_facts: false
tasks:
- ping:
...
```
2. Then run `ANSIBLE_DEBUG=1 ansible-playbook ping.yml -vvvvv`
3. An error occurs.
validations:
required: true
- type: textarea
attributes:
label: Expected Results
description: >-
Describe what you expected to happen when running the steps above.
placeholder: >-
I expected X to happen because I assumed Y and was shocked
that it did not.
validations:
required: true
- type: textarea
attributes:
label: Actual Results
description: |
Describe what actually happened. If possible run with extra verbosity (`-vvvv`).
Paste verbatim command output and don't wrap it with tripple backticks — your
whole input will be turned into a code snippet automatically.
render: console
placeholder: >-
Certificate did not match expected hostname: files.pythonhosted.org. Certificate: {'notAfter': 'Apr 28 19:20:25 2021 GMT', 'subjectAltName': ((u'DNS', 'r.ssl.fastly.net'), (u'DNS', '*.catchpoint.com'), (u'DNS', '*.cnn.io'), (u'DNS', '*.dollarshaveclub.com'), (u'DNS', '*.eater.com'), (u'DNS', '*.fastly.picmonkey.com'), (u'DNS', '*.files.saymedia-content.com'), (u'DNS', '*.ft.com'), (u'DNS', '*.meetupstatic.com'), (u'DNS', '*.nfl.com'), (u'DNS', '*.pagar.me'), (u'DNS', '*.picmonkey.com'), (u'DNS', '*.realself.com'), (u'DNS', '*.sbnation.com'), (u'DNS', '*.shakr.com'), (u'DNS', '*.streamable.com'), (u'DNS', '*.surfly.com'), (u'DNS', '*.theverge.com'), (u'DNS', '*.thrillist.com'), (u'DNS', '*.vox-cdn.com'), (u'DNS', '*.vox.com'), (u'DNS', '*.voxmedia.com'), (u'DNS', 'eater.com'), (u'DNS', 'ft.com'), (u'DNS', 'i.gse.io'), (u'DNS', 'picmonkey.com'), (u'DNS', 'realself.com'), (u'DNS', 'static.wixstatic.com'), (u'DNS', 'streamable.com'), (u'DNS', 'surfly.com'), (u'DNS', 'theverge.com'), (u'DNS', 'vox-cdn.com'), (u'DNS', 'vox.com'), (u'DNS', 'www.joyent.com')), 'subject': ((('countryName', u'US'),), (('stateOrProvinceName', u'California'),), (('localityName', u'San Francisco'),), (('organizationName', u'Fastly, Inc'),), (('commonName', u'r.ssl.fastly.net'),))}
Exception:
Traceback (most recent call last):
File "/usr/local/lib/python2.6/dist-packages/pip/basecommand.py", line 215, in main
status = self.run(options, args)
File "/usr/local/lib/python2.6/dist-packages/pip/commands/install.py", line 335, in run
wb.build(autobuilding=True)
File "/usr/local/lib/python2.6/dist-packages/pip/wheel.py", line 749, in build
self.requirement_set.prepare_files(self.finder)
File "/usr/local/lib/python2.6/dist-packages/pip/req/req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "/usr/local/lib/python2.6/dist-packages/pip/req/req_set.py", line 620, in _prepare_file
session=self.session, hashes=hashes)
File "/usr/local/lib/python2.6/dist-packages/pip/download.py", line 821, in unpack_url
hashes=hashes
File "/usr/local/lib/python2.6/dist-packages/pip/download.py", line 659, in unpack_http_url
hashes)
File "/usr/local/lib/python2.6/dist-packages/pip/download.py", line 853, in _download_http_url
stream=True,
File "/usr/local/lib/python2.6/dist-packages/pip/_vendor/requests/sessions.py", line 521, in get
return self.request('GET', url, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/pip/download.py", line 386, in request
return super(PipSession, self).request(method, url, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/pip/_vendor/requests/sessions.py", line 508, in request
resp = self.send(prep, **send_kwargs)
File "/usr/local/lib/python2.6/dist-packages/pip/_vendor/requests/sessions.py", line 618, in send
r = adapter.send(request, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/pip/_vendor/cachecontrol/adapter.py", line 47, in send
resp = super(CacheControlAdapter, self).send(request, **kw)
File "/usr/local/lib/python2.6/dist-packages/pip/_vendor/requests/adapters.py", line 506, in send
raise SSLError(e, request=request)
SSLError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Max retries exceeded with url: /packages/ef/ab/aa12712415809bf698e719b307419f953e25344e8f42d557533d7a02b276/netapp_lib-2020.7.16-py2-none-any.whl (Caused by SSLError(CertificateError("hostname 'files.pythonhosted.org' doesn't match either of 'r.ssl.fastly.net', '*.catchpoint.com', '*.cnn.io', '*.dollarshaveclub.com', '*.eater.com', '*.fastly.picmonkey.com', '*.files.saymedia-content.com', '*.ft.com', '*.meetupstatic.com', '*.nfl.com', '*.pagar.me', '*.picmonkey.com', '*.realself.com', '*.sbnation.com', '*.shakr.com', '*.streamable.com', '*.surfly.com', '*.theverge.com', '*.thrillist.com', '*.vox-cdn.com', '*.vox.com', '*.voxmedia.com', 'eater.com', 'ft.com', 'i.gse.io', 'picmonkey.com', 'realself.com', 'static.wixstatic.com', 'streamable.com', 'surfly.com', 'theverge.com', 'vox-cdn.com', 'vox.com', 'www.joyent.com'",),))
ERROR: Command "/usr/bin/python2.6 /root/ansible/test/lib/ansible_test/_data/quiet_pip.py install --disable-pip-version-check -r /root/ansible/test/lib/ansible_test/_data/requirements/units.txt -r tests/unit/requirements.txt -c /root/ansible/test/lib/ansible_test/_data/requirements/constraints.txt" returned exit status 2.
ERROR: Command "docker exec d47eb360db4ce779c1f690db964655b76e68895c4360ff252c46fe7fe6f5c75a /usr/bin/env ANSIBLE_TEST_CONTENT_ROOT=/root/ansible_collections/netapp/ontap LC_ALL=en_US.UTF-8 /usr/bin/python3.6 /root/ansible/bin/ansible-test units --metadata tests/output/.tmp/metadata-9i2qfrcl.json --truncate 200 --redact --color yes --requirements --python default --requirements-mode only" returned exit status 1.
validations:
required: true
- type: markdown
attributes:
value: >
*One last thing...*
*Please, complete **all** sections as described, this form
is [processed automatically by a robot][ansibot help].*
Thank you for your collaboration!
[ansibot help]:
/ansible/ansibullbot/blob/master/ISSUE_HELP.md#for-issue-submitters
- type: checkboxes
attributes:
label: Code of Conduct
description: |
Read the [Ansible Code of Conduct][CoC] first.
[CoC]: https://docs.ansible.com/ansible/latest/community/code_of_conduct.html?utm_medium=github&utm_source=issue_form--bug_report.yml
options:
- label: I agree to follow the Ansible Code of Conduct
required: true
...

View File

@ -1,26 +0,0 @@
# Ref: https://help.github.com/en/github/building-a-strong-community/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
blank_issues_enabled: false # default: true
contact_links:
- name: 🔐 Security bug report 🔥
url: https://docs.ansible.com/ansible/latest/community/reporting_bugs_and_features.html?utm_medium=github&utm_source=issue_template_chooser
about: |
Please learn how to report security vulnerabilities here.
For all security related bugs, email security@ansible.com
instead of using this issue tracker and you will receive
a prompt response.
For more information, see
https://docs.ansible.com/ansible/latest/community/reporting_bugs_and_features.html
- name: 📝 Ansible Code of Conduct
url: https://docs.ansible.com/ansible/latest/community/code_of_conduct.html?utm_medium=github&utm_source=issue_template_chooser
about: ❤ Be nice to other members of the community. ☮ Behave.
- name: 💬 Talks to the community
url: https://docs.ansible.com/ansible/latest/community/communication.html?utm_medium=github&utm_source=issue_template_chooser#mailing-list-information
about: Please ask and answer usage questions here
- name: ⚡ Working groups
url: https://github.com/ansible/community/wiki
about: Interested in improving a specific area? Become a part of a working group!
- name: 💼 For Enterprise
url: https://www.ansible.com/products/engine?utm_medium=github&utm_source=issue_template_chooser
about: Red Hat offers support for the Ansible Automation Platform

View File

@ -0,0 +1,38 @@
---
name: 📝 Documentation Report
about: Ask us about docs
---
<!--- Verify first that your improvement is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->
##### SUMMARY
<!--- Explain the problem briefly below, add suggestions to wording or structure -->
<!--- HINT: Did you know the documentation has an "Edit on GitHub" link on every page ? -->
##### ISSUE TYPE
- Documentation Report
##### COMPONENT NAME
<!--- Write the short name of the rst file, module, plugin, task or feature below, use your best guess if unsure -->
##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
```
##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
```
##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. OS version, browser, etc. -->
##### ADDITIONAL INFORMATION
<!--- Describe how this improves the documentation, e.g. before/after situation or screenshots -->
<!--- HINT: You can paste gist.github.com links for larger files -->

View File

@ -1,199 +0,0 @@
---
name: 📝 Documentation Report
description: Ask us about docs
body:
- type: markdown
attributes:
value: >
**Thank you for wanting to report a problem with ansible-core
documentation!**
Please fill out your suggestions below. If the problem seems
straightforward, feel free to go ahead and
[submit a pull request] instead!
⚠
Verify first that your issue is not [already reported on
GitHub][issue search].
Also test if the latest release and devel branch are affected too.
**Tip:** If you are seeking community support, please consider
[starting a mailing list thread or chatting in IRC][ML||IRC].
[ML||IRC]:
https://docs.ansible.com/ansible-core/devel/community/communication.html?utm_medium=github&utm_source=issue_form--documentation_report.yml#mailing-list-information
[issue search]: ../search?q=is%3Aissue&type=issues
[submit a pull request]:
https://docs.ansible.com/ansible-core/devel/community/documentation_contributions.html
- type: textarea
attributes:
label: Summary
description: >
Explain the problem briefly below, add suggestions to wording
or structure.
**HINT:** Did you know the documentation has a `View on GitHub`
link on some pages? Feel free to use it to start a pull request
right from the GitHub UI!
placeholder: >-
I was reading the ansible-core documentation of version X and I'm having
problems understanding Y. It would be very helpful if that got
rephrased as Z.
validations:
required: true
- type: dropdown
attributes:
label: Issue Type
description: >
Please select the single available option in the drop-down.
<details>
<summary>
<em>Why?</em>
</summary>
We would do it by ourselves but unfortunatelly, the curent
edition of GitHub Issue Forms Alpha does not support this yet 🤷
_We will make it easier in the future, once GitHub
supports dropdown defaults. Promise!_
</details>
# FIXME: Once GitHub allows defining the default choice, update this
options:
- Documentation Report
validations:
required: true
- type: input
attributes:
label: Component Name
description: >
Write the short name of the rst file, module, plugin, task or
feature below, *use your best guess if unsure*.
**Tip:** Be advised that the source for some parts of the
documentation are hosted outside of this repository. If the page
you are reporting describes modules/plugins/etc that are not
officially supported by the Ansible Core Engineering team, there
is a good chance that it is coming from one of the [Ansible
Collections maintained by the community][collections org]. If this
is the case, please make sure to file an issue under the
appropriate project there instead.
[collections org]: /ansible-collections
placeholder: docs/docsite/rst/dev_guide/debugging.rst
validations:
required: true
- type: textarea
attributes:
label: Ansible Version
description: >-
Paste verbatim output from `ansible --version` below, under
the prompt line. Please don't wrap it with tripple backticks — your
whole input will be turned into a code snippet automatically.
render: console
value: |
$ ansible --version
placeholder: |
$ ansible --version
ansible [core 2.11.0b4.post0] (detached HEAD ref: refs/) last updated 2021/04/02 00:33:35 (GMT +200)
config file = None
configured module search path = ['~/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = ~/src/github/ansible/ansible/lib/ansible
ansible collection location = ~/.ansible/collections:/usr/share/ansible/collections
executable location = bin/ansible
python version = 3.9.0 (default, Oct 26 2020, 13:08:59) [GCC 10.2.0]
jinja version = 2.11.3
libyaml = True
validations:
required: true
- type: textarea
attributes:
label: Configuration
description: >-
Paste verbatim output from `ansible-config dump --only-changed`
below, under the prompt line.
Please don't wrap it with tripple backticks — your
whole input will be turned into a code snippet automatically.
render: console
value: |
$ ansible-config dump --only-changed
placeholder: |
$ ansible-config dump --only-changed
DEFAULT_GATHERING(~/src/github/ansible/ansible/ansible.cfg) = smart
DEFAULT_HOST_LIST(~/src/github/ansible/ansible/ansible.cfg) = ['~/src/github/ansible/ansible/hosts']
DEFAULT_VAULT_PASSWORD_FILE(~/src/github/ansible/ansible/ansible.cfg) = ~/src/github/ansible/ansible/vault/print-password.sh
validations:
required: true
- type: textarea
attributes:
label: OS / Environment
description: >-
Provide all relevant information below, e.g. OS version,
browser, etc.
placeholder: Fedora 33, Firefox etc.
validations:
required: true
- type: textarea
attributes:
label: Additional Information
description: |
Describe how this improves the documentation, e.g. before/after situation or screenshots.
**HINT:** You can paste https://gist.github.com links for larger files.
placeholder: >-
When the improvement is applied, it makes it more straightforward
to understand X.
validations:
required: true
- type: markdown
attributes:
value: >
*One last thing...*
*Please, complete **all** sections as described, this form
is [processed automatically by a robot][ansibot help].*
Thank you for your collaboration!
[ansibot help]:
/ansible/ansibullbot/blob/master/ISSUE_HELP.md#for-issue-submitters
- type: checkboxes
attributes:
label: Code of Conduct
description: |
Read the [Ansible Code of Conduct][CoC] first.
[CoC]: https://docs.ansible.com/ansible/latest/community/code_of_conduct.html?utm_medium=github&utm_source=issue_form--documentation_report.yml
options:
- label: I agree to follow the Ansible Code of Conduct
required: true
...

View File

@ -0,0 +1,25 @@
---
name: ✨ Feature request
about: Suggest an idea for this project
---
<!--- Verify first that your feature was not already discussed on GitHub -->
<!--- Complete *all* sections as described, this form is processed automatically -->
##### SUMMARY
<!--- Describe the new feature/improvement briefly below -->
##### ISSUE TYPE
- Feature Idea
##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
##### ADDITIONAL INFORMATION
<!--- Describe how the feature would be used, why it is needed and what it would solve -->
<!--- Paste example playbooks or commands between quotes below -->
```yaml
```
<!--- HINT: You can also paste gist.github.com links for larger files -->

View File

@ -1,192 +0,0 @@
---
name: ✨ Feature request
description: Suggest an idea for this project
body:
- type: markdown
attributes:
value: >
**Thank you for wanting to suggest a feature for ansible-core!**
💡
Before you go ahead with your request, please first consider if it
would be useful for majority of the ansible-core users. As a
general rule of thumb, any feature that is only of interest to a
small sub group should be [implemented in a third-party Ansible
Collection][contribute to collections] or maybe even just your
project alone. Be mindful of the fact that the essential
ansible-core features have a broad impact.
If unsure, consider filing a [new proposal] instead outlining your
use-cases, the research and implementation considerations. Then,
start a discussion on one of the public [IRC meetings] we have just
for this.
<details>
<summary>
❗ Every change breaks someone's workflow.
</summary>
[![❗ Every change breaks someone's workflow.
](https://imgs.xkcd.com/comics/workflow.png)
](https://xkcd.com/1172/)
</details>
⚠
Verify first that your idea is not [already requested on
GitHub][issue search].
Also test if the devel branch does not already implement this.
**Tip:** If you are seeking community support, please consider
[starting a mailing list thread or chatting in IRC][ML||IRC].
[contribute to collections]:
https://docs.ansible.com/ansible-core/devel/community/contributing_maintained_collections.html?utm_medium=github&utm_source=issue_form--feature_request.yml
[IRC meetings]:
https://docs.ansible.com/ansible-core/devel/community/communication.html?utm_medium=github&utm_source=issue_form--feature_request.yml#irc-meetings
[issue search]: ../search?q=is%3Aissue&type=issues
[ML||IRC]:
https://docs.ansible.com/ansible-core/devel/community/communication.html?utm_medium=github&utm_source=issue_form--feature_request.yml#mailing-list-information
[new proposal]: ../../proposals/issues/new
- type: textarea
attributes:
label: Summary
description: >
Describe the new feature/improvement you would like briefly below.
What's the problem this feature will solve?
What are you trying to do, that you are unable to achieve
with ansible-core as it currently stands?
* Provide examples of real-world use cases that this would enable
and how it solves the problem you described.
* How do you solve this now?
* Have you tried to work around the problem using other tools?
* Could there be a different approach to solving this issue?
*Know **exactly** what you want?* Consider filing a [new proposal]
instead outlining your research and implementation considerations.
[new proposal]: ../../proposals/issues/new
placeholder: >-
I am trying to do X with ansible-core from the devel branch on GitHub and
I think that implementing a feature Y would be very helpful for me and
every other user of ansible-core because of Z.
validations:
required: true
- type: dropdown
attributes:
label: Issue Type
description: >
Please select the single available option in the drop-down.
<details>
<summary>
<em>Why?</em>
</summary>
We would do it by ourselves but unfortunatelly, the curent
edition of GitHub Issue Forms Alpha does not support this yet 🤷
_We will make it easier in the future, once GitHub
supports dropdown defaults. Promise!_
</details>
# FIXME: Once GitHub allows defining the default choice, update this
options:
- Feature Idea
validations:
required: true
- type: input
attributes:
label: Component Name
description: >
Write the short name of the module, plugin, task or feature below,
*use your best guess if unsure*.
Be aware that a lot of content that used to reside in this repository
previously, is now hosted under [individual collection
projects][collections org].
If this is the case, please make sure to file an issue under the
appropriate project there instead.
[collections org]: /ansible-collections
placeholder: dnf, apt, yum, pip, user etc.
validations:
required: true
- type: textarea
attributes:
label: Additional Information
description: |
Describe how the feature would be used, why it is needed and what it would solve.
**HINT:** You can paste https://gist.github.com links for larger files.
value: |
<!--- Paste example playbooks or commands between quotes below -->
```yaml (paste below)
```
placeholder: >-
I asked on https://stackoverflow.com/.... and the community
advised me to do X, Y and Z.
validations:
required: true
- type: markdown
attributes:
value: >
*One last thing...*
*Please, complete **all** sections as described, this form
is [processed automatically by a robot][ansibot help].*
Thank you for your collaboration!
[ansibot help]:
/ansible/ansibullbot/blob/master/ISSUE_HELP.md#for-issue-submitters
- type: checkboxes
attributes:
label: Code of Conduct
description: |
Read the [Ansible Code of Conduct][CoC] first.
[CoC]: https://docs.ansible.com/ansible/latest/community/code_of_conduct.html?utm_medium=github&utm_source=issue_form--feature_request.yml
options:
- label: I agree to follow the Ansible Code of Conduct
required: true
...

View File

@ -0,0 +1,8 @@
---
name: 🔥 Security bug report
about: How to report security vulnerabilities
---
For all security related bugs, email security@ansible.com instead of using this issue tracker and you will receive a prompt response.
For more information, see https://docs.ansible.com/ansible/latest/community/reporting_bugs_and_features.html

View File

@ -8,7 +8,7 @@
- Bugfix Pull Request
- Docs Pull Request
- Feature Pull Request
- Test Pull Request
- New Module Pull Request
##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below -->

View File

@ -1,15 +0,0 @@
---
- 2.13.0 Nobody's Fault but Mine
- 2.12.0 Dazed and Confused
- 2.11.0 Hey Hey, What Can I Do
- 2.10.0 When the Levee Breaks
- 2.9.0 Immigrant Song
- 2.8.0 How Many More Times
- 2.7.0 In the Light
- 2.6.0 Heartbreaker
- 2.5.0 Kashmir
- 2.4.0 Dancing Days
- 2.3.0 Ramble On
- 2.2.0 The Battle of Evermore
- 2.1.0 The Song Remains the Same
- 2.0.0 Over the Hills and Far Away

28
.gitignore vendored
View File

@ -32,17 +32,11 @@ docs/man/man3/*
docs/docsite/_build
docs/docsite/*.html
docs/docsite/htmlout
docs/docsite/rst/conf.py
docs/docsite/rst/index.rst
docs/docsite/rst/cli/ansible-*.rst
docs/docsite/rst/cli/ansible.rst
docs/docsite/rst/dev_guide/collections_galaxy_meta.rst
docs/docsite/rst/dev_guide/testing/sanity/index.rst.new
docs/docsite/rst/dev_guide/index.rst
docs/docsite/rst/modules/*.rst
docs/docsite/rst/collections/*.rst
!docs/docsite/rst/collections/all_plugins.rst
docs/docsite/rst/collections/*/*.rst
docs/docsite/rst/playbooks_directives.rst
docs/docsite/rst/plugins_by_category.rst
docs/docsite/rst/plugins/*/*.rst
@ -53,10 +47,12 @@ docs/docsite/searchindex.js
docs/docsite/_static/*.gif
docs/docsite/_static/*.png
docs/docsite/_static/websupport.js
# deb building stuff...
/debian/
deb-build
# Vim swap files
*.swp
*.swo
[._]*.un~
credentials.yml
# test output
*.retry
@ -68,7 +64,6 @@ credentials.yml
results.xml
coverage.xml
/test/units/cover-html
/test/integration/inventory
/test/integration/targets/*/backup/
/test/cache/*
# Development
@ -76,22 +71,11 @@ coverage.xml
venv
Vagrantfile
.vagrant
# Backwards compatibility with `stable-2.9` and earlier branches.
# Also used in the `devel` branch during early Ansible 2.10 development.
/lib/ansible.egg-info/
# First used in the `devel` branch during Ansible 2.10 development.
/lib/ansible_base.egg-info/
# First used in the `devel` branch during Ansible 2.11 development.
/lib/ansible_core.egg-info/
# vendored lib dir
lib/ansible/_vendor/*
!lib/ansible/_vendor/__init__.py
# test stuff
ansible.egg-info/
/shippable/
/test/integration/cloud-config-*.*
!/test/integration/cloud-config-*.*.template
.python-version
/hacking/tests/selinux/*.mod
/hacking/tests/selinux/*.pp
# Release directory
packaging/release/ansible_release
/.cache/
@ -115,3 +99,5 @@ test/units/.coverage.*
/SYMLINK_CACHE.json
changelogs/.plugin-cache.yaml
.ansible-test-timeout.json
# ansible-test temporary metadata file for use with delgation
/metadata-*.json

10
CODING_GUIDELINES.md Normal file
View File

@ -0,0 +1,10 @@
Coding Guidelines
=================
Hi! Thanks for your interest in contributing to Ansible. We document our Coding Guidelines in the [Developer Guide](https://docs.ansible.com/ansible/devel/dev_guide/). We particularly suggest you review:
* [Contributing your module to Ansible](https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_checklist.html)
* [Development conventions, tips and pitfalls](https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_best_practices.html)
Our [Community Guide](https://docs.ansible.com/ansible/devel/community/) may also help you connect with the community of Ansible developers.

View File

@ -2,23 +2,15 @@ include README.rst
include COPYING
include SYMLINK_CACHE.json
include requirements.txt
include shippable.yml
recursive-include docs *
include docs/docsite/rst/collections/all_plugins.rst
exclude docs/docsite/rst_warnings
exclude docs/docsite/rst/conf.py
exclude docs/docsite/rst/index.rst
exclude docs/docsite/rst/dev_guide/index.rst
exclude docs/docsite/rst/dev_guide/testing/sanity/bin-symlinks.rst
exclude docs/docsite/rst/dev_guide/testing/sanity/botmeta.rst
exclude docs/docsite/rst/dev_guide/testing/sanity/integration-aliases.rst
exclude docs/docsite/rst/dev_guide/testing/sanity/release-names.rst
recursive-exclude docs/docsite/_build *
recursive-exclude docs/docsite/_extensions *.pyc *.pyo
include examples/hosts
include examples/ansible.cfg
include examples/scripts/ConfigureRemotingForAnsible.ps1
include examples/scripts/upgrade_to_ps3.ps1
include lib/ansible/keyword_desc.yml
recursive-include lib/ansible/executor/powershell *.ps1
recursive-include lib/ansible/module_utils/csharp *.cs
recursive-include lib/ansible/module_utils/powershell *.psm1
@ -29,23 +21,17 @@ recursive-include licenses *.txt
recursive-include packaging *
recursive-include test/ansible_test *.py Makefile
recursive-include test/integration *
recursive-include test/lib/ansible_test/config *.yml *.template
recursive-include test/lib/ansible_test/_data *.cfg *.in *.ini *.ps1 *.txt *.yml coveragerc
recursive-include test/lib/ansible_test/_util *.cfg *.ini *.json *.ps1 *.psd1 *.py *.sh *.txt *.yml
recursive-include test/lib/ansible_test/_util/controller/sanity/validate-modules validate-modules
recursive-include test/sanity *.in *.json *.py *.txt
recursive-include test/support *.py *.ps1 *.psm1 *.cs
recursive-include test/lib/ansible_test/config *.template
recursive-include test/lib/ansible_test/_data *.cfg *.ini *.json *.ps1 *.psd1 *.py *.sh *.txt *.yml coveragerc inventory
recursive-include test/lib/ansible_test/_data/injector ansible ansible-config ansible-connection ansible-console ansible-doc ansible-galaxy ansible-playbook ansible-pull ansible-test ansible-vault pytest
recursive-include test/lib/ansible_test/_data/sanity/validate-modules validate-modules
recursive-include test/sanity *.json *.py *.txt
exclude test/sanity/code-smell/botmeta.*
exclude test/sanity/code-smell/release-names.*
exclude test/lib/ansible_test/_internal/commands/sanity/bin_symlinks.py
exclude test/lib/ansible_test/_internal/commands/sanity/integration_aliases.py
recursive-include test/units *
include Makefile
include MANIFEST.in
include changelogs/CHANGELOG*.rst
include changelogs/changelog.yaml
include contrib/README.md
recursive-include contrib/inventory *.py *.ini *.yml *.yaml
recursive-include hacking/build_library *.py
include hacking/build-ansible.py
include hacking/test-module.py
include hacking/update-sanity-requirements.py
include bin/*

5
MODULE_GUIDELINES.md Normal file
View File

@ -0,0 +1,5 @@
# Module Maintainer Guidelines
The Ansible Module Maintainer Guidelines can now be found in the [official Ansible community guide](https://docs.ansible.com/ansible/latest/community/maintainers.html).
See also the [Developers Guide](https://docs.ansible.com/ansible/latest/dev_guide/)

263
Makefile
View File

@ -4,13 +4,19 @@
#
# useful targets:
# make clean ---------------- clean up
# make webdocs -------------- produce ansible doc at docs/docsite/_build/html
# make sdist ---------------- produce a tarball
# make srpm ----------------- produce a SRPM
# make rpm ----------------- produce RPMs
# 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/devel/dev_guide/testing_units.html for requirements)
########################################################
# variable section
NAME = ansible-core
NAME = ansible
OS = $(shell uname -s)
PREFIX ?= '/usr/local'
SDIST_DIR ?= 'dist'
@ -26,15 +32,98 @@ else
ASCII2MAN = @echo "ERROR: rst2man from docutils command is not installed but is required to build $(MANPAGES)" && exit 1
endif
PYTHON ?= python
PYTHON=python
GENERATE_CLI = hacking/build-ansible.py generate-man
SITELIB = $(shell $(PYTHON) -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")
# 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),)
GIT_DATE := $(shell git log -n 1 --format="%ci")
GIT_HASH := $(shell git log -n 1 --format="%h")
GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD | sed 's/[-_.\/]//g')
GITINFO = .$(GIT_HASH).$(GIT_BRANCH)
else
GITINFO = ""
endif
ifeq ($(shell echo $(OS) | egrep -c 'Darwin|FreeBSD|OpenBSD|DragonFly'),1)
DATE := $(shell date -j -r $(shell git log -n 1 --format="%ct") +%Y%m%d%H%M)
CPUS ?= $(shell sysctl hw.ncpu|awk '{print $$2}')
else
DATE := $(shell date --utc --date="$(GIT_DATE)" +%Y%m%d%H%M)
CPUS ?= $(shell nproc)
endif
# DEB build parameters
DEBUILD_BIN ?= debuild
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 ?= $(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)
# Do not sign unofficial builds
DEBUILD_OPTS += -uc -us
DPUT_OPTS += -u
endif
DEBUILD = $(DEBUILD_BIN) $(DEBUILD_OPTS)
DEB_PPA ?= ppa
# Choose the desired Ubuntu release: lucid precise saucy trusty
DEB_DIST ?= unstable
# pbuilder parameters
PBUILDER_ARCH ?= amd64
PBUILDER_CACHE_DIR = /var/cache/pbuilder
PBUILDER_BIN ?= pbuilder
PBUILDER_OPTS ?= --debootstrapopts --variant=buildd --architecture $(PBUILDER_ARCH) --debbuildopts -b
# RPM build parameters
RPMSPECDIR= packaging/rpm
RPMSPEC = $(RPMSPECDIR)/ansible.spec
RPMDIST = $(shell rpm --eval '%{?dist}')
ifneq ($(OFFICIAL),yes)
RPMRELEASE = 100.git$(DATE)$(GITINFO)
endif
ifeq ($(PUBLISH),nightly)
# https://fedoraproject.org/wiki/Packaging:Versioning#Snapshots
RPMRELEASE = $(RELEASE).$(DATE)git.$(GIT_HASH)
endif
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 ?= bin/ansible-test
TEST_FLAGS ?=
@ -60,10 +149,18 @@ tests:
tests-py3:
$(ANSIBLE_TEST) units -v --python $(PYTHON3_VERSION) $(TEST_FLAGS)
.PHONY: tests-nonet
tests-nonet:
$(ANSIBLE_TEST) units -v --python $(PYTHON_VERSION) $(TEST_FLAGS) --exclude test/units/modules/network/
.PHONY: integration
integration:
$(ANSIBLE_TEST) integration -v --docker $(IMAGE) $(TARGET) $(TEST_FLAGS)
.PHONY: authors
authors:
sh hacking/authors.sh
# Regenerate %.1.rst if %.1.rst.in has been modified more
# recently than %.1.rst.
%.1.rst: %.1.rst.in
@ -80,7 +177,7 @@ clean:
@echo "Cleaning up distutils stuff"
rm -rf build
rm -rf dist
rm -rf lib/ansible*.egg-info/
rm -rf lib/ansible.egg-info/
@echo "Cleaning up byte compiled python stuff"
find . -type f -regex ".*\.py[co]$$" -delete
find . -type d -name "__pycache__" -delete
@ -94,15 +191,21 @@ clean:
rm -f ./docs/man/man1/*
@echo "Cleaning up output from test runs"
rm -rf test/test_data
rm -rf shippable/
rm -rf logs/
rm -rf .cache/
rm -f test/units/.coverage*
rm -rf test/results/*/*
find test/ -type f -name '*.retry' -delete
@echo "Cleaning up symlink cache"
rm -f SYMLINK_CACHE.json
@echo "Cleaning up RPM building stuff"
rm -rf MANIFEST rpm-build
@echo "Cleaning up Debian building stuff"
rm -rf debian
rm -rf deb-build
rm -rf docs/json
rm -rf docs/js
@echo "Cleaning up authors file"
rm -f AUTHORS.TXT
@echo "Cleaning up docsite"
$(MAKE) -C docs/docsite clean
@ -120,7 +223,6 @@ install_manpages:
.PHONY: sdist_check
sdist_check:
$(PYTHON) -c 'import setuptools, sys; sys.exit(int(not (tuple(map(int, setuptools.__version__.split("."))) > (39, 2, 0))))'
$(PYTHON) packaging/sdist/check-link-behavior.py
.PHONY: sdist
@ -140,15 +242,160 @@ sdist_upload: clean docs
.PHONY: changelog
changelog:
PYTHONPATH=./lib antsibull-changelog release -vv --use-ansible-doc && PYTHONPATH=./lib antsibull-changelog generate -vv --use-ansible-doc
PYTHONPATH=./lib packaging/release/changelogs/changelog.py release -vv && PYTHONPATH=./lib packaging/release/changelogs/changelog.py generate -vv
.PHONY: rpmcommon
rpmcommon: sdist
@mkdir -p rpm-build
@cp dist/*.gz rpm-build/
@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/ --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
@echo "#############################################"
.PHONY: mock-rpm
mock-rpm: /etc/mock/$(MOCK_CFG).cfg mock-srpm
$(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
@echo "#############################################"
.PHONY: srpm
srpm: rpmcommon
@rpmbuild --define "_topdir %(pwd)/rpm-build" \
--define "_builddir %{_topdir}" \
--define "_rpmdir %{_topdir}" \
--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 "#############################################"
@echo "Ansible SRPM is built:"
@echo " rpm-build/$(RPMNVR).src.rpm"
@echo "#############################################"
.PHONY: rpm
rpm: rpmcommon
@rpmbuild --define "_topdir %(pwd)/rpm-build" \
--define "_builddir %{_topdir}" \
--define "_rpmdir %{_topdir}" \
--define "_srcrpmdir %{_topdir}" \
--define "_specdir $(RPMSPECDIR)" \
--define "_sourcedir %{_topdir}" \
--define "_rpmfilename %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{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 "#############################################"
@echo "Ansible RPM is built:"
@echo " rpm-build/$(RPMNVR).noarch.rpm"
@echo "#############################################"
.PHONY: debian
debian: sdist
@for DIST in $(DEB_DIST) ; do \
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%|$(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
deb: deb-src
@for DIST in $(DEB_DIST) ; do \
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)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}.dsc ; \
done
@echo "#############################################"
@echo "Ansible DEB artifacts:"
@for DIST in $(DEB_DIST) ; do \
echo deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
done
@echo "#############################################"
# Build package outside of pbuilder, with locally installed dependencies.
# Install BuildRequires as noted in packaging/debian/control.
.PHONY: local_deb
local_deb: debian
@for DIST in $(DEB_DIST) ; do \
(cd deb-build/$${DIST}/$(NAME)-$(VERSION)/ && $(DEBUILD) -b) ; \
done
@echo "#############################################"
@echo "Ansible DEB artifacts:"
@for DIST in $(DEB_DIST) ; do \
echo deb-build/$${DIST}/$(NAME)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_amd64.changes ; \
done
@echo "#############################################"
.PHONY: deb-src
deb-src: debian
@for DIST in $(DEB_DIST) ; do \
(cd deb-build/$${DIST}/$(NAME)-$(VERSION)/ && $(DEBUILD) -S) ; \
done
@echo "#############################################"
@echo "Ansible DEB artifacts:"
@for DIST in $(DEB_DIST) ; do \
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)_$(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)_$(DEB_VERSION)-$(DEB_RELEASE)~$${DIST}_source.changes ; \
done
.PHONY: epub
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)
.PHONY: generate_rst
generate_rst: lib/ansible/cli/*.py
mkdir -p ./docs/man/man1/ ; \
$(PYTHON) $(GENERATE_CLI) --template-file=docs/templates/man.j2 --output-dir=docs/man/man1/ --output-format man lib/ansible/cli/*.py
PYTHONPATH=./lib $(GENERATE_CLI) --template-file=docs/templates/man.j2 --output-dir=docs/man/man1/ --output-format man lib/ansible/cli/*.py
docs: generate_rst
$(MAKE) $(MANPAGES)
.PHONY: alldocs
alldocs: docs webdocs
version:
@echo $(VERSION)

View File

@ -1,4 +1,4 @@
|PyPI version| |Docs badge| |Chat badge| |Build Status| |Code Of Conduct| |Mailing Lists| |License| |CII Best Practices|
|PyPI version| |Docs badge| |Chat badge| |Build Status| |Code Of Conduct| |Mailing Lists| |License|
*******
Ansible
@ -7,13 +7,13 @@ Ansible
Ansible is a radically simple IT automation system. It handles
configuration management, application deployment, cloud provisioning,
ad-hoc task execution, network automation, and multi-node orchestration. Ansible makes complex
changes like zero-downtime rolling updates with load balancers easy. More information on the Ansible `website <https://ansible.com/>`_.
changes like zero-downtime rolling updates with load balancers easy. More information on `the Ansible website <https://ansible.com/>`_.
Design Principles
=================
* Have an extremely simple setup process with a minimal learning curve.
* Manage machines quickly and in parallel.
* 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
@ -28,10 +28,13 @@ Design Principles
Use Ansible
===========
You can install a released version of Ansible with ``pip`` or a package manager. See our
You can install a released version of Ansible via ``pip``, a package manager, or
our `release repository <https://releases.ansible.com/ansible/>`_. See our
`installation guide <https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html>`_ for details on installing Ansible
on a variety of platforms.
Red Hat offers supported builds of `Ansible Engine <https://www.ansible.com/ansible-engine>`_.
Power users and developers can run the ``devel`` branch, which has the latest
features and fixes, directly. Although it is reasonably stable, you are more likely to encounter
breaking changes when running the ``devel`` branch. We recommend getting involved
@ -50,26 +53,18 @@ Get Involved
* Submit a proposed code update through a pull request to the ``devel`` branch.
* Talk to us before making larger changes
to avoid duplicate efforts. This not only helps everyone
know what is going on, but it also helps save time and effort if we decide
know what is going on, it also helps save time and effort if we decide
some changes are needed.
* For a list of email lists, IRC channels and Working Groups, see the
`Communication page <https://docs.ansible.com/ansible/latest/community/communication.html>`_
Coding Guidelines
=================
We document our Coding Guidelines in the `Developer Guide <https://docs.ansible.com/ansible/devel/dev_guide/>`_. We particularly suggest you review:
* `Contributing your module to Ansible <https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_checklist.html>`_
* `Conventions, tips, and pitfalls <https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_best_practices.html>`_
Branch Info
===========
* The ``devel`` branch corresponds to the release actively under development.
* The ``stable-2.X`` branches correspond to stable releases.
* Create a branch based on ``devel`` and set up a `dev environment <https://docs.ansible.com/ansible/latest/dev_guide/developing_modules_general.html#common-environment-setup>`_ if you want to open a PR.
* See the `Ansible release and maintenance <https://docs.ansible.com/ansible/devel/reference_appendices/release_and_maintenance.html>`_ page for information about active branches.
* See the `Ansible release and maintenance <https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html>`_ page for information about active branches.
Roadmap
=======
@ -81,7 +76,7 @@ Authors
=======
Ansible was created by `Michael DeHaan <https://github.com/mpdehaan>`_
and has contributions from over 5000 users (and growing). Thanks everyone!
and has contributions from over 4000 users (and growing). Thanks everyone!
`Ansible <https://www.ansible.com>`_ is sponsored by `Red Hat, Inc.
<https://www.redhat.com>`_
@ -93,12 +88,12 @@ GNU General Public License v3.0 or later
See `COPYING <COPYING>`_ to see the full text.
.. |PyPI version| image:: https://img.shields.io/pypi/v/ansible-core.svg
:target: https://pypi.org/project/ansible-core
.. |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/latest/
.. |Build Status| image:: https://dev.azure.com/ansible/ansible/_apis/build/status/CI?branchName=devel
:target: https://dev.azure.com/ansible/ansible/_build/latest?definitionId=20&branchName=devel
.. |Build Status| image:: https://api.shippable.com/projects/573f79d02a8192902e20e34b/badge?branch=devel
:target: https://app.shippable.com/projects/573f79d02a8192902e20e34b
.. |Chat badge| image:: https://img.shields.io/badge/chat-IRC-brightgreen.svg
:target: https://docs.ansible.com/ansible/latest/community/communication.html
.. |Code Of Conduct| image:: https://img.shields.io/badge/code%20of%20conduct-Ansible-silver.svg
@ -110,6 +105,3 @@ See `COPYING <COPYING>`_ to see the full text.
.. |License| image:: https://img.shields.io/badge/license-GPL%20v3.0-brightgreen.svg
:target: COPYING
:alt: Repository License
.. |CII Best Practices| image:: https://bestpractices.coreinfrastructure.org/projects/2372/badge
:target: https://bestpractices.coreinfrastructure.org/projects/2372
:alt: Ansible CII Best Practices certification

View File

@ -1 +1 @@
../lib/ansible/cli/adhoc.py
../lib/ansible/cli/scripts/ansible_cli_stub.py

View File

@ -1 +1 @@
../lib/ansible/cli/config.py
ansible

View File

@ -1 +1 @@
../lib/ansible/cli/console.py
ansible

View File

@ -1 +1 @@
../lib/ansible/cli/doc.py
ansible

View File

@ -1 +1 @@
../lib/ansible/cli/galaxy.py
ansible

View File

@ -1 +1 @@
../lib/ansible/cli/inventory.py
ansible

View File

@ -1 +1 @@
../lib/ansible/cli/playbook.py
ansible

View File

@ -1 +1 @@
../lib/ansible/cli/pull.py
ansible

View File

@ -1 +1 @@
../test/lib/ansible_test/_util/target/cli/ansible_test_cli_stub.py
../test/lib/ansible_test/_data/cli/ansible_test_cli_stub.py

View File

@ -1 +1 @@
../lib/ansible/cli/vault.py
ansible

1638
changelogs/.changes.yaml Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,501 +0,0 @@
=========================================================
ansible-core 2.13 "Nobody's Fault but Mine" Release Notes
=========================================================
.. contents:: Topics
v2.13.4
=======
Release Summary
---------------
| Release Date: 2022-09-12
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Bugfixes
--------
- Fix for network_cli not getting all relevant connection options
- ansible-galaxy - Fix detection of ``--role-file`` in arguments for implicit role invocation (https://github.com/ansible/ansible/issues/78204)
- ansible-galaxy - Fix exit codes for role search and delete (https://github.com/ansible/ansible/issues/78516)
- ansible-test - Fix change detection for ansible-test's own integration tests.
- ansible-test - ansible-doc sanity test - Correctly determine the fully-qualified collection name for plugins in subdirectories, resolving https://github.com/ansible/ansible/issues/78490.
- apt - don't actually update the cache in check mode with update_cache=true.
- apt - don't mark existing packages as manually installed in check mode (https://github.com/ansible/ansible/issues/66413).
- apt - fix package selection to include /etc/apt/preferences(.d) (https://github.com/ansible/ansible/issues/77969)
- urls - Guard imports of ``urllib3`` by catching ``Exception`` instead of ``ImportError`` to prevent exceptions in the import process of optional dependencies from preventing use of ``urls.py`` (https://github.com/ansible/ansible/issues/78648)
- wait_for - Read file and perform comparisons using bytes to avoid decode errors (https://github.com/ansible/ansible/issues/78214)
v2.13.3
=======
Release Summary
---------------
| Release Date: 2022-08-15
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Bugfixes
--------
- Avoid 'unreachable' error when chmod on AIX has 255 as return code.
- Fix PluginLoader to mimic Python import machinery by adding module to sys.modules before exec
- Fix dnf module documentation to indicate that comparison operators for package version require spaces around them (https://github.com/ansible/ansible/issues/78295)
- ansible-connection - decrypt vaulted parameters before sending over the socket, as vault secrets are not available on the other side.
- ansible-galaxy - Fix reinitializing the whole collection directory with ``ansible-galaxy collection init ns.coll --force``. Now directories and files that are not included in the collection skeleton will be removed.
- ansible-galaxy - do not require mandatory keys in the ``galaxy.yml`` of source collections when listing them (https://github.com/ansible/ansible/issues/70180).
- ansible-galaxy - fix listing collections that contains metadata but the namespace or name are not strings.
- ansible-galaxy - fix setting the cache for paginated responses from Galaxy NG/AH (https://github.com/ansible/ansible/issues/77911).
- ansible-test - Delegation for commands which generate output for programmatic consumption no longer redirect all output to stdout. The affected commands and options are ``shell``, ``sanity --lint``, ``sanity --list-tests``, ``integration --list-targets``, ``coverage analyze``
- ansible-test - Delegation now properly handles arguments given after ``--`` on the command line.
- ansible-test - Test configuration for collections is now parsed only once, prior to delegation. Fixes issue: https://github.com/ansible/ansible/issues/78334
- ansible-test - The ``shell`` command no longer redirects all output to stdout when running a provided command. Any command output written to stderr will be mixed with the stderr output from ansible-test.
- ansible-test - The ``shell`` command no longer requests a TTY when using delegation unless an interactive shell is being used. An interactive shell is the default behavior when no command is given to pass to the shell.
- dnf - fix output parsing on systems with ``LANGUAGE`` set to a language other than English (https://github.com/ansible/ansible/issues/78193)
- if a config setting prevents running ansible it should at least show it's "origin".
- prevent type annotation shim failures from causing runtime failures (https://github.com/ansible/ansible/pull/77860)
- template module/lookup - fix ``convert_data`` option that was effectively always set to True for Jinja macros (https://github.com/ansible/ansible/issues/78141)
- uri - properly use uri parameter use_proxy (https://github.com/ansible/ansible/issues/58632)
- yum - fix traceback when ``releasever`` is specified with ``latest`` (https://github.com/ansible/ansible/issues/78058)
v2.13.2
=======
Release Summary
---------------
| Release Date: 2022-07-18
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Minor Changes
-------------
- ansible-test - An improved error message is shown when the download of a pip bootstrap script fails. The download now uses ``urllib2`` instead of ``urllib`` on Python 2.
Bugfixes
--------
- Move undefined check from concat to finalize (https://github.com/ansible/ansible/issues/78156)
- ansible-doc - no longer list module and plugin aliases that are created with symlinks (https://github.com/ansible/ansible/pull/78137).
- ansible-doc - when listing modules in collections, proceed recursively. This fixes module listing for community.general 5.x.y and community.network 4.x.y (https://github.com/ansible/ansible/pull/78137).
- ansible-doc will not add 'website for' in ":ref:" substitutions as it made them confusing.
- file backed cache plugins now handle concurrent access by making atomic updates to the files.
- password lookup does not ignore k=v arguments anymore.
- user - Fix error "Permission denied" in user module while generating SSH keys (https://github.com/ansible/ansible/issues/78017).
v2.13.1
=======
Release Summary
---------------
| Release Date: 2022-06-20
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Minor Changes
-------------
- Add an 'action_plugin' field for modules in runtime.yml plugin_routing.
This fixes module_defaults by supporting modules-as-redirected-actions
without redirecting module_defaults entries to the common action.
.. code: yaml
plugin_routing:
action:
facts:
redirect: ns.coll.eos
command:
redirect: ns.coll.eos
modules:
facts:
redirect: ns.coll.eos_facts
command:
redirect: ns.coll.eos_command
With the runtime.yml above for ns.coll, a task such as
.. code: yaml
- hosts: all
module_defaults:
ns.coll.eos_facts: {'valid_for_eos_facts': 'value'}
ns.coll.eos_command: {'not_valid_for_eos_facts': 'value'}
tasks:
- ns.coll.facts:
will end up with defaults for eos_facts and eos_command
since both modules redirect to the same action.
To select an action plugin for a module without merging
module_defaults, define an action_plugin field for the resolved
module in the runtime.yml.
.. code: yaml
plugin_routing:
modules:
facts:
redirect: ns.coll.eos_facts
action_plugin: ns.coll.eos
command:
redirect: ns.coll.eos_command
action_plugin: ns.coll.eos
The action_plugin field can be a redirected action plugin, as
it is resolved normally.
Using the modified runtime.yml, the example task will only use
the ns.coll.eos_facts defaults.
- ansible-galaxy - Support resolvelib versions 0.6.x, 0.7.x, and 0.8.x. The full range of supported versions is now >= 0.5.3, < 0.9.0.
- ansible-test - Add RHEL 9.0 remote support.
- ansible-test - Add support for Ubuntu VMs using the ``--remote`` option.
- ansible-test - Add support for exporting inventory with ``ansible-test shell --export {path}``.
- ansible-test - Add support for multi-arch remotes.
- ansible-test - Add support for running non-interactive commands with ``ansible-test shell``.
- ansible-test - Avoid using the ``mock_use_standalone_module`` setting for unit tests running on Python 3.8 or later.
- ansible-test - Blocking mode is now enforced for stdin, stdout and stderr. If any of these are non-blocking then ansible-test will exit during startup with an error.
- ansible-test - Improve consistency of output messages by using stdout or stderr for most output, but not both.
- ansible-test - The ``shell`` command can be used outside a collection if no controller delegation is required.
Bugfixes
--------
- Add PyYAML >= 5.1 as a dependency of ansible-core to be compatible with Python 3.8+.
- ansible-config dump - Only display plugin type headers when plugin options are changed if --only-changed is specified.
- ansible-galaxy - handle unsupported versions of resolvelib gracefully.
- ansible-test - Fix internal validation of remote completion configuration.
- ansible-test - Prevent ``--target-`` prefixed options for the ``shell`` command from being combined with legacy environment options.
- ansible-test - Sanity test output with the ``--lint`` option is no longer mixed in with bootstrapping output.
- ansible-test - Subprocesses are now isolated from the stdin, stdout and stderr of ansible-test. This avoids issues with subprocesses tampering with the file descriptors, such as SSH making them non-blocking. As a result of this change, subprocess output from unit and integration tests on stderr now go to stdout.
- ansible-test - Subprocesses no longer have access to the TTY ansible-test is connected to, if any. This maintains consistent behavior between local testing and CI systems, which typically do not provide a TTY. Tests which require a TTY should use pexpect or another mechanism to create a PTY.
- apt module now correctly handles virtual packages.
- lookup plugin - catch KeyError when lookup returns dictionary (https://github.com/ansible/ansible/pull/77789).
- pip - fix cases where resolution of pip Python module fails when importlib.util has not already been imported
- plugin loader - Sort results when fuzzy matching plugin names (https://github.com/ansible/ansible/issues/77966).
- plugin loader will now load config data for plugin by name instead of by file to avoid issues with the same file being loaded under different names (fqcn + short name).
- psrp connection now handles default to inventory_hostname correctly.
- winrm connection now handles default to inventory_hostname correctly.
v2.13.0
=======
Release Summary
---------------
| Release Date: 2022-05-16
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Major Changes
-------------
- Jinja2 Controller Requirement - Jinja2 3.0.0 or newer is required for the control node (the machine that runs Ansible) (https://github.com/ansible/ansible/pull/75881)
- Templating - remove ``safe_eval`` in favor of using ``NativeEnvironment`` but utilizing ``literal_eval`` only in cases when ``safe_eval`` was used (https://github.com/ansible/ansible/pull/75587)
Minor Changes
-------------
- Action Plugins - Add helper method for argument spec validation, and extend to pause and async_wrapper
- Added AIX root CA certs folders - enhance the TLS support in ``uri`` task on AIX
- Added ``module_utils.compat.typing`` to facilitate type-hinting on all supported Python versions.
- Ansible.Basic - small changes to allow use in PowerShell modules running on non-Windows platforms (https://github.com/ansible/ansible/pull/76924).
- AnsibleModule.run_command() now has a toggle to allow caller to decide to handle exceptions from executing the command itself
- Attach concat function to an environment class (https://github.com/ansible/ansible/pull/76282)
- Clarify in a comment that unrolling an iterator in ``Templar._finalize`` is actually necessary. Also switch to using the ``_unroll_iterator`` decorator directly to deduplicate code in ``Templar._finalize``. (https://github.com/ansible/ansible/pull/76436)
- Installation - modernize our python installation, to reduce dynamic code in setup.py, and migrate what is feasible to setup.cfg. This will enable shipping wheels in the future.
- PlayIterator - introduce public methods to access ``PlayIterator._host_states`` (https://github.com/ansible/ansible/pull/74416)
- PlayIterator - use enums for Iterating and Failed states (https://github.com/ansible/ansible/pull/74511)
- Reduce number of iterations through PlayIterator (https://github.com/ansible/ansible/pull/74175)
- Remove more Python 2.x compatibility code from controller (https://github.com/ansible/ansible/pull/77320).
- Start of moving away from using Six, Python 2 and 3 compatibility library (https://github.com/ansible/ansible/pull/75863)
- The collection loader now reports a Python warning if an attempt is made to install the Ansible collection loader a second time. Previously this condition was reported using an Ansible warning.
- ``ansible-galaxy collection [install|verify]`` - allow user-provided signature sources in addition to those from the Galaxy server. Each collection entry in a requirements file can specify a ``signatures`` key followed by a list of sources. Collection name(s) provided on the CLI can specify additional signature sources by using the ``--signatures`` CLI option. Signature sources should be URIs that can be opened with ``urllib.request.urlopen()``, such as "https://example.com/path/to/detached_signature.asc" or "file:///path/to/detached_signature.asc". The ``--keyring`` option must be specified if signature sources are provided.
- ``ansible-galaxy collection [install|verify]`` - use gpg to verify the authenticity of the signed ``MANIFEST.json`` with ASCII armored detached signatures provided by the Galaxy server. The keyring (which is not managed by ``ansible-galaxy``) must be provided with the ``--keyring`` option to use signature verification. If no ``--keyring`` is specified and the collection to ``install|verify`` has associated detached signatures on the Galaxy server, a warning is provided.
- ``ansible-galaxy collection install`` - Add a global configuration to modify the required number of signatures that must verify the authenticity of the collection. By default, the number of required successful signatures is 1. Set this option to ``all`` to require all signatures verify the collection. To ensure signature verification fails if there are no valid signatures, prepend the value with '+', such as ``+all`` or ``+1``.
- ``ansible-galaxy collection install`` - Add a global ignore list for gpg signature errors. This can be used to ignore certain signatures when the number of required successful signatures is all. When the required number of successful signatures is a positive integer, the only effect this has is to display fewer errors to the user on failure (success is determined by having the minimum number of successful signatures, in which case all errors are disregarded).
- ``ansible-galaxy collection install`` - Add a global toggle to turn off GPG signature verification.
- ``ansible-galaxy collection install`` - Store Galaxy server metadata alongside installed collections for provenance. Signatures obtained from the Galaxy server can be used for offline verification with ``ansible-galaxy collection verify --offline``.
- ansible-console - Provide a way to customize the stdout callback
- ansible-core modules - Remove unused Python shebangs from built-in modules.
- ansible-doc metadata dump - add option ``--no-fail-on-errors`` which allows to not fail the ansible-doc invocation when errors happen during docs parsing or processing. Instead they are reported in the JSON result in an ``error`` key for the affected plugins (https://github.com/ansible/ansible/pull/77035).
- ansible-galaxy - the option to skip certificate verification now also applies when cloning via SCM (git/hg) (https://github.com/ansible/ansible/issues/41077)
- ansible-test - Accept new-style Python modules without a shebang.
- ansible-test - Add ``--version`` support to show the ansible-core version.
- ansible-test - Add support for ``rhel/8.5`` remote instances.
- ansible-test - Add support for remote testing of FreeBSD 12.3.
- ansible-test - Add support for running container tests with ``podman remote`` (https://github.com/ansible/ansible/pull/75753)
- ansible-test - Added the ``fedora35`` test container.
- ansible-test - Change the maximum number of open files in a test container from the default to ``10240``.
- ansible-test - Declare public dependencies of ansible-core and use to limit unguarded imports in plugins.
- ansible-test - Importing ``distutils`` now results in an error.
- ansible-test - Installation of ``cryptography`` is no longer version constrained when ``openssl`` 1.1.0 or later is installed.
- ansible-test - Miscellaneous code cleanup and type hint fixes.
- ansible-test - PowerShell in the ``base`` and ``default`` containers has been upgraded to version 7.1.4.
- ansible-test - Remove RHEL 8.4 remote (``rhel/8.4``) support.
- ansible-test - Remove ``idna`` constraint.
- ansible-test - Remove obsolete ``MAXFD`` display.
- ansible-test - Remove obsolete constraints for Python 2.6.
- ansible-test - Remove support for FreeBSD 12.2 remote provisioning.
- ansible-test - Remove support for macOS 11.1 remote provisioning.
- ansible-test - Remove support for provisioning remote AIX instances.
- ansible-test - Remove the ``centos8`` test container since CentOS 8 will reach end-of-life soon.
- ansible-test - Remove the ``fedora33`` test container since Fedora 33 will reach end-of-life soon.
- ansible-test - Remove unused Python 2.x compatibility code.
- ansible-test - Removed support for Sherlock from the Azure provisioning plugin.
- ansible-test - Removed used ``MarkupSafe`` constraint for Python 3.5 and earlier.
- ansible-test - Requirements for the plugin import test are now frozen.
- ansible-test - Shellcheck in the ``base`` and ``default`` containers has been upgraded to version 0.7.0.
- ansible-test - Stop early with an error if the current working directory contains an invalid collection namespace or name.
- ansible-test - The ``--help`` option is now available when an unsupported cwd is in use.
- ansible-test - The ``--help`` output now shows the same instructions about cwd as would be shown in error messages if the cwd is unsupported.
- ansible-test - The ``pip`` and ``wheel`` packages are removed from all sanity test virtual environments after installation completes to reduce their size. Previously they were only removed from the environments used for the ``import`` sanity test.
- ansible-test - The explanation about cwd usage has been improved to explain more clearly what is required.
- ansible-test - The hash for all managed sanity test virtual environments has changed. Containers that include ``ansible-test sanity --prime-venvs`` will need to be rebuilt to continue using primed virtual environments.
- ansible-test - Update ``base`` container to version 2.1.0.
- ansible-test - Update ``base`` container to version 2.2.0.
- ansible-test - Update ``default`` containers to version 5.2.0.
- ansible-test - Update ``default`` containers to version 5.4.0.
- ansible-test - Update ``default`` containers to version 5.5.0.
- ansible-test - Update ``default`` containers to version 5.6.2.
- ansible-test - Update ``default`` containers to version 5.7.0.
- ansible-test - Update ``default`` containers to version 5.8.0.
- ansible-test - Update ``default`` containers to version 5.9.0.
- ansible-test - Update ``pip`` used to bootstrap remote FreeBSD instances from version 20.3.4 to 21.3.1.
- ansible-test - Update sanity test requirements.
- ansible-test - Update the NIOS test plugin container to version 1.4.0.
- ansible-test - Update the ``alpine`` container to version 3.3.0. This updates the base image from 3.14.2 to 3.15.0, which includes support for installing binary wheels using pip.
- ansible-test - Update the ``base`` and ``default`` containers from Python 3.10.0rc2 to 3.10.0.
- ansible-test - Update the ``base`` and ``default`` containers from a Ubuntu 18.04 to Ubuntu 20.04 base image.
- ansible-test - Update the ``default`` containers to version 5.1.0.
- ansible-test - Update the ``galaxy`` test plugin to get its container from a copy on quay.io.
- ansible-test - Update the ``openshift`` test plugin to get its container from a copy on quay.io.
- ansible-test - Use Python 3.10 as the default Python version for the ``base`` and ``default`` containers.
- ansible-test - add macOS 12.0 as a remote target (https://github.com/ansible/ansible/pull/76328)
- ansible-test - handle JSON decode error gracefully in podman environment.
- ansible-test pslint - Added the `AvoidLongLines <https://github.com/PowerShell/PSScriptAnalyzer/blob/master/docs/Rules/AvoidLongLines.md>`_ rule set to a length of 160.
- ansible-test pslint - Added the `PlaceCloseBrace <https://github.com/PowerShell/PSScriptAnalyzer/blob/master/docs/Rules/PlaceCloseBrace.md>`_ rule set to enforce close braces on a newline.
- ansible-test pslint - Added the `PlaceOpenBrace <https://github.com/PowerShell/PSScriptAnalyzer/blob/master/docs/Rules/PlaceOpenBrace.md>`_ rule set to enforce open braces on the same line and a subsequent newline.
- ansible-test pslint - Added the `UseConsistentIndentation <https://github.com/PowerShell/PSScriptAnalyzer/blob/master/docs/Rules/UseConsistentIndentation.md>`_ rule to enforce indentation is done with 4 spaces.
- ansible-test pslint - Added the `UseConsistentWhitespace <https://github.com/PowerShell/PSScriptAnalyzer/blob/master/docs/Rules/UseConsistentWhitespace.md>`_ rule to enforce whitespace consistency in PowerShell.
- ansible-test pslint - Updated ``PowerShellScriptAnalyzer`` to 1.20.0
- ansible-test sanity validate-modules - the validate-modules sanity test now also checks the documentation of documentable plugin types (https://github.com/ansible/ansible/pull/71734).
- ansible-test validate-modules sanity test - add more schema checks to improve quality of plugin documentation (https://github.com/ansible/ansible/pull/77268).
- ansible-test validate_modules - allow ``choices`` for return values (https://github.com/ansible/ansible/pull/76009).
- apt - Add support for using ">=" in package version number matching.
- apt - Adds APT option ``--allow-change-held-packages`` as module parameter ``allow_change_held_packages`` to allow APT up- or downgrading a package which is on APTs hold list (https://github.com/ansible/ansible/issues/65325)
- auto inventory plugin will now give plugin loading information on verbose output
- callbacks - Add result serialization format options to ``_dump_results`` allowing plugins such as the ``default`` callback to emit ``YAML`` serialized task results in addition to ``JSON``
- dnf - add more specific error message for GPG validation (https://github.com/ansible/ansible/issues/76192)
- env lookup, add default option
- facts - report prefix length for IPv4 addresses in Linux network facts.
- get_parsable_locale now logs result when in debug mode.
- git - display the destination directory path in error msg when local_mods detects local modifications conflict so that users see the exact location
- iptables - add the ``chain_management`` parameter that controls iptables chain creation and deletion
- jinja2_native - keep same behavior on Python 3.10.
- junit callback - Add support for replacing the directory portion of out-of-tree relative task paths with a placeholder.
- k8s - scenario guides for kubernetes migrated to ``kubernetes.core`` collection.
- module_utils.distro - Add missing ``typing`` import from original code.
- package_facts - add pkg_info support for OpenBSD and NetBSD (https://github.com/ansible/ansible/pull/76580)
- services_facts - Add support for openrc (https://github.com/ansible/ansible/pull/76373).
- setting DEFAULT_FACT_PATH is being deprecated in favor of the generic module_defaults keyword
- uri - Avoid reading the response body when not needed
- uri - Eliminate multiple requests to determine the final URL for file naming with ``dest``
- validate-modules - do some basic validation on the ``M(...)``, ``U(...)``, ``L(..., ...)`` and ``R(..., ...)`` documentation markups (https://github.com/ansible/ansible/pull/76262).
- vmware - migrated vmware scenario guides to `community.vmware` repo.
- yum, dnf - add sslverify option to temporarily disable certificate validation for a repository
Breaking Changes / Porting Guide
--------------------------------
- Module Python Dependency - Drop support for Python 2.6 in module execution.
- Templating - it is no longer allowed to perform arithmetic and concatenation operations outside of the jinja template (https://github.com/ansible/ansible/pull/75587)
- The ``finalize`` method is no longer exposed in the globals for use in templating.
Deprecated Features
-------------------
- ansible-core - Remove support for Python 2.6.
- ansible-test - Remove support for Python 2.6.
- ssh connection plugin option scp_if_ssh in favor of ssh_transfer_method.
Removed Features (previously deprecated)
----------------------------------------
- Remove deprecated ``Templar.set_available_variables()`` method (https://github.com/ansible/ansible/issues/75828)
- cli - remove deprecated ability to set verbosity before the sub-command (https://github.com/ansible/ansible/issues/75823)
- copy - remove deprecated ``thirsty`` alias (https://github.com/ansible/ansible/issues/75824)
- psrp - Removed fallback on ``put_file`` with older ``pypsrp`` versions. Users must have at least ``pypsrp>=0.4.0``.
- url_argument_spec - remove deprecated ``thirsty`` alias for ``get_url`` and ``uri`` modules (https://github.com/ansible/ansible/issues/75825, https://github.com/ansible/ansible/issues/75826)
Security Fixes
--------------
- Do not include params in exception when a call to ``set_options`` fails. Additionally, block the exception that is returned from being displayed to stdout. (CVE-2021-3620)
Bugfixes
--------
- Add a YAML representer for ``NativeJinjaText``
- Add a YAML representer for ``NativeJinjaUnsafeText``
- AnsiballZ - Ensure we use the full python package in the module cache filename to avoid a case where ``collections:`` is used to execute a module via short name, where the short name duplicates another module from ``ansible.builtin`` or another collection that was executed previously.
- Ansible.ModuleUtils.LinkUtil - Ignore the ``LIB`` environment variable when loading the ``LinkUtil`` code
- Ansible.ModuleUtils.SID - Use user principal name as is for lookup in the ``Convert-ToSID`` function - https://github.com/ansible/ansible/issues/77316
- Detect package manager for Amazon Linux 2022 (AL2022) as dnf
- Ensure the correct ``environment_class`` is set on ``AnsibleJ2Template``
- Fix ``AttributeError`` when providing password file via ``--connection-password-file`` (https://github.com/ansible/ansible/issues/76530)
- Fix ``end_play`` to end the current play only (https://github.com/ansible/ansible/issues/76672)
- Fix collection filter/test plugin redirects (https://github.com/ansible/ansible/issues/77192).
- Fix executing includes in the always section in the free strategy (https://github.com/ansible/ansible/issues/75642)
- Fix for when templating empty template file resulted in file with string 'None' (https://github.com/ansible/ansible/issues/76610)
- Fix help message for the 'ansible-galaxy collection verify' positional argument. The positional argument must be a collection name (https://github.com/ansible/ansible/issues/76087).
- Fix module logging issue when using custom module on WSL2 (https://github.com/ansible/ansible/issues/76320)
- Fix task debugger to work with ``run_once`` using ``linear`` strategy (https://github.com/ansible/ansible/issues/76049)
- Fix traceback when installing a collection from a git repository and git is not installed (https://github.com/ansible/ansible/issues/77479).
- Interpreter Discovery - Fallback to OS family if the distro is not found in ``INTERPRETER_PYTHON_DISTRO_MAP`` (https://github.com/ansible/ansible/issues/75560)
- Interpreter discovery - Add ``RHEL`` to ``OS_FAMILY_MAP`` for correct family fallback for interpreter discovery (https://github.com/ansible/ansible/issues/77368)
- Make include_role/include_tasks work with any_errors_fatal (https://github.com/ansible/ansible/issues/50897)
- Parser errors from within includes should not be rescueable (https://github.com/ansible/ansible/issues/73657)
- Prevent losing unsafe on results returned from lookups (https://github.com/ansible/ansible/issues/77535)
- Templating - Ensure we catch exceptions when getting ``.filters`` and ``.tests`` attributes on their respective plugins and properly error, instead of aborting which results in no filters being added to the jinja2 environment
- Trigger an undefined error when an undefined variable is detected within a dictionary and/or list (https://github.com/ansible/ansible/pull/75587)
- _run_loop - Add the task name to the warning (https://github.com/ansible/ansible/issues/76011)
- ``Templar.copy_with_new_env`` - set the ``finalize`` method of the new ``Templar`` object for the new environment (https://github.com/ansible/ansible/issues/76379)
- add_host/group_by: fix using changed_when in a loop (https://github.com/ansible/ansible/issues/71627)
- ansible - Exclude Python 2.6 from Python interpreter discovery.
- ansible-config avoid showing _terms and _input when --only-changed.
- ansible-doc - Fix ansible-doc -l ansible.builtin / ansible.legacy not returning anything
- ansible-doc - ignore plugin deprecation warnings (https://github.com/ansible/ansible/issues/75671)
- ansible-galaxy - Add galaxy_collection_skeleton/galaxy_collection_skeleton_ignore configuration options
- ansible-galaxy - Fix using the '--ignore-certs' option when there is no server-specific configuration for the Galaxy server.
- ansible-galaxy - installing/downloading collections with invalid versions in git repositories and directories now gives a formatted error message (https://github.com/ansible/ansible/issues/76425, https://github.com/ansible/ansible/issues/75404).
- ansible-galaxy - when installing a role properly raise an error when inaccessible path is specified multiple times in roles_path (e.g. via environment variable and command line option) (https://github.com/ansible/ansible/issues/76316)
- ansible-galaxy collection build - Ignore any existing ``MANIFEST.json`` and ``FILES.json`` in the root directory when building a collection.
- ansible-galaxy collection verify - display files/directories not included in the FILES.json as modified content.
- ansible-galaxy publish - Fix warning and error detection in import messages to properly display them in Ansible
- ansible-pull handle case where hostname and nodename are empty
- ansible-test - Add default entry for Windows remotes to be used with unknown versions.
- ansible-test - All virtual environments managed by ansible-test are marked as usable after being bootstrapped, to avoid errors caused by use of incomplete environments. Previously this was only done for sanity tests. Existing environments from previous versions of ansible-test will be recreated on demand due to lacking the new marker.
- ansible-test - Automatic target requirements installation is now based on the target environment instead of the controller environment.
- ansible-test - Correctly detect when running as the ``root`` user (UID 0) on the origin host. The result of the detection was incorrectly being inverted.
- ansible-test - Don't fail if network cannot be disconnected (https://github.com/ansible/ansible/pull/77472)
- ansible-test - Fix Python real prefix detection when running in a ``venv`` virtual environment.
- ansible-test - Fix ``windows-integration`` and ``network-integration`` when used with the ``--docker`` option and user-provided inventory.
- ansible-test - Fix installation and usage of ``pyyaml`` requirement for the ``import`` sanity test for collections.
- ansible-test - Fix path to inventory file for ``windows-integration`` and ``network-integration`` commands for collections.
- ansible-test - Fix plugin loading.
- ansible-test - Fix skipping of tests marked ``needs/python`` on the origin host.
- ansible-test - Fix skipping of tests marked ``needs/root`` on the origin host.
- ansible-test - Fix the ``import`` sanity test to work properly when Ansible's built-in vendoring support is in use.
- ansible-test - Fix the ``validate-modules`` sanity test to avoid double-loading the collection loader and possibly failing on import of the ``packaging`` module.
- ansible-test - Fix traceback in ``import`` sanity test on Python 2.7 when ``pip`` is not available.
- ansible-test - Fix traceback in the ``validate-modules`` sanity test when testing an Ansible module without any callables.
- ansible-test - Fix traceback when running from an install and delegating execution to a different Python interpreter.
- ansible-test - Fix traceback when using the ``--all`` option with PowerShell code coverage.
- ansible-test - Fix type hints.
- ansible-test - Import ``yaml.cyaml.CParser`` instead of ``_yaml.CParser`` in the ``yamllint`` sanity test.
- ansible-test - Limit ``paramiko`` installation to versions before 2.9.0. This is required to maintain support for systems which do not support RSA SHA-2 algorithms.
- ansible-test - Pylint Deprecated Plugin - Use correct message symbols when date or version is not a float or str (https://github.com/ansible/ansible/issues/77085)
- ansible-test - Relocate constants to eliminate symlink.
- ansible-test - Replace the directory portion of out-of-tree paths in JUnit files from integration tests with the ``out-of-tree:`` prefix.
- ansible-test - Sanity tests run with the ``--requirements` option for Python 2.x now install ``virtualenv`` when it is missing or too old. Previously it was only installed if missing. Version 16.7.12 is now installed instead of the latest version.
- ansible-test - Set the ``pytest`` option ``--rootdir`` instead of letting it be auto-detected.
- ansible-test - Show an error message instead of a traceback when running outside of a supported directory.
- ansible-test - Target integration test requirements are now correctly installed for target environments running on the controller.
- ansible-test - The ``import`` sanity test no longer reports errors about ``packaging`` being missing when testing collections.
- ansible-test - Update distribution test containers to version 3.1.0.
- ansible-test - Update help links to reference ``ansible-core`` instead of ``ansible``.
- ansible-test - Update unit tests to use the ``--forked`` option instead of the deprecated ``--boxed`` option.
- ansible-test - Use https://ci-files.testing.ansible.com/ for instance bootstrapping instead of an S3 endpoint.
- ansible-test - Use relative paths in JUnit files generated during integration test runs.
- ansible-test - Use the correct variable to reference the client's SSH key when generating inventory.
- ansible-test - Use the legacy collection loader for ``import`` sanity tests on target-only Python versions.
- ansible-test - Virtual environments managed by ansible-test now use consistent versions of ``pip``, ``setuptools`` and ``wheel``. This avoids issues with virtual environments containing outdated or dysfunctional versions of these tools. The initial bootstrapping of ``pip`` is done by ansible-test from an HTTPS endpoint instead of creating the virtual environment with it already present.
- ansible-test - fix a typo in validate-modules.
- ansible-test - fixed support container failures (eg http-test-container) under podman
- ansible-test compile sanity test - do not crash if a column could not be determined for an error (https://github.com/ansible/ansible/pull/77465).
- ansible-test pslint - Fix error when encountering validation results that are highly nested - https://github.com/ansible/ansible/issues/74151
- ansible-vault encrypt_string - fix ``--output`` option to correctly write encrypted string into given file (https://github.com/ansible/ansible/issues/75101)
- ansible.builtin.file modification_time supports check_mode
- ansible_facts.devices - Fix parsing of device serial number detected via sg_inq for rhel8 (https://github.com/ansible/ansible/issues/75420)
- apt - fails to deploy deb file to old debian systems using python-apt < 0.8.9 (https://github.com/ansible/ansible/issues/47277)
- arg_spec - Fix incorrect ``no_log`` warning when a parameter alias is used (https://github.com/ansible/ansible/pull/77576)
- async - Improve performance of sending async callback events by never sending the full task through the queue (https://github.com/ansible/ansible/issues/76729)
- catch the case that cowsay is broken which would lead to missing output
- cleaning facts will now only warn about the variable name and not post the content, which can be undesireable to disclose
- collection_loader - Implement 'find_spec' and 'exec_module' to override deprecated importlib methods 'find_module' and 'load_module' when applicable (https://github.com/ansible/ansible/issues/74660).
- correctly inherit vars from parent in block (https://github.com/ansible/ansible/issues/75286).
- default callback - Ensure we compare FQCN also in lockstep logic, to ensure using the FQCN of a strategy plugin triggers the correct behavior in the default callback plugin. (https://github.com/ansible/ansible/issues/76782)
- distribution - add EuroLinux to fact gathering (https://github.com/ansible/ansible/pull/76624).
- distribution - detect tencentos and gather correct facts on the distro.
- dnf - ensure releasever is passed into libdnf as string (https://github.com/ansible/ansible/issues/77010)
- extend timeout for ansible-galaxy when communicating with the galaxy server api, and apply it to all interactions with the api
- facts - add support for deepin distro information detection (https://github.com/ansible/ansible/issues/77286).
- first_found - fix to allow for spaces in file names (https://github.com/ansible/ansible/issues/77136)
- gather_facts - Fact gathering now continues even if it fails to read a file
- gather_facts action now handles the move of base connection plugin types into collections to add/prevent subset argument correctly
- gather_facts/setup will not fail anymore if capsh is present but not executable
- git module fix docs and proper use of ssh wrapper script and GIT_SSH_COMMAND depending on version.
- git module is more consistent and clearer about which ssh options are added to git calls.
- git module no longer uses wrapper script for ssh options.
- hacking - fix incorrect usage of deprecated fish-shell redirection operators that failed to honor ``--quiet`` flag when sourced (https://github.com/ansible/ansible/pull/77180).
- hostname - Do not require SystemdStrategy subclasses for every distro (https://github.com/ansible/ansible/issues/76792)
- hostname - Fix Debian strategy KeyError, use `SystemdStrategy` (https://github.com/ansible/ansible/issues/76124)
- hostname - Update the systemd strategy in the ``hostname`` module to not interfere with NetworkManager (https://github.com/ansible/ansible/issues/76958)
- hostname - add hostname support for openEuler distro (https://github.com/ansible/ansible/pull/76619).
- hostname - use ``file_get_content()`` to read the file containing the host name in the ``FileStrategy.get_permanent_hostname()`` method. This prevents a ``TypeError`` from being raised when the strategy is used (https://github.com/ansible/ansible/issues/77025).
- include_vars, properly initialize variable as there is corner case in which it can end up referenced and not defined
- inventory - parameterize ``disable_lookups`` in ``Constructable`` (https://github.com/ansible/ansible/issues/76769).
- inventory manager now respects --flush-cache
- junit callback - Fix traceback during automatic fact gathering when using relative paths.
- junit callback - Fix unicode error when handling non-ASCII task paths.
- module_utils.common.yaml - The ``SafeLoader``, ``SafeDumper`` and ``Parser`` classes now fallback to ``object`` when ``yaml`` is not available. This fixes tracebacks when inheriting from these classes without requiring a ``HAS_YAML`` guard around class definitions.
- parameters - handle blank values when argument is a list (https://github.com/ansible/ansible/issues/77108).
- play_context now compensates for when a conneciton sets the default to inventory_hostname but skips adding it to the vars.
- playbook/strategy have more informative 'attribute' based errors for playbook objects and handlers.
- python modules (new type) will now again prefer the specific python stated in the module's shebang instead of hardcoding to /usr/bin/python.
- replace - Always return ``rc`` to ensure return values are consistent - https://github.com/ansible/ansible/pull/71963
- script - skip in check mode if the plugin cannot determine if a change will occur (i.e. neither `creates` or `removes` are provided).
- service - Fixed handling of sleep arguments during service restarts on AIX. (https://github.com/ansible/ansible/issues/76877)
- service - Fixed service restarts with arguments on AIX. (https://github.com/ansible/ansible/issues/76840)
- service_facts module will now give more meaningful warnings when it fails to gather data.
- set_fact/include_vars correctly handle delegation assignments within loops
- setup - detect docker container with check for ./dockerenv or ./dockinit (https://github.com/ansible/ansible/pull/74349).
- shell/command - only return changed as True if the task has not been skipped.
- shell/command - only skip in check mode if the options `creates` and `removes` are both None.
- ssh connection - properly quote controlpersist path given by user to avoid issues with spaces and other characters
- ssh connection avoid parsing ssh cli debug lines as they can match expected output at high verbosities.
- ssh connection now uses more correct host source as play_context can ignore loop/delegation variations.
- sudo become plugin, fix handling of non interactive flags, previous substitution was too naive
- systemd - check if service is alias so it gets enabled (https://github.com/ansible/ansible/issues/75538).
- systemd - check if service is indirect so it gets enabled (https://github.com/ansible/ansible/issues/76453).
- task_executor reverts the change to push facts into delegated vars on loop finalization as result managing code already handles this and was duplicating effort to wrong result.
- template lookup - restore inadvertently deleted default for ``convert_data`` (https://github.com/ansible/ansible/issues/77004)
- to_json/to_nice_json filters defaults back to unvaulting/no unsafe packing.
- unarchive - Fix zip archive file listing that caused issues with content postprocessing (https://github.com/ansible/ansible/issues/76067).
- unarchive - Make extraction work when the LANGUAGE environment variable is set to a non-English locale.
- unarchive - apply ``owner`` and ``group`` permissions to top folder (https://github.com/ansible/ansible/issues/35426)
- unarchive - include the original error when a handler cannot manage the archive (https://github.com/ansible/ansible/issues/28977).
- unarchive - the ``io_buffer_size`` option added in 2.12 was not accepted by the module (https://github.com/ansible/ansible/pull/77271).
- urls - Allow ``ca_path`` to point to a bundle containing multiple PEM certs (https://github.com/ansible/ansible/issues/75015)
- urls/uri - Address case where ``HTTPError`` isn't fully initialized due to the error, and is missing certain methods and attributes (https://github.com/ansible/ansible/issues/76386)
- user - allow ``password_expiry_min`` and ``password_expiry_min`` to be set to ``0`` (https://github.com/ansible/ansible/issues/75017)
- user - allow password min and max to be set at the same time (https://github.com/ansible/ansible/issues/75017)
- user - update logic to check if user exists or not in MacOS.
- validate_argument_spec - Skip suboption validation if the top level option is an invalid type (https://github.com/ansible/ansible/issues/75612).
- variablemanager, more efficient read of vars files
- vault - Warn instead of fail for missing vault IDs if at least one valid vault secret is found.
- winrm - Ensure ``kinit`` is run with the same ``PATH`` env var as the Ansible process
- yum - prevent storing unnecessary cache data by running `yum makecache fast` (https://github.com/ansible/ansible/issues/76336)
Known Issues
------------
- get_url - document ``check_mode`` correctly with unreliable changed status (https://github.com/ansible/ansible/issues/65687).

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,22 +1,13 @@
---
title: ansible-core
release_tag_re: '(v(?:[\d.ab\-]|rc)+)'
pre_release_tag_re: '(?P<pre_release>(?:[ab]|rc)+\d*)$'
changes_file: changelog.yaml
changes_format: combined
keep_fragments: true
always_refresh: true
ignore_other_fragment_extensions: true
mention_ancestor: false
notesdir: fragments
prelude_section_name: release_summary
new_plugins_after_name: removed_features
sections:
- ['major_changes', 'Major Changes']
- ['minor_changes', 'Minor Changes']
- ['breaking_changes', 'Breaking Changes / Porting Guide']
- ['deprecated_features', 'Deprecated Features']
- ['removed_features', 'Removed Features (previously deprecated)']
- ['security_fixes', 'Security Fixes']
- ['bugfixes', 'Bugfixes']
- ['known_issues', 'Known Issues']

View File

@ -1,2 +0,0 @@
bugfixes:
- ansible_facts.devices - Fix parsing of device serial number detected via sg_inq for rhel8 (https://github.com/ansible/ansible/issues/75420)

View File

@ -0,0 +1,2 @@
bugfixes:
- Fixed role's hash_params behavior to not union (https://github.com/ansible/ansible/issues/20596).

View File

@ -0,0 +1,4 @@
bugfixes:
- TaskQueueManager - Ensure ``has_dead_workers`` can function, by using the
correct reference, and only allow an exit code of 0.
(https://github.com/ansible/ansible/issues/29124)

View File

@ -0,0 +1,2 @@
bugfixes:
- rabbitmq_policy - Add full check for rabbit policy changes (https://github.com/ansible/ansible/issues/29264)

View File

@ -0,0 +1,2 @@
minor_changes:
- add purge_tags parameter to s3_bucket to allow preservation of existing tags when updating tags.

View File

@ -0,0 +1,3 @@
bugfixes:
- uri - Handle multiple Content-Type headers correctly
(https://github.com/ansible/ansible/pull/31238)

View File

@ -0,0 +1,2 @@
minor_changes:
- getent - add service parameter to getent to lookup specified service

View File

@ -0,0 +1,3 @@
---
bugfixes:
- "os_quota - fix failure to set compute or network quota when volume service is not available"

View File

@ -0,0 +1,2 @@
bugfixes:
- dnsmadeeasy - force the date to be rendered with C (POSIX system default) locale as English short date names are required by API

View File

@ -0,0 +1,2 @@
minor_changes:
- xml - Introduce ``insertbefore`` and ``insertafter`` to specify the position (https://github.com/ansible/ansible/pull/44811)

View File

@ -0,0 +1,2 @@
bugfixes:
- cowsay - Fix issue with an empty cow_whitelist (https://github.com/ansible/ansible/issues/45631)

View File

@ -0,0 +1,2 @@
minor_changes:
- vmware_cluster_facts now supports tag facts (https://github.com/ansible/ansible/issues/46458).

View File

@ -0,0 +1,2 @@
minor_changes:
- vmware_host_facts now supports tag facts (https://github.com/ansible/ansible/issues/46461).

View File

@ -1,2 +0,0 @@
bugfixes:
- apt - fails to deploy deb file to old debian systems using python-apt < 0.8.9 (https://github.com/ansible/ansible/issues/47277)

View File

@ -0,0 +1,2 @@
minor_changes:
- Add folder option in vmware_datastore_cluster to place datastore cluster in specific folder (https://github.com/ansible/ansible/issues/48010).

View File

@ -0,0 +1,2 @@
minor_changes:
- "meraki_* - Idempotency check has been rewritten. The new version is more thorough."

View File

@ -0,0 +1,2 @@
minor_changes:
- "meraki_network - Add support for enabling or disabling VLANs on a network."

View File

@ -0,0 +1,2 @@
minor_changes:
- meraki_network - Add support for disabling remote status page on a network.

View File

@ -0,0 +1,2 @@
minor_changes:
- meraki_ssid - Add examples to documentation.

View File

@ -0,0 +1,3 @@
---
bugfixes:
- "nagios - Removed redundant type check which caused crashes. Guardrails added elsewhere in earlier change."

View File

@ -0,0 +1,2 @@
minor_changes:
- "docker_container - add ``mounts`` option."

View File

@ -0,0 +1,2 @@
minor_changes:
- Restrict vcenter_folder to vCenter only, since folder creation api is not supported on ESXi hostsystem (https://github.com/ansible/ansible/issues/49938).

View File

@ -0,0 +1,2 @@
minor_changes:
- vApp setting can be set while VM creation in vmware_guest (https://github.com/ansible/ansible/issues/50617).

View File

@ -1,3 +0,0 @@
minor_changes:
- uri - Eliminate multiple requests to determine the final URL for file naming with ``dest``
- uri - Avoid reading the response body when not needed

View File

@ -1,2 +0,0 @@
bugfixes:
- Make include_role/include_tasks work with any_errors_fatal (https://github.com/ansible/ansible/issues/50897)

View File

@ -0,0 +1,4 @@
---
bugfixes:
- apt - Fixed the issue the cache being updated while auto-installing its
dependencies even when ``update_cache`` is set to false.

View File

@ -0,0 +1,2 @@
bugfixes:
- aws_ses_identity module works when region is provided using config or environment variables rather than the region parameter (https://github.com/ansible/ansible/issues/51531)

View File

@ -0,0 +1,3 @@
bugfixes:
- "meraki_ssid - Provides more accurate change results for some operations."
- "meraki_ssid - Improved documentation about parameter dependencies."

View File

@ -0,0 +1,2 @@
bugfixes:
- apt_repository - Fix crash caused by ``cache.update()`` raising an ``IOError`` due to a timeout in ``apt update`` (https://github.com/ansible/ansible/issues/51995)

View File

@ -0,0 +1,2 @@
minor_changes:
- vmware - The VMware modules can now access a server behind a HTTP proxy (https://github.com/ansible/ansible/pull/52936)

View File

@ -0,0 +1,2 @@
minor_changes:
- Implement config options for ``display_ok_hosts`` and ``display_skipped_hosts`` in unixy callback plugin

View File

@ -0,0 +1,2 @@
minor_changes:
- Add managed object identifier (moId) and vim reference (vimref) of virtual machine in guest facts (https://github.com/ansible/ansible/issues/53372).

View File

@ -0,0 +1,4 @@
---
bugfixes:
- Fix privilege escalation support for the docker connection plugin when
credentials need to be supplied (e.g. sudo with password).

View File

@ -0,0 +1,2 @@
bugfixes:
- ec2_launch_template - Only 'volume' and 'instance' are valid resource types for tag specifications.

View File

@ -0,0 +1,3 @@
bugfixes:
- rds_instance - Don't hardcode the license models because there are accepted values undocumented by AWS.
Rely on the exception handling instead to provide a helpful error for invalid license models.

View File

@ -0,0 +1,2 @@
minor_changes:
- "meraki_* - Meraki modules now return data when no changes are made."

View File

@ -0,0 +1,2 @@
minor_changes:
- Allow debugger to take a templated value (https://github.com/ansible/ansible/pull/53587)

View File

@ -0,0 +1,3 @@
---
minor_changes:
- "meraki_admin - Add support for check mode."

View File

@ -0,0 +1,3 @@
---
minor_changes:
- "meraki_config_template - Enable check mode."

View File

@ -0,0 +1,2 @@
minor_changes:
- "meraki_content_filtering - Add support for check mode."

View File

@ -0,0 +1,2 @@
minor_changes:
- meraki_snmp - Add support for check mode.

View File

@ -0,0 +1,3 @@
---
minor_changes:
- "meraki_vlan - Add support for check mode."

View File

@ -0,0 +1,2 @@
minor_changes:
- meraki_mr_l3_firewall - Integration test now uses net_id in some tests for improved code coverage.

View File

@ -0,0 +1,2 @@
bugfixes:
- "meraki_switchport - improve reliability with native VLAN functionality."

View File

@ -0,0 +1,2 @@
minor_changes:
- Ansible will now warn if two aliases of the same option are used for Python modules.

View File

@ -0,0 +1,2 @@
minor_changes:
- Meraki modules now return data in snake_case instead of camelCase. The ANSIBLE_MERAKI_FORMAT environment variable can be set to camelcase to revert back to camelcase until deprecation in Ansible 2.13.

View File

@ -0,0 +1,2 @@
minor_changes:
- Remove duplicate implementation of memory reservation parameter in vmware_guest (https://github.com/ansible/ansible/issues/54335).

View File

@ -0,0 +1,2 @@
bugfixes:
- "setup.ps1 - Support non NETBIOS compliant hostnames (https://github.com/ansible/ansible/issues/54550)"

View File

@ -0,0 +1,2 @@
minor_changes:
- Check return value of FindByInventoryPath API used for finding folder value (https://github.com/ansible/ansible/issues/54823).

View File

@ -0,0 +1,2 @@
bugfixes:
- "docker_container - fix idempotency of ``log_options`` when non-string values are used. Also warn user that this is the case."

View File

@ -0,0 +1,2 @@
bugfixes:
- "jenkins_job module: xml config encoding bugfix on python3"

View File

@ -0,0 +1,2 @@
minor_changes:
- pluribus networks modules to handle empty output string.

View File

@ -0,0 +1,2 @@
minor_changes:
- Add folder option in vmware_dvswitch to place distributed switch in a network specific folder (https://github.com/ansible/ansible/issues/54986).

View File

@ -0,0 +1,2 @@
bugfixes:
- template lookup - restore variables between calls (https://github.com/ansible/ansible/issues/55113)

View File

@ -0,0 +1,3 @@
bugfixes:
- "openssl_csr - the cryptography backend's idempotency checking for basic constraints was broken."
- "openssl_csr - SAN normalization for IP addresses for the pyOpenSSL backend was broken."

View File

@ -0,0 +1,2 @@
bugfixes:
- "Working implementation for editing Cisco IOS macros(https://github.com/ansible/ansible/pull/55220)"

Some files were not shown because too many files have changed in this diff Show More