Compare commits

...

183 Commits

Author SHA1 Message Date
5394eae49a New release v2.11.6 (#75999) 2021-10-11 10:40:27 -04:00
651e69064d ansible-test pslint - fix warning with nested objects (#75792)
* ansible-test pslint - fix warning with nested objects

(cherry picked from commit 7e19957afa)
2021-10-07 14:19:33 -07:00
7fa59ed674 Update Ansible release version to v2.11.6rc1.post0. 2021-10-04 15:05:18 -04:00
d4e1017614 New release v2.11.6rc1 2021-10-04 12:19:02 -04:00
a20323da3b config: small typo fix (#74845) (#75864)
(cherry picked from commit 99a983c92c)

Co-authored-by: Boris Korzun <drtr0jan@yandex.ru>
2021-10-02 09:52:08 -05:00
a22fb928a5 netconf - handle import error when running in FIPS mode (#73992) (#75706)
* Handle netconf plugin ncclient import error when running in FIPS mode

*  While running in FIPS mode importing ncclient result in
   InternalError raised by cryptography
*  Refer https://github.com/ansible/ansible/pull/65477

(cherry picked from commit d8bf4206e4)

Co-authored-by: Ganesh Nalawade <ganesh634@gmail.com>
2021-09-29 15:20:10 -05:00
4967b8650c Fix unexpected exception when a role has an empty argument_specs.yml (#75604) (#75684)
* Fix role with empty argument_specs.yml

* Use try/except and add changelog fragment

* Always return a dict

* Add test for empty argument_specs key

(cherry picked from commit 3e7a622204)

Co-authored-by: devon-mar <devon-mar@users.noreply.github.com>
2021-09-29 15:19:52 -05:00
15f5886479 PowerShell - Ignore LIB env var when building C# code (#75698) (#75725)
* PowerShell - Ignore environment variables when building C# code

* Just unset LIB for now

* Fix sanity issue

(cherry picked from commit 097bc07b66)
2021-09-29 14:22:11 -05:00
d9d5d2d93e Try all galaxy servers when locating available versions for a collection (#75468) (#75750)
* If an exception occurs when getting a collection's metadata, continue to the next in the server list.

* Warn for unknown exceptions when finding versions of a collection

* Test that an invalid server is no longer fatal if a subsequent server has the collection

* Fix server for verify tests - compare checksums against the server from which it was installed

* Add tests for verify and fix that code path to mirror install/download behavior for server errors

Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
(cherry picked from commit 469b559ebe)
2021-09-29 11:54:46 -05:00
afbddce345 [bp-2.11] Update examples/scripts/uptime.py (#75796)
Fixes missing parameter 'verbosity'

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 39a49963b5)
2021-09-29 11:53:58 -05:00
f2b14b9aa3 [stable-2.11] Don't show params when there is an issue with set_option(s) (#75805) (#75808)
(cherry picked from commit 79e9dae)

Co-authored-by: Matt Martz <matt@sivel.net>
2021-09-29 11:53:47 -05:00
4737c01acb Update Ansible release version to v2.11.5.post0. 2021-09-13 14:50:08 -04:00
2fdb9767e9 New release v2.11.5 2021-09-13 10:43:17 -04:00
640063c02d Update Ansible release version to v2.11.5rc1.post0. 2021-09-08 13:04:49 -04:00
766fcdb493 New release v2.11.5rc1 2021-09-08 10:00:52 -04:00
6e011d0809 various fixes to command (#74212) (#74257)
* various fixes to command

  - Updated splitter to allow for all expected args in ad-hoc
  - Ensure we always return the returns we promissed to always return (i.e stderr/stdout)
  - Updated docs to clarify creates/removes precdence in checking
  - Removed abspath from chdir to allow reporting to handle symlinks correctly
  - Corrected tests to new output messages

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit b3b1dde648)
2021-09-03 15:53:55 -07:00
7425bf093d setup module, dont truncate hpux interfaces (#75423) (#75490)
* setup module, dont truncate hpux interfaces

  fixes #70533

 no hpux to test so relying on man page and users that reported successful testing

(cherry picked from commit 03083c3139)
2021-09-02 14:01:13 -07:00
9437c6f465 Avoid accessing delegated vars when you dont have a host (#75524) (#75534)
* avoid getting delegated vars w/o inventory host

 fixes #75512

 In the case of imports, we don't have a host, so getting host vars for
 the delegated host makes no sense and should be avoided.

* also avoid error on vars_files with per host vars

* test

* testing given case

* oops

(cherry picked from commit 91319c5cfc)
2021-09-02 13:59:47 -07:00
49f0d06bd9 adjusted link to the proper branch (#75629) 2021-09-02 13:54:50 -07:00
01f024df79 Fix build_ignore when installing a collection from source (#75547) (#75623)
* Make individual dirs that should exist instead of using shutil.copytree

* Test build_ignore when installing collections in git repos

* changelog

* Fix assertion
Fix git directory

* Fix nested content while building the collection dir

Test installing a collection from a git repo and artifact have the same result

Refactor to use variables

(cherry picked from commit f38a97cece)
2021-09-01 14:51:23 -05:00
e4fb928b5f [2.11] Improve ansible-galaxy error for InconsistentCandidate exception (#75462)
* Improve ansible-galaxy error for InconsistentCandidate exception (#75235)

* Improve error for InconsistentCandidate exceptions

* Add test case for installing a collection with an inconsistent version

* Add test case for installing a collection that has a dependency with an inconsistent version

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Sviatoslav Sydorenko <webknjaz@redhat.com>
(cherry picked from commit e24eb59de5)

* Handle extra stderr for Python 2.7
2021-09-01 14:50:47 -05:00
d8c40ae504 fix option name for parsed (#75229) (#75596)
(cherry picked from commit 9af0d91676)
2021-09-01 11:39:23 -05:00
ad4d00e1db Clarify get_bin_path error message (#75544) (#75564)
(cherry picked from commit 3ca50a2200)
2021-09-01 11:38:57 -05:00
463cf9fe24 Attributes compat (#75563)
* ignore attributes in output

* ignore 'attributes' for json dump

* actually add file

* clog

* sometimtes its not a dict

* always ignore

* also allow validation to work on newer modules

* remove attributes doc

  let existing overrides display, wont be full info but still pertinent info
  though user will have to check newer versions
2021-09-01 11:38:19 -05:00
8c105c0f61 validate_args_spec, use combine vars and in precedence (#75471) (#75602)
* combine vars and in correct precedence
* add examples

(cherry picked from commit 2462ec74a0)
2021-09-01 11:36:25 -05:00
8b34aab732 Fix --list-hosts when undefined var is used (#75533) (#75551)
fixes #75354

(cherry picked from commit ff72908b4d)
2021-09-01 11:32:39 -05:00
d6da3b8c85 Return correct url for relative paths in messages (#75562) 2021-09-01 11:32:00 -05:00
bb6355c453 backport of #75567 (#75571)
updated 'Installing Ansible on Debian' details (#75567)
2021-09-01 11:30:52 -05:00
a6f24c407c Fix templating task action with host-specific vars (#75600) (#75613)
Fixes #75568

(cherry picked from commit 9c2f44b884)
2021-09-01 11:29:50 -05:00
999c2e603d paramiko_ssh - mark connection as connected when successful (#74459) (#75614)
* Remove unused import from test

(cherry picked from commit 74b2add460)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-09-01 11:26:47 -05:00
2af206399d makes Fest link from docs trackable (#75594) (#75595)
Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
(cherry picked from commit e35e8ed2ec)
2021-08-27 13:57:37 -07:00
9691eb5f20 Also allow .yml. (#75439) (#75460)
(cherry picked from commit 0055a328b3)
2021-08-23 12:25:45 -07:00
5a35a95ceb new antsibull supports breadcrumbs toggle (#75424) (#75425)
* new antsibull supports breadcrumbs toggle

* let antsibull versoin float free

Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
(cherry picked from commit d9d98740f2)
2021-08-23 12:24:40 -07:00
9e022484b7 Docsite: improve reporting_bugs_and_features.rst (#75234) (#75450)
* Docsite: improve reporting_bugs_and_features.rst

* Add clarification

(cherry picked from commit 61b81bcd10)
2021-08-23 12:24:22 -07:00
362e6c5cc4 Add AnsibleFest banner (#75476) (#75493)
* add AnsibleFest banner

* fix nit

(cherry picked from commit dc6878007b)
2021-08-23 12:23:58 -07:00
9dba4dbf82 [hacking] finally update announce script for core (#75523)
Change:
- s/base/core/ in announcement script for releases

Test Plan:
- Have been using it locally every time

Signed-off-by: Rick Elrod <rick@elrod.me>
2021-08-18 13:01:43 -05:00
96d2f79e4c Update Ansible release version to v2.11.4.post0. 2021-08-16 15:01:52 -04:00
2344b18382 New release v2.11.4 2021-08-16 13:25:51 -04:00
f22eab3dfe fixes typo in changelog entry (#75461)
Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
2021-08-11 09:06:01 -05:00
1330747880 Update Ansible release version to v2.11.4rc1.post0. 2021-08-10 11:43:45 -05:00
08db988f7b New release v2.11.4rc1 2021-08-10 09:42:59 -05:00
f4c8e93024 Update Japanese translation for stable-2.11 (#75429) 2021-08-09 16:47:41 -05:00
e1f406699b Fix dnf test assertion (#75426) (#75427)
(cherry picked from commit e23fdee45e)
2021-08-06 16:34:47 -07:00
f0b227009c Fix dnf package matching (#75411) (#75418)
* Fix a bug with the dnf module not using all components of a package name when filtering to determine if it's installed

* changelog

* Simplify splitting on the last '.'

* Update lib/ansible/modules/dnf.py

(cherry picked from commit b541a148d5)
2021-08-06 13:01:55 -07:00
de1129c8e5 Skip python interpreter discovery for 'forced local' module execution (#74824) (#75402)
mostly for use with network_os
  use 'remote is local' property as indicator
  ensure task_vars are as expected in test

(cherry picked from commit 8d41b97329)
2021-08-06 12:59:59 -07:00
bb993dc877 ensure we convert path in warning or py2.6 breaks (#75413) (#75414)
(cherry picked from commit 75e6bdb579)
2021-08-05 16:08:17 -05:00
2023363b39 incorporate minimalism feedback on distributing collections page (#75266) (#75302)
(cherry picked from commit 0e9d1ab1cc)

Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
2021-08-05 09:57:11 -07:00
ab05ac25d2 Issue 73792: Removed mentions of R() and M() (#74708) (#75300)
* 73792: Removed mentions of R and M

(cherry picked from commit bf9944266c)

Co-authored-by: Lydie <44351234+lmalivert@users.noreply.github.com>
2021-08-05 09:55:22 -07:00
0413498234 Docs: talk about AWX or the Platform, not Tower (#74952) (#75298)
* updates Tower page to talk about RHAAP

* updates scenario guide Tower references

* updates Tower references to use AWX and/or RHAAP

* more scenario guides fixes

* fix CI failures

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

* removes tower link

* for 2.8, still mention Tower along with AWX and RHAAP

* aws guides should be updated in the collection, where they now exist

Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
(cherry picked from commit 13c28664ae)

Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
2021-08-05 09:54:36 -07:00
7f6415ee14 [bp-2.11] unarchive - do not fail in init when trying to find required binary (#75363)
Test for the required binaries in the can_handle_archive() method and fail there. This
prevents failures for missing binaries unrelated to the archive type.

* Update missing zip binary message to match tar message
* Update unit tests
* Add integration tests
* Define packages based on the system rather than ignoring failures

(cherry picked from commit 004c33d9c5)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-08-05 09:43:12 -05:00
71a6954b51 Globals should be accessible when importing a template without the context (#75384) (#75409)
Fixes #75371

(cherry picked from commit 5a38076568)
2021-08-05 09:10:14 -05:00
e2f14d94b8 [2.11] Improve handling of AnsibleModule arguments in validate-modules (#75360)
* Improve handling of AnsibleModule arguments in validate-modules (#75332)

* Make sure AnsibleModule positional arguments are validated.

* Extract ANSIBLE_MODULE_CONSTURCTOR_ARGS with inspection.

* Remove no longer necessary return value.

* Fix PR #.

* argument_spec might not have been specified, as in community.general.xenserver_facts.

* Fix typo.

(cherry picked from commit 7726b70d9a)

* Make sure self doesn't end up in fake.args (#75403)

(cherry picked from commit 2455d82c14)

Co-authored-by: Matt Martz <matt@sivel.net>
2021-08-04 15:36:23 -05:00
54119d71f8 Move Docker scenario guide to community.docker. (#74736) (#75294)
The scenario guide has already been added to community.docker in
ansible-collections/community.docker#140

(cherry picked from commit 7f6edd78f9)
2021-08-04 15:27:50 -05:00
b9a5208e38 developing_collections_testing: Fix formatting (#75233) (#75239)
(cherry picked from commit f8bb182589)
2021-08-04 15:27:32 -05:00
d18ac7bdc0 fix ssh cli defaults (#75245) (#75314)
* fix ssh cli defaults (#75245)

* fix ssh cli defaults

  fixes #75221

(cherry picked from commit e5a2fe4c41)

* github conflict?

* removed retries backrpot

  also removed tests since they rely on features that don't exist in this version
2021-08-04 14:54:55 -05:00
b866d6f708 fix: action _fixup_perms2 macos +a remote_paths in list() as it can be a tuple (#74613) (#75336)
* fix: action _fixup_perms2 macos +a remote_paths in list() as it can be tuple

in `lib/ansible/plugin/action/__init__.py`'s `_fixup_perms2`,
`remote_paths` can be a list or tuple. however, the macos
specific attempt to use chmod +a attempts to concatenate
`remote_paths` with a list, which will fail if it is a tuple.
wrapping `remote_paths` in `list()` fixes this error.

* Update changelogs/fragments/74613-actionfixup_perms2_macos_remote_paths_ensure_list.yml

Co-authored-by: Rick Elrod <rick@elrod.me>
(cherry picked from commit df6554c4ec)

Co-authored-by: Shane St Savage <shane@axiomdatascience.com>
2021-08-03 15:08:52 -05:00
66ca0abaf4 Ensure Jinja2 template header overrides are used (#75306) (#75342)
Fixes #75275

(cherry picked from commit 767b2f07b0)
2021-08-03 15:03:23 -05:00
4078765379 Fix when evaluation on Native Jinja and Python 3.10 (#75202) (#75380)
* Fix when evaluation on Native Jinja and Python 3.10

* Add unit test

* Add explaining comment

* Enable jinja2_native before tests

Co-Authored-By: Matt Martz <matt@sivel.net>

* Sanity

* Return native template module instead of modifying globals

Co-authored-by: Matt Martz <matt@sivel.net>
(cherry picked from commit 58e38044fe)
2021-08-03 15:02:42 -05:00
da1baaf485 [stable-2.11] Add packaging to requirement of ansible-test (#75356)
* Add packaging to requirement of ansible-test

Fix #75353

After requires_ansible field was added as mandatory to runtime.yml
file, ansible-test fails to check this field if it doesn't have
packaging module.

[1] https://github.com/ansible/galaxy-importer/pull/124
(cherry picked from commit 40ca87a963)

Co-authored-by: Sergey <sshnaidm@users.noreply.github.com>
2021-07-30 08:41:26 -07:00
647c1db762 Update Ansible release version to v2.11.3.post0. 2021-07-19 20:37:20 -05:00
4cafc937f0 New release v2.11.3 2021-07-19 16:40:41 -05:00
b5c9c7d0ea Update Japanese translation for stable-2.11 (#75246) 2021-07-14 09:35:07 -05:00
4d2cdf2ed5 Update Ansible release version to v2.11.3rc1.post0. 2021-07-13 03:08:16 -05:00
90c8ab0c8c New release v2.11.3rc1 2021-07-13 00:19:09 -05:00
78c7721052 [stable-2.11] slurp - improve error code and test coverage (#75038) (#75045)
* Improve the error handling code

Rather than multiple return paths, have a single return and set the message based
on the type of failure.

* Add another test for non-specific failures

* Reorganize tests so failure tests are in one tasks file

* Remove os.stat() call and add changelog.
(cherry picked from commit afe6eb574e)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-07-12 10:34:03 -05:00
420527bebf [stable-2.11] module_common - handle cache directory creation collision (#75106) (#75132)
* module_common - handle cache directory creation collision

Occasionally multiple workers can try to create the cache directory if it exists. Catch the exception
and handle it.

* Just re-raise if it doesn't exist rather than trying again

* Use exists_ok rather than handling an exception

* Remove unused import and unused variable

* Go back to try/except but with OSError

Since we do not have split controller remote, this needs to be able to run in Python 2 in order
to be merged currently.
(cherry picked from commit 16a74b798c)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-07-12 10:33:08 -05:00
1f4d1dfa0b [stable-2.11] command - remove unreachable code and achieve full test coverage (#75036) (#75044)
(cherry picked from commit 4ab791d501)
2021-07-12 00:50:15 -05:00
6d2e8f7729 [stable-2.11] file integration test - cleanup testing users and group (#75037)
(cherry picked from commit 0467b1d477)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-07-12 00:44:52 -05:00
b3115e3c16 2.11: Add support for unicode in ansible-inventory CLI (#74912) (#75008)
(cherry picked from commit 5ac1b04929)
2021-07-12 00:44:21 -05:00
36eef4b9f8 Do not show empty version_added_collection values in ansible-doc text output. (#74999) (#75003)
(cherry picked from commit 58450f041a)
2021-07-12 00:41:04 -05:00
35383360d2 Template suboptions in a role's arg spec (#75073) (#75094)
(cherry picked from commit ca6123e0ee)
2021-07-12 00:34:47 -05:00
1b6698aba8 ansible-test: exposes tiny_prefix variable (#75128)
ansible-test aws provider now creates and exposes a new tiny_prefix
variable to provide a shorter prefix for the AWS tests.

(cherry picked from commit 5b8fb4dcd3)
2021-07-12 00:33:48 -05:00
3b5bc9b3fa Unfrack extra vars (#75127) (#75148)
* Ensure we keep the original path as per cli

  fixes #75126

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 60c9f045cc)
2021-07-11 22:50:13 -05:00
a2239d8819 [stable-2.11] task_executor - use correct value for ssh connection retries (#75155) (#75191)
Since the task and connection both have the same 'retries' keyword, the task default
would override the connection value.

Do not pass 'retries' from the task to the connection options.

* Set ssh_connection retries default value back to 0
  It was 0 before the move to config and was changed to 3 by accident.
(cherry picked from commit a8de35e131)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-07-11 22:40:16 -05:00
40ecd27211 Removed Galaxy banner (#75163) (#75217)
(cherry picked from commit 1e00099753)
2021-07-08 14:12:51 -05:00
b1e9da9d75 Bump sphinx_ansible_theme to v0.7.0+ (#75059) (#75174)
This version relies on an external lib implementing lexers and styles.
That lib pulls in proper Pygments version so this patch also drops it
from direct requirements.

(cherry picked from commit d75d9443fc)

Co-authored-by: Sviatoslav Sydorenko <webknjaz@redhat.com>
2021-07-08 14:12:33 -05:00
ca1da07dda [stable-2.11] Restrict packaging to < 21.0 for Python < 3.6. (#75186)
(cherry picked from commit 67bc49e001)

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-07-07 11:34:53 -07:00
1ed901f7ef Update Japanese translation for stable-2.11 (#75180) 2021-07-06 11:50:58 -05:00
49950fa875 Use antsibull sphinx extension (#73170) (#75100)
* Use antsibull sphinx extension.

* Require antsibull 0.34.0.

(cherry picked from commit 2c0f050b4f)
2021-06-29 10:23:50 -05:00
e137398a84 collections_using.rst: add note that manual upgrade is required when installing collections from Galaxy (#75024) (#75025)
(cherry picked from commit 5df82415b5)
2021-06-24 13:33:18 -05:00
348eee92bf [bp-2.11] Clarify Vault password client naming requirements (#75083)
(cherry picked from commit aedc82da98)

Co-authored-by: Andreas Olsson <andreas@arrakis.se>
2021-06-24 13:31:49 -05:00
ff7bbe3f0a [bp-2.11] Syntax fixes for docs (#75088)
(cherry picked from commit 3a8fc2d2be)

Co-authored-by: Chandler Swift <chandler@chandlerswift.com>
2021-06-23 16:09:04 -05:00
f72720c7f8 remove reference to container ML (#75014) (#75028)
(cherry picked from commit 2387ce311f)
2021-06-23 16:06:21 -05:00
37b3593720 [2.11] Use sphinx_ansible_theme Sphinx theme in docs (#75058)
* Use `sphinx_ansible_theme` Sphinx theme in docs (#74318)

(cherry picked from commit 346c7a765d)

* 🔥 Drop unused `core.css` file

This is a forgotten leftover from #74318 that should've been removed
earlier.

(cherry picked from commit ec408a69f1)

* Update docs requirements list (#74956)

* removes upper bound on sphinx version
* updates versions of docs build dependencies, adds known good requirements file
* adds instructions for using known_good_reqs file

(cherry picked from commit 58f26388be)

Co-authored-by: Sviatoslav Sydorenko <webknjaz@redhat.com>
Co-authored-by: Sviatoslav Sydorenko <wk@sydorenko.org.ua>
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
2021-06-23 15:57:53 -05:00
a5d1238f42 Update Ansible release version to v2.11.2.post0. 2021-06-22 02:52:05 -05:00
ae9001ee18 New release v2.11.2 2021-06-22 00:04:37 -05:00
7316e1b54a Update Ansible release version to v2.11.2rc1.post0. 2021-06-14 22:22:45 -05:00
c207402507 New release v2.11.2rc1 2021-06-14 17:38:00 -05:00
392e93135d psrp - cleanup command (#74985) (#75001)
(cherry picked from commit 58d8397771)
2021-06-14 17:12:23 -05:00
e009cd9733 delegation fix (#74685) (#74811)
(cherry picked from commit b518aabf81)
2021-06-14 14:58:02 -05:00
f752c7f179 role argspec - tag role argspec validation task with 'always' (#74994) (#74996)
* update tag docs

(cherry picked from commit 97acb0f470)
2021-06-14 14:44:24 -05:00
dce10b89ad Ssh opts fix (#74972)
(cherry picked from commit 675df166c2)
2021-06-14 14:18:48 -05:00
7448c2fa62 [2.11] Fix using module-specific module_defaults in action plugins (#74849)
* Use the module redirect_list when getting defaults for action plugins (#73864)

* Fix module-specific defaults in the gather_facts, package, and service action plugins.

* Handle ansible.legacy actions better in get_action_args_with_defaults

* Add tests for each action plugin

* Changelog

Fixes #72918

(cherry picked from commit 5640093f1c)

* Fix tests for < 3.8
2021-06-14 14:17:44 -05:00
bf6f277edd [stable-2.11] slurp - handle error when path is a directory (#74930). (#74964)
(cherry picked from commit 0a5cc80ce2)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-06-14 13:53:36 -05:00
fad56bd4e6 [stable-2.11] subversion - fix stack trace when getting repository information (#74405) (#74977)
* subversion - set LC_ALL for accurate command output parsing

When LC_ALL is not set, the output language of commands will differ based on locale. There
is a lot of history of trying to fix this. See the following pull requests:

https://github.com/ansible/ansible-modules-core/pull/4358
https://github.com/ansible/ansible-modules-core/pull/4358

This patch attempts to fix this my setting LC_ALL to a UTF-8 locale. Setting LC_ALL to C reintroduces this bug https://github.com/ansible/ansible-modules-core/issues/4178.

I'm sure there are some problems I am not seeing with setting this to en_US.UTF-8, but that is
the only way I could find to fix this bug without reintriducing the bug mentioned above.

* Rather than setting locale, just check for matches before trying to get groups

This is a pragmatic solution to avoid the stack trace since setting the locale correctly
to ensure message parsing is accurate is problematic.

* Improve regexps for finding revision and URL
(cherry picked from commit a8cf0196f7)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-06-14 13:16:18 -05:00
f92f039ea7 [2.11] Fix slurp error handling for unreadable files and directories (#74915)
- Fixes #67340
- Backport PR for #68608

Signed-off-by: Hideki Saito <saito@fgrep.org>
2021-06-14 10:47:23 -05:00
13e5c64918 Apply display_failed_stderr on loop item results (#74865) (#74898)
(cherry picked from commit 01ab6c6ec7)
2021-06-14 10:40:49 -05:00
25ac505975 Basic: don't call lstat when check_mode (#64279) (#74883)
While mode is specified in check_mode, don't call lstat.
Since file may not present.

Fixes: #61185
(cherry picked from commit 7099657dd7)

Co-authored-by: Logistic Bot <logistic-bot@protonmail.com>
2021-06-14 10:38:47 -05:00
93de61a8da Due to the takeover of freenode we're moving to a different irc network. (#74775) (#74968)
* Updates our channels to point at the same channel name on libera.chat
* Links that used to point to webchat.freenode.net now point to https://libera.chat
* Removes http://irc.freenode.net from the linkcheck exceptions.
* Updates docs/docsite/rst/dev_guide/developing_modules_in_groups.rst

(cherry picked from commit 80e7e1a17c)

Co-authored-by: John R Barker <john@johnrbarker.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2021-06-14 09:08:16 -05:00
dad721d9dc psrp - Fix reset connection on failed scenarios (#74967) (#74984)
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>

(cherry picked from commit cf3a304ce1)
2021-06-14 08:54:15 -05:00
a16dd1150e ansible-pull - update help info for --directory option (#74936) (#74993)
* Update -d help info for ansible-pull

* fix pep8

(cherry picked from commit 6539c59857)
2021-06-14 08:53:39 -05:00
03aff644cc fix unsafe preservation across newlines (#74960) (#74973)
CVE-2021-3583
  ensure we always have unsafe

Co-authored-by: Rick Elrod <rick@elrod.me>
(cherry picked from commit 4c8c40fd3d)
2021-06-11 16:43:09 -05:00
578fa17af5 [stable-2.11] version test - improve message when value is empty (#74754) (#74789)
When an empty value is provided, no `version` attribute will exist on the `LooseVersion` or
`StrictVersion` object. We catch and handle this, but it's not immediatebly clear that an
AttributeError means an empty value was provided.

Specifically handle the case where value or version are empty and add more
helpful error messages.

Add integration tests.
(cherry picked from commit 71e33d2578)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-06-11 11:32:30 -05:00
46378f0086 avoid literal quoting in config lists (#74740) (#74773)
* avoid literal quoting in config lists (#74740)
* added tests
(cherry picked from commit d2d1f01f9d)
2021-06-11 11:20:55 -05:00
b2808ed147 Fix name of subkey. (#74939) (#74966)
(cherry picked from commit 81ad125aa6)
2021-06-10 19:45:07 -05:00
8b8996cb36 Localization: Import first set of translated files (#74954)
* Localization: Import first set of translated files

(cherry picked from commit d45c2cec55)

* Ignore smart quotes in the dev guide translation.

The smart quotes are in the warning message to not use smart quotes.

(cherry picked from commit 3f694e9f02)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2021-06-10 18:22:58 -05:00
9627912180 Update inventory script references from c.g to ansible-community/contrib-scripts. (#74905) (#74926)
(cherry picked from commit acf09e56a2)
2021-06-07 13:46:12 -05:00
56ab8508d0 adds banner for GalaxyNG survey (#74889) (#74906)
* adds banner for GalaxyNG survey (#74889)

(cherry picked from commit 62fc4ad8da)

* gives each banner a unique div ID (#74907)

(cherry picked from commit 33924d7e8d)
2021-06-03 16:24:44 -05:00
13a829af2b [bp-2.11] Fix small typo in playbook_filters doc (#74763)
Move versionadded to next line to render correctly.

(cherry picked from commit 888fea69e5)

Co-authored-by: Chander G <mail@chandergovind.org>
2021-06-03 14:25:34 -05:00
8d6a8583c9 Improve and extend changelog logs (#74106) (#74753)
Co-authored-by: Andrew Klychkov <aaklychkov@mail.ru>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 4bf420706b)
2021-06-03 14:24:56 -05:00
6f126a8d08 [bp-2.11] Update example and description of git:single_branch (#74832)
(cherry picked from commit b63512774b)

Co-authored-by: Daniel Chabrowski <dantezstudio@gmail.com>
2021-06-03 13:56:31 -05:00
6987150d40 [bp-2.11] filters: Add a note about seed (#74874)
While using ``seed`` parameter of the 'random' filter, behavior changes between Python 2 and Python 3.
Added a note about this in the documentation.
Fixes: #63784

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

Co-authored-by: Sandra McCann <samccann@redhat.com>
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
2021-06-03 13:42:27 -05:00
ee38c4244b remove package porting guides from stable branch, point to devel (#74890)
Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
2021-06-03 13:20:12 -05:00
4ceaefc240 Update Ansible release version to v2.11.1.post0. 2021-05-24 17:51:07 -05:00
f468ec7087 New release v2.11.1 2021-05-24 14:50:49 -05:00
84707c60a4 updates list of available versions for Ansible 3 (#74265) (#74757)
* updates list of available versions for Ansible 3 (#74265)

(cherry picked from commit 126e9244c2)

* update conf.py (#74751)

(cherry picked from commit cd8e3a2208)

Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
2021-05-18 18:08:29 -05:00
bbca98f622 Set the version to 4 (#74755) 2021-05-18 15:38:25 -05:00
15ae85269f Update Ansible release version to v2.11.1rc1.post0. 2021-05-17 18:46:52 -05:00
d24f793ab1 New release v2.11.1rc1 2021-05-17 16:54:21 -05:00
892f0bf644 Add changelog for ansible-galaxy improvements (#74738) (#74739)
Changelog for #74240

(cherry picked from commit 9cfedcd9c9)
2021-05-17 16:04:03 -05:00
b5f13e5f28 Fix world readable setting (#74324) (#74418)
now uses shell option in all cases, the old constant still exists
as 'documentation' but it not settable.
also fix the docsite link in warnings/errors

import cleanup

(cherry picked from commit d8fa2b50d5)
2021-05-17 12:11:21 -05:00
ed456f25f6 restores delegated vars that were not passed (#74371)
* restores delegatd vars that were not passed

   this will restore delegate display on callbacks using the vars
   also moves to use delegate_to directly on the default callback

* clog

(cherry picked from commit cbc83545582d8d7a718140263c465129e0e535d9)
2021-05-17 10:35:57 -05:00
00d5a1610f Fix pb subs collapse (#74301) (#74376)
* fix subdir parsing for plays

  fixes #74283

  Co-authored-by: Nikolaos Kakouros <nkak@kth.se>

(cherry picked from commit 6418f368e3)
2021-05-17 10:28:42 -05:00
22adad0f19 [2.11] Do not remove non-empty cron tabs (#74698)
* Only remove crontabs if they are empty

(cherry picked from commit fefda12827)

* Add integration test to ensure system cron tab doesn't get removed. Increase cron integration tests separation.

(cherry picked from commit 1e37fa86b4)

* Also detect crontab which only contains whitespace as empty.

(cherry picked from commit 4b69c8f501)

* cron integration test: Adjust system crontab path to be distribution specific.

(cherry picked from commit 70be3730db)

* Add changelog fragment for #74497.

(cherry picked from commit c606b50a3d)

Co-authored-by: Fabian Klemp <fabian.klemp@elara-gmbh.de>
2021-05-17 10:11:59 -05:00
3d6c8ee3e0 Map Debian 8 to Python 2 (#74152) (#74359)
* Map Debian 8 to Python 2

If Python 3 is installed on Debian 8 Ansible cannot run, as the version
is too old (3.4)

* Add integration test for python interpreter discovery on Debian 8

* fix test issue on Debian 9, add changelog

* un"fix" not broken test :D

Co-authored-by: Fabian Klemp <fabian.klemp@elara-gmbh.de>
Co-authored-by: Matt Davis <mrd@redhat.com>
(cherry picked from commit 437a08eb6d)

Co-authored-by: elara-leitstellentechnik <elara-leitstellentechnik@users.noreply.github.com>
2021-05-17 09:10:03 -05:00
5ee1fe2665 Detect Homebrew on Mac M1 (Apple Silicon) (#74378) (#74401)
Homebrew's default install location for macOS on ARM is /opt/homebrew.
Source: https://docs.brew.sh/FAQ

On a Mac M1 (Apple Silicon), homebrew will be installed at
/opt/homebrew/bin/brew.
2021-05-17 05:37:11 -05:00
71fc9ec393 [bp-2.11]: apt_key - Binary GnuPG keys downloaded via URL were corrupted (#74522)
* Binary GnuPG keys downloaded via URLs by the 'ansible.builtin.apt_key' module were corrupted so 'gpg' could not import them (https://github.com/ansible/ansible/issues/74424)
(cherry picked from commit 0375070871)
(cherry picked from commit 4cc80ef9c9)
2021-05-17 05:35:02 -05:00
5b0a3ac43d Actually run blocks/finalized_task test (#74291) (#74312)
(cherry picked from commit 7fecb7ccc3)
2021-05-17 05:33:46 -05:00
85b4c70172 defend against bad or missing crypt (#74304)
* defend against bad or missing crypt

  fixes #74279

(cherry picked from commit 4494ef3a9d)
2021-05-17 05:33:25 -05:00
46b67b74c7 removed unused imports (#74299)
(cherry picked from commit e3eeb88f7c)
2021-05-17 05:33:25 -05:00
02d07dcace [become] Add Solaris chmod ACL fallback
Change:
- Newer Solaris drops setfacl. Add a fallback for its chmod ACL syntax.

Test Plan:
- New units

Tickets:
- Fixes #74282

Signed-off-by: Rick Elrod <rick@elrod.me>
2021-05-17 05:30:22 -05:00
341834fe70 [become] Fix solaris permissions regression
Change:
- Regression introduced in #70785
- When macOS chmod ACL syntax is used, Solaris-derived chmods return
  with a status of 5. This is also used for our sshpass handling,
  because sshpass will return 5 on auth failure. This means on Solaris,
  we incorrectly assume auth failure when we reach this branch of logic
  and try to run chmod with macOS syntax.
- We now wrap this specific use of chmod in an exception handler that
  looks for AnsibleAuthenticationFailure and skips over it. This adds
  another authentication attempt (something we normally avoid to prevent
  account lockout), but seems better than the regression of not allowing
  other fallbacks to be used.
- Without this patch, if setfacl fails on Solaris (and sshpass is used),
  we do not try common_remote_group or world-readable tmpdir fallbacks.

Test Plan:
- New unit

Signed-off-by: Rick Elrod <rick@elrod.me>
2021-05-17 05:30:22 -05:00
2c9389b193 Prevent ansible_failed_task from further templating (#74290) (#74308)
Fixes #74036

* Add changelog

(cherry picked from commit 664531d7d6)
2021-05-17 05:22:53 -05:00
a81386fa62 fix config manager list loption with choices (#74267) (#74298)
fixes #74225

  Co-authored-by: Kim Nørring <github@norring.dk>

(cherry picked from commit b91749d671)
2021-05-17 05:19:58 -05:00
3aab644285 The error message about the failure to import a 'gpg' key by the 'ansible.builtin.apt_key' module was incorrect (https://github.com/ansible/ansible/issues/74423) (#74521)
Co-authored-by: Sam Doran <sdoran@redhat.com>
(cherry picked from commit e4d7fc9745)
2021-05-17 05:09:43 -05:00
3d4d43a1ce [incidental_setup_rabbitmq] [2.11] Remove main (#74728)
Change:
- This file got missed in bcd7b61c03 /
  #74715 somehow.

Test Plan:
- If CI passes, it worked.

Signed-off-by: Rick Elrod <rick@elrod.me>
2021-05-17 05:06:06 -05:00
a9b7625151 Makefile: Allow one to specify python version (#74517) (#74528)
Change:
- Allow overriding python version as env var for Makefile
- Including hacking directory in git export, for docs build

Test Plan:
- Tested as part of recent downstream work

Co-authored-by: Yanis Guenane <yguenane@gmail.com>
2021-05-17 04:25:11 -05:00
dd7118c433 [stable-2.11] hostname - add Rocky Linux support (#74545) (#74560)
(cherry picked from commit 2d41e5f99a)

Co-authored-by: Louis Abel <nazunalika@users.noreply.github.com>
2021-05-17 04:24:35 -05:00
ebf7233e35 [stable-2.11] facts - set correct OS family for Rocky Linux (#74530) (#74561)
(cherry picked from commit d101009688)

Co-authored-by: Ruairidh MacLeod <ruairidh@rkm.dev>
2021-05-17 04:24:10 -05:00
45618a6f38 dont specify default for port, allow ssh/config (#74526) (#74562)
also added general note on how defaults work.

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Sam Doran <sdoran@redhat.com>
(cherry picked from commit 30912b6a47)
2021-05-17 04:19:52 -05:00
63cb289bf0 [bp-2.11] Update cli_parsing.rst (#74590)
Bad indent in an example

(cherry picked from commit dcb807dea7)

Co-authored-by: Joseph Jacobs <joej164@gmail.com>
2021-05-17 04:10:06 -05:00
d10195631e [stable-2.11] pause - ensure control characters are always set appropriately (#74568) (#74600)
On some systems, curses.tigetstr() returns None, which does not work as a control character.

* Add unit tests

* Sort imports

* Skip on older Python

This is an action plugin and only runs on the controller, so no need to test of Python 2. Making
the import hackery work on Python 2 would required some more work which I am not sure is
worth it since we are moving away from Python 2 support on the controller.

* Make the tests work on Python 2 and 3
(cherry picked from commit 55b401a3e7)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-05-17 04:09:22 -05:00
66a9ea2f23 [bp-2.11] service - compare version without LooseVersion (#74618)
The distutils module is not shipped with SUNWPython on Solaris.
It's in the SUNWPython-devel package. Do not use LooseVersion.

Fixes: #74488

(cherry picked from commit 4d7dc15d4e)

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2021-05-17 04:07:11 -05:00
162973d1a7 ansible-galaxy - increase page size and add retry decorator for throttling (#74240) (#74648)
* Get available collection versions with page_size=100 for v2 and limit=100 for v3

* Update unit tests for larger page sizes

* Add a generic retry decorator in module_utils/api.py that accepts an Iterable of delays and a callable to determine if an exception inheriting from Exception should be retried

* Use the new decorator to handle Galaxy API rate limiting

* Add unit tests for new retry decorator

* Preserve the decorated function's metadata with functools.wraps

Co-authored-by: Matt Martz <matt@sivel.net>
Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
(cherry picked from commit ee725846f0)
2021-05-17 04:06:53 -05:00
fc84de8faa Role argspec: allow new argument spec file (#74582) (#74656)
* support separate role argspec file in ansible-core
* support both .yml and .yaml extensions on argspec file in ansible-doc
* fix filename building bug and rename some argspec files to test variations
* use yaml extensions from constants
* add superfluous meta/main.yml files to tests
* Update lib/ansible/cli/doc.py
* update docs
* add changelog and allow for main.yml variations
* add collection role testing

Co-authored-by: Sam Doran <sdoran@redhat.com>
(cherry picked from commit 8fb54885bf)
2021-05-17 03:14:16 -05:00
a19d44ca7b modules: get_url: Fix checksum binary validation (#74502) (#74675)
From the sha512sum man page:

... The default mode is to print a line with checksum, a character indicating type ('*' for binary, ' ' for text), and name for each FILE.

(cherry picked from commit 403a5d147d)
2021-05-17 03:10:08 -05:00
cf8df3faa4 [stable-2.11] ini lookup - catch and handle duplicate key and missing section errors (#74629) (#74682)
* Remove unused import
* Add integration tests for errors
* Cleanup formatting on existing tests
* Add changelog.
(cherry picked from commit 0affe4d027)

* Add note about Py2/3 differences regarding key names

* Fix tests

Kwarg parsing wasn't backported.
2021-05-17 03:07:29 -05:00
a624731700 replace - better handling of file exceptions (#74686) (#74691)
(cherry picked from commit 51b5659598)
2021-05-17 03:00:14 -05:00
bcd7b61c03 [stable-2.11] Remove incidental_setup_rabbitmq integration test
All tests using this have been removed..
(cherry picked from commit 8d3dce49bf)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-05-14 13:06:28 -07:00
83c5e57ce5 Backportapalooza5 (#74706)
* Jinja intersphinx should point at 3.0; other updates

(cherry picked from commit 8c34eaa69f)

* Update AWS guides with new SDK and Python requirements (#74585)

The 2.0 collection releases will introduce new Python requirements
and a new SDK support policy

(cherry picked from commit fa15d35cb1)

* Add JC filter plugin example (#74563)

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 91212b2008)

* Fix typo on roles documentation (#74696)

##### SUMMARY
Small fix on the roles directory structure documentation

##### ISSUE TYPE
- Docs Pull Request

+label: docsite_pr

(cherry picked from commit 25de07946c)

* intro: Add a note about current user (#74638)

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

Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
Co-authored-by: Jill R <4121322+jillr@users.noreply.github.com>
Co-authored-by: Kelly Brazil <kellyjonbrazil@gmail.com>
Co-authored-by: m0nt3cr1st0 <gonzalo.rubio.casas@gmail.com>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
2021-05-14 11:16:46 -05:00
383559f8af [stable-2.11] CI and compat fixes for Jinja2 >= 3.0 (#74666)
* Add constraint for MarkupSafe

MarkupSafe >= 2.0.0 requires Python >= 3.6.0. Add a constraint for older Python versions
and fix the `groupby_filter` test.

* Fix template_jinja2_latest test.

* patch filter decorators on newer Jinja2

* Jinja2 >= 3.0 renames several filter decorators used by Ansible itself, as well as by filters in collections. This patch ensures that the old names are usable within Ansible and by collections without warnings or errors.

* Ignore docs-build issues.

Co-authored-by: Matt Clay <matt@mystile.com>
Co-authored-by: Matt Davis <mrd@redhat.com>.
(cherry picked from commit f99d024851)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-05-11 21:51:53 -07:00
0fbedb3364 [docs][2.11] Backportapalooza4 (#74662)
* Change Shippable refs in docs to Azure Pipelines.

(cherry picked from commit 8bd599d048)

* Update cli_parsing.rst (#74555)

Bad indent in an example

(cherry picked from commit dcb807dea7)

* systemd doc update (#74442)

Document that systemd module manages units (timers, services, ...) and not only service. (#74442)

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
(cherry picked from commit 74647a1314)

* Update the module lifecycle document to also cover plugins and collections (#74413)

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit a6cc508822)

* Docs: communication.rst - add ansible-community to the IRC channel list (#74570)

(cherry picked from commit 5463cbb841)

* adhoc clarify help (#74616)

also added comments to code

(cherry picked from commit 7f7d3067e3)

* update docs copyright (#74643)

(cherry picked from commit 7195367635)

* docs: Add a note about `crypt` (#74640)

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

Co-authored-by: Matt Clay <matt@mystile.com>
Co-authored-by: Joseph Jacobs <joej164@gmail.com>
Co-authored-by: Baptiste Mille-Mathias <baptiste.millemathias@gmail.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Andrew Klychkov <aklychko@redhat.com>
Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
2021-05-11 14:44:47 -05:00
3f0b92e0b6 [stable-2.11] callback_default test - Reduce sleep time to correct CI failures
For unknown reasons, these tests started failing recently because the results
from testhost11 are being returned before testhost10, but only when coverage is
enabled.

Setting the initial host sleep time to 0 fixes this failure.

ci_coverage
(cherry picked from commit 728e43bc59)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-05-07 14:26:04 -07:00
4da2e2db79 functional backport of 74448 (#74567)
Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
2021-05-04 17:56:35 -05:00
167726e291 [docs][2.11][backport] Backportapalooza3 (#74566)
* AWS: update reference to auto-retrying ResourceNotFound (#72314)

AWS Dev Guidelines: update reference to auto-retrying ResourceNotFound

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit c387b318a6)

* docs: Improve documentation for regex_search,replace,findall (#74368)

Improve the documentation for regex_search by adding a few more
realistic examples such as showing how to extract only parts of a
string by using regex groups.

Extend regex_findall and regex_replace by an example that includes
the multiline and ignorecase parameters.

(cherry picked from commit f194108a26)

* Improve a documentation of the first_found lookup plugin (#73080)

Co-authored-by: Wojciech Ściesiński <wojciech.sciesinski@huuugegames.com>
(cherry picked from commit f40ab25909)

* Update the porting guide for a new ansible version (#74490)

(cherry picked from commit 112b175f17)

* setup: Add note and example of delegated facts (#74479)

* Added a note about 'delegated_facts'
* Added an example of 'delegated_facts'

Fixes: #67067

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

* command - add command name to warning (#74475)

(cherry picked from commit 9e61952cdc)

* update backporting instructions to reflect new latest stable branch, some edits (#74512)

Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
(cherry picked from commit b765d3799b)

Co-authored-by: Mark Chappell <mchappel@redhat.com>
Co-authored-by: Christian Fetzer <christian.fetzer@bmw.de>
Co-authored-by: Wojciech Sciesinski <it-praktyk@users.noreply.github.com>
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
2021-05-04 15:13:14 -05:00
744412d0cd [stable-2.11] incidental_setup_rabbitmq test - Use official repo for rabbitmq-erlang (#74450)
Previously it was hosted on bintray, but that service is shutting down on May 1. Using the new
repository also required using a newer version of RabbitMQ.
(cherry picked from commit 62cba4a6ad)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-05-03 13:31:13 -05:00
2743ea1e69 [stable-2.11] Add porting guide and documentation for changes to argument spec validation (#74268) (#74353)
* Add ArgumentSpecValidator to docs
* Improve docs for ArgumentSpecValidator
* Document removal of private methods

* Update module_utils documentation
    - Add docs for argument spec classes as well as validation and parameters files.
    - preserve the order in the source for errors.py
    - document DEFAULT_TYPE_VALIDATORS so it can be referenced elsewhere
    - fix automodule directive for validation.py

* Update docs in arg_spec and paremeters
    - This improves the generated documentation.

* Document breaking changes in porting guide.
* Update formatting in porting guide and add a Deprecated section
* Fine tune module_utils documentation

* Move instance docstring to the __init__ method
  Remove optional description since it fails the sanity test and I am not 100% it is valid anyway.

* Remove incorrect parameter from docstring
  This was changed a while ago but wasn't removed from the docstring.

* Use attr rather than attribute
  The py:attribute: domain only exists in newer Sphinx >= 3.1.

* Improve documentation on exceptions
* Final pass
    - use args/kwargs instead of param
    - fix formatting errors that didn't display examples correctly
    - format TypeErrors so they are referenced as classes
    - specify complex types
(cherry picked from commit 2cbfd1e350)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-04-30 10:42:24 -05:00
51d1ab036d [stable-2.11] Use our own copy of the Codecov uploader (#74460)
Due to the recent security incident, use our own copy hosted in S3
to mitigate future risk from running an arbitrary script downloaded from a
remote and untrtusted server.
(cherry picked from commit aa12af1d34)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-04-29 14:03:35 -07:00
ccf646d3a6 stubs out release and maintenance info, points to devel (#74496)
Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
2021-04-29 10:59:24 -05:00
af07c35f98 Backport/2.11/docs2 (#74484)
* Add description for COLLECTIONS_SCAN_SYS_PATH (#74351)

Fixes: #74275

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

* lighten navigation background to make section labels easier to read for core docs (#74356)

* make section labels for /ansible-core/ docs easier to read, with black text and lighter gray background

(cherry picked from commit 6119fb0a9a)

* Correct splitext() description, and example (#74377)

`splitext()` returns a 2-tuple of strings, and the last element of the return value includes the `.`

(cherry picked from commit c295de661c)

* Using "~" instead of "+" for concatination (#74364)

Changed FAQ examples to conform with the Jinja documentation:
If both values on either side of a plus/+ are numbers, they will be added whereas using "~" will convert all operands into strings and then concatenate them. Closes #73799.

(cherry picked from commit e6a5245d60)

* Docs - Split Developing collections page, add info on optional module_utils (#74105)

*

(cherry picked from commit c90922ee36)

* Add weos4 network platform to documentation (#74088)

* Add weos4 network platform to documentation

* Fix small format issues

(cherry picked from commit 7ca5dede97)

* Fix typo in Makefile (#74396)

Fixed minor typo specfic -> specific

(cherry picked from commit 4880fee6ca)

* Update complex_data_manipulation.rst (#72509)

(cherry picked from commit c2985c491b)

* Update VMware library installation docs (#71219)

Depending upon OS/distro, please use pip/pip3.

(cherry picked from commit ddfc648d37)

* Update AWS dev guides to use collections utils and fragments (#72312)

(cherry picked from commit cf08c23b4f)

* Use is_boto3_error_code in 'standard' example (#72313)

Use is_boto3_error_code in 'standard' example rather than e.response['Error']['Code'] (#72313)

Co-authored-by: Sloane Hertel <shertel@redhat.com>
(cherry picked from commit 63afb33d86)

* Update Kubernetes collection name in docs (#74440)

(cherry picked from commit 8d499bbc83)

* Update argcomplete docs links on installation guide (#74410)

Link on installation docs is outdated. Switch to currently docs at: https://kislyuk.github.io/argcomplete/

(cherry picked from commit f97787ca74)

* fix spacing to fix header, reorg contributing page (#74421)

Co-authored-by: John R Barker <john@johnrbarker.com>
(cherry picked from commit 9d9b08bece)

* Update first_found documentation (#70502)

* import_tasks do not work with loop, use use include_tasks instead
* update documentation

(cherry picked from commit bacede7a2b)

* Product-related updates. (#74454)

(cherry picked from commit 34c9ed8a28)

Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Sandra McCann <samccann@redhat.com>
Co-authored-by: Alex Willmer <alex@moreati.org.uk>
Co-authored-by: Hublerho <43293510+Hublerho@users.noreply.github.com>
Co-authored-by: Ernst Oudhof <17832702+ernst-s@users.noreply.github.com>
Co-authored-by: Hu Shuai <hus.fnst@cn.fujitsu.com>
Co-authored-by: dhx-mike-palandra <45608336+dhx-mike-palandra@users.noreply.github.com>
Co-authored-by: jakelevinez <31458570+jakelevinez@users.noreply.github.com>
Co-authored-by: Mark Chappell <mchappel@redhat.com>
Co-authored-by: Lidiane Taquehara <lidi.mayra@gmail.com>
Co-authored-by: Alex Domoradov <alex.hha@gmail.com>
Co-authored-by: Bill Nottingham <notting@redhat.com>
2021-04-28 16:13:45 -05:00
d51ec33d84 [stable-2.11] Fix ansible-test AZP build lookup.
(cherry picked from commit 877e5b3dfe)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-04-28 10:49:38 -07:00
75d9fa648e [stable-2.11] Remove obsolete Shippable specific scripts.
Also remove some other unncessary code from CI scripts.
(cherry picked from commit be7de9844e)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-04-28 10:49:16 -07:00
8d03c2ddc4 Backport/2.11/docs1 (#74457)
* Fix issue with version 3 in docs version list (#74089)

Previously would subsitute the "3" in "s3" instead of the version location in the URL

(cherry picked from commit 325ccf22fe)

* corrected epmhasis line (#74254)

need to be careful when adding lines as you create a different offset

(cherry picked from commit 7b39ee361d)

* correct how to install Docker SDK for Python (#74288)

* docs: correct guide for the latest Docker SDK for Python
Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Sandra McCann <samccann@redhat.com>
Co-authored-by: Daeseok Youn <daeseok.youn@navercorp.com>
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>

(cherry picked from commit 9369bd6ca1)

* Provide results to examples (#73984)

(cherry picked from commit 99a2b5f300)

* remove deprecated ansible.module_utils._text from documentation (#73211)

According to comment in ansible.module_utils._text it is deprecated and
should not be used. This is now reflected in the documentation.

(cherry picked from commit 5e5bfa8116)

* Update playbooks_filters.rst (#74242)

##### SUMMARY
Make the `random` filter description more clear.

(cherry picked from commit 5f391a72ee)

* Docs: Fix k8s_config_resource_name YAML example (#74129)

The `name` key should be beneath `metadata`:

(cherry picked from commit c9c84594d8)

* Update lookup.rst (#73716)

Document that users must pass `allow_unsafe=True` as an option in the lookup to allow templating, with a note about security implications.

Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
Co-authored-by: Sandra McCann <samccann@redhat.com>
(cherry picked from commit c0cc574e65)

* vmware: Add a note about known issue (#73273)

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
Co-authored-by: Sandra McCann <samccann@redhat.com>
Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
(cherry picked from commit 6e56e72d99)

Co-authored-by: Scott Sinclair <252082+pwae@users.noreply.github.com>
Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
Co-authored-by: daeseokyoun <daeseok.youn@gmail.com>
Co-authored-by: Baptiste Mille-Mathias <baptiste.millemathias@gmail.com>
Co-authored-by: schurzi <github@drachen-server.de>
Co-authored-by: yuri <1969yuri1969@gmail.com>
Co-authored-by: ml <6209465+ml-@users.noreply.github.com>
Co-authored-by: sry9681 <sry9681@users.noreply.github.com>
Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com>
2021-04-28 11:10:29 -05:00
4e3f422540 set version to 2.11 (#74455) 2021-04-27 15:16:52 -05:00
b5ad0296a2 update changelog links and release-maint page (#74431) (#74447)
(cherry picked from commit d1e6ee7b21)
2021-04-27 13:12:23 -05:00
74c3c30063 update versions (#74432) (#74441)
(cherry picked from commit a75bae8a62)
2021-04-27 13:11:48 -05:00
a4eff47860 [backport][Docs] Docs backportapalooza1 (#74355)
* Docs: clarify role docs - vars vs params, dependencies (#74104)

(cherry picked from commit 05662fd2ab)

* pin docutils to 0.16 until theme problem is fixed (#74193)

(cherry picked from commit 7443e9d659)

* Docs: Remove duplicate word (#74223)

The word "to" was erroneously used twice consecutively.

Signed-off-by: Matthew Cengia <mattcen@mattcen.com>
(cherry picked from commit c7473828c7)

* Change look and feel of the `ansible-core` docs (#74200)

(cherry picked from commit d7f826c987)

* fix see_also formatting (#74252)

(cherry picked from commit 270f109bb3)

* Update the porting guide for ansible package 4.0.0 alpha4 (#74280)

(cherry picked from commit ee38202fc0)

* Typo fix in help output (#74277)

Should still fit in 80 chars

(cherry picked from commit 8e5dc7306e)

* update intersphinx links for Ansible 3

(cherry picked from commit 481c036632)

Co-authored-by: Alicia Cozine <879121+acozine@users.noreply.github.com>
Co-authored-by: Matthew Cengia <mattcen+github@mattcen.com>
Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
Co-authored-by: Richlv <richlv@nakts.net>
2021-04-27 09:57:15 -05:00
1df28faad6 [stable-2.11] Fix ansible-test docker container IP detection..
(cherry picked from commit 14ff5e213c)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-04-26 23:01:12 -07:00
405da50dc7 [stable-2.11] Fix pypi-test-container port conflict.
(cherry picked from commit cb7f4f1971)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-04-26 23:00:09 -07:00
2d931e101e Update Ansible release version to v2.11.0.post0. 2021-04-26 14:24:58 -05:00
2c16395054 New release v2.11.0 2021-04-26 12:19:06 -05:00
bd107203b2 [stable-2.11] Update alpine repo to community for libuser (#74374) (#74375)
(cherry picked from commit a3e7cf0)

Co-authored-by: Matt Martz <matt@sivel.net>
2021-04-22 10:29:58 -05:00
1808502b51 [stable-2.11] Bump azure-pipelines-test-container to version 1.9.0
(cherry picked from commit 4819e9301b)

Co-authored-by: Alexander Sowitzki <asowitzk@redhat.com>
2021-04-13 10:53:30 -07:00
62b68bf83e [stable-2.11] ansible-test - ensure trailing separator is added for connection unit test target (#74176) (#74180)
For connection units tests, if the `__init__.py` file is modified, the trailing separator was
not added, making the target invalid.
(cherry picked from commit 7b79b69369)

Co-authored-by: Sam Doran <sdoran@redhat.com>
2021-04-12 21:18:05 -05:00
01a0e728c7 [stable-2.11] Add PyPI proxy container for tests on Python 2.6. (#74204)
(cherry picked from commit becf941673)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-04-12 21:15:28 -05:00
cf18aa3d74 [stable-2.11] Update test containers in ansible-test. (#74166) (#74167)
* Update distro test containers to version 2.0.2.

* Update the default test containers.
(cherry picked from commit 459ea5a4a4)

Co-authored-by: Matt Clay <mclay@redhat.com>
2021-04-12 20:57:29 -05:00
ad2221fbc8 Update Ansible release version to v2.11.0rc2.post0. 2021-04-06 15:28:39 -05:00
228c2782ad New release v2.11.0rc2 2021-04-06 13:43:31 -05:00
f196914e13 Use a file-like obj for stdout/stderr for deadlock workaround (#74156) (#74160)
Fixes #74149

(cherry picked from commit 96f94c0fef)
2021-04-06 12:47:03 -05:00
275d0acfa1 renamed: ansible-base.{dirs,install} -> ansible-core.{dirs,install} (#74162) 2021-04-06 12:43:12 -05:00
ccc44d9dc0 Update Ansible release version to v2.11.0rc1.post0. 2021-04-05 19:35:01 -05:00
8f85594ff9 New release v2.11.0rc1 2021-04-05 17:35:18 -05:00
6711bb0364 [stable-2.11] Add ansible-test constraint for decorator. (#74128)
(cherry picked from commit f436058fad)

Co-authored-by: Matt Clay <matt@mystile.com>
2021-04-05 17:00:23 -05:00
562 changed files with 77821 additions and 9387 deletions

View File

@ -36,7 +36,7 @@ variables:
resources:
containers:
- container: default
image: quay.io/ansible/azure-pipelines-test-container:1.8.0
image: quay.io/ansible/azure-pipelines-test-container:1.9.0
pool: Standard

View File

@ -7,7 +7,7 @@ set -o pipefail -eu
output_path="$1"
curl --silent --show-error https://codecov.io/bash > codecov.sh
curl --silent --show-error https://ansible-ci-files.s3.us-east-1.amazonaws.com/codecov/codecov.sh > codecov.sh
for file in "${output_path}"/reports/coverage*.xml; do
name="${file}"

1
.gitattributes vendored
View File

@ -1,2 +1 @@
.github/ export-ignore
hacking/ export-ignore

View File

@ -11,7 +11,7 @@
# make deb ------------------ produce a DEB
# make docs ----------------- rebuild the manpages (results are checked in)
# make gettext -------------- produce POT files for docs
# make generate-po ---------- generate language specfic po file
# make generate-po ---------- generate language specific po file
# make needs-translation ---- generate list of file with unstranlated or fuzzy string for a specific language
# make tests ---------------- run the tests (see https://docs.ansible.com/ansible/devel/dev_guide/testing_units.html for requirements)
@ -34,7 +34,7 @@ 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
# fetch version from project release.py as single source-of-truth

View File

@ -5,105 +5,212 @@ ansible-core 2.11 "Hey Hey, What Can I Do" Release Notes
.. contents:: Topics
v2.11.0b4
=========
v2.11.6
=======
Release Summary
---------------
| Release Date: 2021-03-29
| Release Date: 2021-10-11
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Minor Changes
-------------
- ansible-galaxy CLI - ``collection verify`` command now exits with a non-zero exit code on verification failure
- ansible-galaxy CLI - ``collection verify`` command now supports a ``--offline`` option for local-only verification
- ansible-galaxy - Non-HTTP exceptions from Galaxy servers are now a warning and only fatal if the collection to download|install|verify is not available from any of the servers (https://github.com/ansible/ansible/issues/75443).
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
--------
- Correctly set template_path and template_fullpath for usage in template lookup and action plugins.
- Try to avoid kernel 'blocking' state on reading files while fact gathering.
- apt - fix policy_rc_d parameter throwing an exception when restoring original file (https://github.com/ansible/ansible/issues/66211)
- argument spec validation - fix behavior of ``apply_defaults=True`` when an empty dictionary is specified for such an option (https://github.com/ansible/ansible/pull/74029).
- pause - do not accept enter to continue when a timeout is set (https://github.com/ansible/ansible/issues/73948)
- setup module, fix error handling on bad subset given
- wait_for module, move missing socket into function to get proper comparrison in time.
- PowerShell - Ignore the ``LIB`` environment variable when compiling C# Ansible code
- ansible-galaxy - Fix handling HTTP exceptions from Galaxy servers. Continue to the next server in the list until the collection is found.
- ansible-test pslint - Fix error when encountering validation results that are highly nested - https://github.com/ansible/ansible/issues/74151
- config - use ``callbacks_enabled`` instead ``callback_enabled`` in a deprecated message (https://github.com/ansible/ansible/issues/70028).
- netconf - catch and handle exception to prevent stack trace when running in FIPS mode
- roles - fix unexpected ``AttributeError`` when an empty ``argument_specs.yml`` is present (https://github.com/ansible/ansible/pull/75604).
v2.11.0b3
=========
v2.11.5
=======
Release Summary
---------------
| Release Date: 2021-03-19
| Release Date: 2021-09-13
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Major Changes
-------------
- AnsibleModule - use ``ArgumentSpecValidator`` class for validating argument spec and remove private methods related to argument spec validation. Any modules using private methods should now use the ``ArgumentSpecValidator`` class or the appropriate validation function.
Minor Changes
-------------
- Callbacks - Migrate more places in the ``TaskExecutor`` to sending callbacks directly over the queue, instead of sending them as ``TaskResult`` and short circuiting in the Strategy to send the callback. This enables closer to real time callbacks of retries and loop results (https://github.com/ansible/ansible/issues/73899)
- setup - fix distribution facts for Older Amazon Linux with ``/etc/os-release`` (https://github.com/ansible/ansible/issues/73946).
Bugfixes
--------
- Fix adding unrelated candidate names to the plugin loader redirect list.
- Strategy - When building the task in the Strategy from the Worker, ensure it is properly marked as finalized and squashed. Addresses an issue with ``ansible_failed_task``. (https://github.com/ansible/ansible/issues/57399)
- ansible-pull - Run all playbooks that when multiple are supplied via the command line (https://github.com/ansible/ansible/issues/72708)
- find module, fix default pattern when use_regex is true.
- Fix templating task action with host-specific vars (https://github.com/ansible/ansible/issues/75568)
- Since ansible/2.11 doc site was removed, the current relative messages point to a 404 url, this fixes it by chainging the target to ansible-core/2.11
- ansible-galaxy - Fix a bug with build_ignore when installing collections from source (https://github.com/ansible/ansible/issues/75528).
- ansible-galaxy - Improve error message from dependency resolution when a candidate has inconsistent requirements (https://github.com/ansible/ansible/issues/75139).
- ansible-playbook, more robust handling of --list-hosts and undefined vars in hosts keyword.
- command module, clarify order of remove/creates checks.
- command module, correctly handles chdir to symlinks.
- command module, move to standarized messages in 'msg' vs abusing 'stdout'.
- command module, now all options work in ad-hoc execution.
- command module, now always returns what we documented as 'returns always'.
- get_bin_path, clarify with quotes what the missing required executable is.
- make previous versions compatible we new attributres w/o implementing them.
- paramiko_ssh - mark connection as connected when ``_connect()`` is called (https://github.com/ansible/ansible/issues/74081)
- setup module should now not truncate hpux interface names.
- validate_argument_spec, correct variable precedence and merge method and add missing examples
- variable manager, avoid sourcing delegated variables when no inventory hostname is present. This affects scenarios like syntax check and imports.
v2.11.0b2
=========
v2.11.4
=======
Release Summary
---------------
| Release Date: 2021-03-15
| Release Date: 2021-08-16
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Bugfixes
--------
- Fix ``when`` evaluation on Native Jinja and Python 3.10.
- Jinja2 globals should be accessible even when importing a template without the context (https://github.com/ansible/ansible/issues/75371)
- ansible-test - add packaging python module to ``ansible-doc`` sanity test requirements.
- ansible-test validate-modules - correctly validate positional parameters to ``AnsibleModules`` (https://github.com/ansible/ansible/pull/75332).
- cli defaults for ssh args set to None as '' was bypassing normal default.
- dnf module - Use all components of a package name to determine if it's installed (https://github.com/ansible/ansible/issues/75311).
- do not trigger interpreter discovery in the forced_local module path as they should use the ansible playbook python unless otherwise configured.
- find action, correctly convert path to text when warning about skiping.
- remote tmpdir permissions - fix type error in macOS chmod ACL fallback (https://github.com/ansible/ansible/pull/74613).
- template - ensure Jinja2 overrides from template header are used (https://github.com/ansible/ansible/issues/75275)
- unarchive - move failure for missing binary to ``can_handle_archive()`` rather than ``__init__()``
v2.11.3
=======
Release Summary
---------------
| Release Date: 2021-07-19
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Minor Changes
-------------
- ansible-test - The generated ``resource_prefix`` variable now meets the host name syntax requirements specified in RFC 1123 and RFC 952. The value used for local tests now places the random number before the hostname component, rather than after. If the resulting value is too long, it will be truncated.
- ansible-test validate-modules - option names that seem to indicate they contain secret information that should be marked ``no_log=True`` are now flagged in the validate-modules sanity test. False positives can be marked by explicitly setting ``no_log=False`` for these options in the argument spec. Please note that many false positives are expected; the assumption is that it is by far better to have false positives than false negatives (https://github.com/ansible/ansible/pull/73508).
- distribution - add facts about Amazon Linux Distribution facts (https://github.com/ansible/ansible/issues/73742).
- module payload builder - module_utils imports in any nested block (eg, ``try``, ``if``) are treated as optional during module payload builds; this allows modules to implement runtime fallback behavior for module_utils that do not exist in older versions of Ansible.
- ansible-test - aws creates and exposes a new tiny_prefix variable to provide a shorter prefix for the AWS tests.
Bugfixes
--------
- A handler defined within a role will now search handlers subdir for included tasks (issue https://github.com/ansible/ansible/issues/71222).
- ALLOW_WORLD_READABLE_TMP, switched to 'moved' message as 'deprecation' is misleading since config settings still work w/o needing change.
- Automatically remove async cache files for polled async tasks that have completed (issue https://github.com/ansible/ansible/issues/73206).
- Deal with failures when sorting JSON and you have incompatible key types.
- Setup virtualization_facts - add RHV and oVirt type. This change will fully work for VMs in clusters at cluster level 4.4 or newer (https://github.com/ansible/ansible/pull/72876).
- [set_fact] Corrected and expanded documentation as well as now raise errors that were previously ignored.
- ansible-test - ensure unit test paths for connection and inventory plugins are correctly identified for collections (https://github.com/ansible/ansible/issues/73876).
- connection/ssh, ensure parameters come from correct source get_option, so functionality matches docs.
- connection/ssh, fix reset to use same parameters to check if socket exists as actually used, was hardcoded to default string construction previouslly.
- j2 plugin loader clarified comments, made note with better fqcn detection.
- notify keyword is not ignored anymore on import_tasks, also able to apply to blocks now.
- restrict module valid JSON parsed output to objects as lists are not valid responses.
- setup, don't give up on all local facts gathering if one script file fails.
- su become plugin, ensure correct type for localization option.
- Add unicode support to ``ansible-inventory`` CLI (https://github.com/ansible/ansible/issues/57378)
- Ensure we get full path for extra vars into cliargs to avoid realpath issues after initial load.
- ansible-doc - in text output, do not show empty ``version_added_collection`` values (https://github.com/ansible/ansible/pull/74999).
- ansible-test - restrict ``packaging`` to ``< 21.0`` for Python ``< 3.6`` (https://github.com/ansible/ansible/pull/75186).
- command - remove unreachable code path when trying to convert the value for ``chdir`` to bytes (https://github.com/ansible/ansible/pull/75036)
- module_common - handle exception when multiple workers try to create the cache directory
- roles - make sure argspec validation task templates suboptions (https://github.com/ansible/ansible/issues/75070).
- slurp - improve the logic in the error handling and remove ``os.stat()`` call (https://github.com/ansible/ansible/pull/75038)
- ssh_connection - rename ``retries`` to ``reconnection_retries`` to avoid conflicts with task vars (https://github.com/ansible/ansible/issues/75142).
- ssh_connection - set the default for ``reconnection_retries`` back to ``0`` (https://github.com/ansible/ansible/issues/75142).
- task_executor/ssh_connection - use the ``retries`` value from ``ssh_connection`` settings, not the default from the ``Task`` field attributes (https://github.com/ansible/ansible/issues/75142).
v2.11.0b1
=========
v2.11.2
=======
Release Summary
---------------
| Release Date: 2021-03-02
| Release Date: 2021-06-22
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Security Fixes
--------------
- templating engine fix for not preserving usnafe status when trying to preserve newlines. CVE-2021-3583
Bugfixes
--------
- AnsibleModule.set_mode_if_different - don't check file existence when check_mode is activated (https://github.com/ansible/ansible/issues/61185).
- Apply ``display_failed_stderr`` callback option on loop item results. (https://github.com/ansible/ansible/issues/74864)
- Avoid task executor from ending early as vars can come from delegated to host.
- ansible-pull - update documentation for ``--directory`` option to clarify path must be absolute.
- config, ensure 'quoted' lists from ini or env do not take the quotes literally as part of the list item.
- gather_facts, package, service - fix using module_defaults for the modules in addition to the action plugins. (https://github.com/ansible/ansible/issues/72918)
- psrp - Always cleanup the last run pipeline if a second pipeline is invoked to avoid violating any resource limits.
- psrp - Fix error when resetting a connection that was initialised but not connected - (https://github.com/ansible/ansible/issues/74092).
- psrp - Try to clean up any server-side resources when resetting a connection.
- roles - make sure argspec validation task is tagged with ``always`` (https://github.com/ansible/ansible/pull/74994).
- slurp - Fix error messages for unreadable files and directories (https://github.com/ansible/ansible/issues/67340).
- slurp - handle error when ``path`` is a directory and not a file (https://github.com/ansible/ansible/pull/74930).
- ssh connection - fix interaction between transfer settings options.
- subversion - fix stack trace when getting information about the repository (https://github.com/ansible/ansible/issues/36498)
- version test - improve error message when an empty version is provided
v2.11.1
=======
Release Summary
---------------
| Release Date: 2021-05-24
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
Minor Changes
-------------
- ansible adhoc, clarified the help to some options, also added some comments to code.
- command - update the user warning message to point out command name (https://github.com/ansible/ansible/pull/74475).
Bugfixes
--------
- Add RockyLinux to fact gathering (https://github.com/ansible/ansible/pull/74530).
- Improve resilience of ``ansible-galaxy collection`` by increasing the page size to make fewer requests overall and retrying queries with a jittered exponential backoff when rate limiting HTTP codes (520 and 429) occur. (https://github.com/ansible/ansible/issues/74191)
- Prevent ``ansible_failed_task`` from further templating (https://github.com/ansible/ansible/issues/74036)
- Remove 'default' from ssh plugin as we want to rely on default from ssh itself or ssh/config.
- The error message about the failure to import a ``gpg`` key by the ``apt_key`` module was incorrect (https://github.com/ansible/ansible/issues/74423).
- ansible-test - Avoid publishing the port used by the ``pypi-test-container`` since it is only accessed by other containers. This avoids issues when trying to run tests in parallel on a single host.
- ansible-test - Fix docker container IP address detection. The ``bridge`` network is no longer assumed to be the default.
- ansible-test - Use documented API to retrieve build information from Azure Pipelines.
- ansible.builtin.cron - Keep non-empty crontabs, when removing cron jobs (https://github.com/ansible/ansible/pull/74497).
- ansible.utils.encrypt now handles missing or unusable 'crypt' library.
- ansible_test - add constraint for ``MarkupSafe`` (https://github.com/ansible/ansible/pull/74666)
- apt_key - Binary GnuPG keys downloaded via URLs were corrupted so GnuPG could not import them (https://github.com/ansible/ansible/issues/74424).
- become - fix a regression on Solaris where chmod can return 5 which we interpret as auth failure and stop trying become tmpdir permission fallbacks
- become - work around setfacl not existing on modern Solaris (and possibly failing on some filesystems even when it does exist)
- callback default, now uses task delegate_to instead of delegate vars to display delegate to host
- callbacks, restores missing delegate_vars
- correct doc links for become on warnings over world readable settings.
- correctly use world readable setting since old constant is not 'settable' anymore.
- facts - detect homebrew installed at /opt/homebrew/bin/brew
- filter plugins - patch new versions of Jinja2 to prevent warnings/errors on renamed filter decorators (https://github.com/ansible/ansible/issues/74667)
- get_url - Fixed checksum validation for binary files (leading asterisk) in checksum files (https://github.com/ansible/ansible/pull/74502).
- hostname - Add Rocky Linux support
- ini lookup - handle errors for duplicate keys and missing sections (https://github.com/ansible/ansible/issues/74601)
- interpreter discovery - Debian 8 and lower will avoid unsupported Python3 version in interpreter discovery
- pause - ensure control characters are always set to an appropriate value (https://github.com/ansible/ansible/issues/73264)
- playbook loaded from collection subdir now does not ignore subdirs.
- plugin config now allows list type options to have multiple valid choices (#74225).
- replace - better handling of file operation exceptions (https://github.com/ansible/ansible/pull/74686).
- roles - allow for role arg specs in new meta file (https://github.com/ansible/ansible/issues/74525).
- service - compare version without LooseVersion API (https://github.com/ansible/ansible/issues/74488).
v2.11.0
=======
Release Summary
---------------
| Release Date: 2021-04-26
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
@ -111,6 +218,7 @@ Major Changes
-------------
- A collection can be reinstalled with new version requirements without using the ``--force`` flag. The collection's dependencies will also be updated if necessary with the new requirements. Use ``--upgrade`` to force transitive dependency updates.
- AnsibleModule - use ``ArgumentSpecValidator`` class for validating argument spec and remove private methods related to argument spec validation. Any modules using private methods should now use the ``ArgumentSpecValidator`` class or the appropriate validation function.
- Declared ``resolvelib >= 0.5.3, < 0.6.0`` a direct dependency of
ansible-core. Refs:
- https://github.com/sarugaku/resolvelib
@ -120,6 +228,7 @@ Major Changes
- It became possible to upgrade Ansible collections from Galaxy servers using the ``--upgrade`` option with ``ansible-galaxy collection install``.
- Support for role argument specification validation at role execution time. When a role contains an argument spec, an implicit validation task is inserted at the start of role execution.
- add ``ArgumentSpecValidator`` class for validating parameters against an argument spec outside of ``AnsibleModule`` (https://github.com/ansible/ansible/pull/73335)
- ansible-test - Tests run with the ``centos6`` and ``default`` test containers now use a PyPI proxy container to access PyPI when Python 2.6 is used. This allows tests running under Python 2.6 to continue functioning even though PyPI is discontinuing support for non-SNI capable clients.
Minor Changes
-------------
@ -147,6 +256,7 @@ Minor Changes
- CLI - Specify jinja version in ``--version`` output
- CLI - Specify whether PyYAML includes libyaml support in version output
- CLI version displays clarified as core version
- Callbacks - Migrate more places in the ``TaskExecutor`` to sending callbacks directly over the queue, instead of sending them as ``TaskResult`` and short circuiting in the Strategy to send the callback. This enables closer to real time callbacks of retries and loop results (https://github.com/ansible/ansible/issues/73899)
- Collection routing: Cisco NSO content from community.network migrated to cisco.nso (https://github.com/ansible/ansible/pull/73046).
- Collection routing: DellEMC content from community.general migrated to dellemc.openmanage (https://github.com/ansible/ansible/pull/73046).
- Collection routing: FortiOS content from community.network migrated to community.fortios (https://github.com/ansible/ansible/pull/73046).
@ -200,9 +310,12 @@ Minor Changes
- ansible-galaxy - Change the output verbosity level of the download message from 3 to 0 (https://github.com/ansible/ansible/issues/70010)
- ansible-galaxy - Ensure ``get_collection_versions`` returns an empty list when a collection does not exist for consistency across API versions.
- ansible-galaxy - find any collection dependencies in the globally configured Galaxy servers and not just the server the parent collection is from.
- ansible-galaxy CLI - ``collection verify`` command now exits with a non-zero exit code on verification failure
- ansible-galaxy CLI - ``collection verify`` command now supports a ``--offline`` option for local-only verification
- ansible-test - A warning is no longer emitted when a ``pip*`` or ``python*`` binary is found without a matching couterpart.
- ansible-test - Add ``macos/10.15`` as a supported value for the ``--remote`` option.
- ansible-test - Add a ``--docker-network`` option to choose the network for running containers when using the ``--docker`` option.
- ansible-test - Add constraint for ``decorator`` for Python versions prior to 3.5.
- ansible-test - Add support for running tests on Fedora 33 (https://github.com/ansible/ansible/pull/72861).
- ansible-test - Added Ubuntu 20.04 LTS image to the default completion list
- ansible-test - Added a ``--export`` option to the ``ansible-test coverage combine`` command to facilitate multi-stage aggregation of coverage in CI pipelines.
@ -258,9 +371,12 @@ Minor Changes
- ansible-test - The ``pylint`` sanity test is now skipped with a warning on Python 3.9 due to unresolved upstream regressions.
- ansible-test - The ``pylint`` sanity test is now supported on Python 3.8.
- ansible-test - The ``rstcheck`` sanity test is no longer used for collections, but continues to be used for ansible-core.
- ansible-test - The generated ``resource_prefix`` variable now meets the host name syntax requirements specified in RFC 1123 and RFC 952. The value used for local tests now places the random number before the hostname component, rather than after. If the resulting value is too long, it will be truncated.
- ansible-test - Ubuntu containers as well as ``default-test-container`` and ``ansible-base-test-container`` are now slightly smaller due to apt cleanup (https://github.com/ansible/distro-test-containers/pull/46).
- ansible-test - Update ``pylint`` and its dependencies to the latest available versions to support Python 3.9.
- ansible-test - Update built-in service endpoints for the ``--remote`` option.
- ansible-test - Update distribution test containers from version 2.0.1 to 2.0.2.
- ansible-test - Update the Ansible Core and Ansible Collection default test containers to 3.2.0 and 3.2.2 respectively.
- ansible-test - Updated the default test containers to version 3.1.0.
- ansible-test - Upgrade ansible-runner version used in compatibility tests, remove some tasks that were only needed with older versions, and skip in python2 because ansible-runner is soon dropping it.
- ansible-test - Use new endpoint for Parallels based instances with the ``--remote`` option.
@ -286,6 +402,7 @@ Minor Changes
- ansible-test runtime-metadata - validate removal version numbers, and check removal dates more strictly (https://github.com/ansible/ansible/pull/71679).
- ansible-test validate-modules - ensure that removal collection version numbers and version_added collection version numbers conform to the semantic versioning specification at https://semver.org/ (https://github.com/ansible/ansible/pull/71679).
- ansible-test validate-modules - no longer assume that ``default`` for ``type=bool`` options is ``false``, as the default is ``none`` and for some modules, ``none`` and ``false`` mean different things (https://github.com/ansible/ansible/issues/69561).
- ansible-test validate-modules - option names that seem to indicate they contain secret information that should be marked ``no_log=True`` are now flagged in the validate-modules sanity test. False positives can be marked by explicitly setting ``no_log=False`` for these options in the argument spec. Please note that many false positives are expected; the assumption is that it is by far better to have false positives than false negatives (https://github.com/ansible/ansible/pull/73508).
- ansible-test validate-modules - validate removal version numbers (https://github.com/ansible/ansible/pull/71679).
- ansible.utils.encrypt now returns `AnsibleError` instead of crypt.crypt's `OSError` on Python 3.9
- apt - module now works under any supported Python interpreter
@ -303,6 +420,7 @@ Minor Changes
- default callback - task name is now shown for ``include_tasks`` when using the ``free`` strategy (https://github.com/ansible/ansible/issues/71277).
- default callback - task name is now shown for ``include_tasks`` when using the ``linear`` strategy with ``ANSIBLE_DISPLAY_SKIPPED_HOSTS=0``.
- default_callback - moving 'check_mode_markers' documentation in default_callback doc_fragment (https://github.com/ansible-collections/community.general/issues/565).
- distribution - add facts about Amazon Linux Distribution facts (https://github.com/ansible/ansible/issues/73742).
- distribution - add support for DragonFly distribution (https://github.com/ansible/ansible/issues/43739).
- distribution - added distribution fact and hostname support for Parrot OS (https://github.com/ansible/ansible/pull/69158).
- distribution - handle NetBSD OS Family (https://github.com/ansible/ansible/issues/43739).
@ -328,6 +446,7 @@ Minor Changes
- lineinfile - add search_string parameter for non-regexp searching (https://github.com/ansible/ansible/issues/70470)
- linux facts - Add additional check to ensure 'container' virtual fact gets added to guest_tech when appropriate (https://github.com/ansible/ansible/pull/71385)
- meta - now include a ``skip_reason`` when skipped (https://github.com/ansible/ansible/pull/71355).
- module payload builder - module_utils imports in any nested block (eg, ``try``, ``if``) are treated as optional during module payload builds; this allows modules to implement runtime fallback behavior for module_utils that do not exist in older versions of Ansible.
- module_utils - ``get_file_attributes()`` now takes an optional ``include_version`` boolean parameter. When ``True`` (default), the file's version/generation number is included in the result (but requires ``lsattr -v`` to work on the target platform).
- now !unsafe works on all types of data, not just strings, even recursively for mappings and sequences.
- package_facts - module support for apt and rpm now works under any supported Python interpreter
@ -338,7 +457,9 @@ Minor Changes
- remove ``excommunicate`` debug command from AnsiballZ
- selinux - return selinux_getpolicytype facts correctly.
- service_facts - return service state information on AIX.
- service_facts - return service state information on OpenBSD.
- setup - allow list of filters (https://github.com/ansible/ansible/pull/68551).
- setup - fix distribution facts for Older Amazon Linux with ``/etc/os-release`` (https://github.com/ansible/ansible/issues/73946).
- setup.py - Declare that Python 3.9 is now supported (https://github.com/ansible/ansible/pull/72861).
- setup.py - Skip doing conflict checks for ``sdist`` and ``egg_info`` commands (https://github.com/ansible/ansible/pull/71310)
- subelements - clarify the lookup plugin documentation for parameter handling (https://github.com/ansible/ansible/issues/38182).
@ -371,7 +492,7 @@ Deprecated Features
-------------------
- Starting in 2.14, shell and command modules will no longer have the option to warn and suggest modules in lieu of commands. The ``warn`` parameter to these modules is now deprecated and defaults to ``False``. Similarly, the ``COMMAND_WARNINGS`` configuration option is also deprecated and defaults to ``False``. These will be removed and their presence will become an error in 2.14.
- apt_key - the paramater ``key`` does not have any effect, has been deprecated and will be removed in ansible-core version 2.14 (https://github.com/ansible/ansible/pull/70319).
- apt_key - the parameter ``key`` does not have any effect, has been deprecated and will be removed in ansible-core version 2.14 (https://github.com/ansible/ansible/pull/70319).
- psrp - Set the minimum version of ``pypsrp`` to ``0.4.0``.
Removed Features (previously deprecated)
@ -396,6 +517,8 @@ Security Fixes
Bugfixes
--------
- A handler defined within a role will now search handlers subdir for included tasks (issue https://github.com/ansible/ansible/issues/71222).
- ALLOW_WORLD_READABLE_TMP, switched to 'moved' message as 'deprecation' is misleading since config settings still work w/o needing change.
- ANSIBLE_COLLECTIONS_PATHS - remove deprecation so that users of Ansible 2.9 and 2.10+ can use the same var when specifying a collection path without a warning.
- Added unsafe_writes test.
- Address compat with rpmfluff-0.6 for integration tests
@ -407,6 +530,7 @@ Bugfixes
- Ansible output now uses stdout to determine column width instead of stdin
- AnsibleModule - added arg ``ignore_invalid_cwd`` to ``AnsibleModule.run_command()``, to control its behaviour when ``cwd`` is invalid. (https://github.com/ansible/ansible/pull/72390)
- Apply ``_wrap_native_text`` only for builtin filters specified in STRING_TYPE_FILTERS.
- Automatically remove async cache files for polled async tasks that have completed (issue https://github.com/ansible/ansible/issues/73206).
- Be smarter about collection paths ending with ansible_collections, emulating a-galaxy behaviour. Issue 72628
- CLI - Restore git information in version output when running from source
- Collection callbacks were ignoring options and rules for stdout and adhoc cases.
@ -415,6 +539,8 @@ Bugfixes
- ConfigManager - Normalize ConfigParser between Python2 and Python3 to for handling comments (https://github.com/ansible/ansible/issues/73709)
- Continue execution when 'flatten' filter when it hits a None/null value as part of the list.
- Correct the inventory source error parse handling, specifically make the config INVENTORY_ANY_UNPARSED_IS_FAILED work as expected.
- Correctly set template_path and template_fullpath for usage in template lookup and action plugins.
- Deal with failures when sorting JSON and you have incompatible key types.
- Display - Use wcswidth to calculate printable width of a text string (https://github.com/ansible/ansible/issues/63105)
- Enabled unsafe_writes for get_url which was ignoring the paramter.
- Ensure Ansible's unique filter preserves order (https://github.com/ansible/ansible/issues/63417)
@ -425,6 +551,7 @@ Bugfixes
- Fix --list-tasks format `role_name : task_name` when task name contains the role name. (https://github.com/ansible/ansible/issues/72505)
- Fix ``RecursionError`` when templating large vars structures (https://github.com/ansible/ansible/issues/71920)
- Fix ``delegate_facts: true`` when ``ansible_python_interpreter`` is not set. (https://github.com/ansible/ansible/issues/70168)
- Fix adding unrelated candidate names to the plugin loader redirect list.
- Fix an exit code for a non-failing playbook (https://github.com/ansible/ansible/issues/71306)
- Fix ansible-galaxy collection list to show collections in site-packages (https://github.com/ansible/ansible/issues/70147)
- Fix bytestring vs string comparison in module_utils.basic.is_special_selinux_path() so that special-cased filesystems which don't support SELinux context attributes still allow files to be manipulated on them. (https://github.com/ansible/ansible/issues/70244)
@ -451,6 +578,7 @@ Bugfixes
- InventoryManager - Fix unhandled exception when inventory directory was empty or contained empty subdirectories (https://github.com/ansible/ansible/issues/73658).
- JSON Encoder - Ensure we treat single vault encrypted values as strings (https://github.com/ansible/ansible/issues/70784)
- Lookup user by UID in password database if login name is not found (https://github.com/ansible/ansible/issues/17029)
- OpenBSD module_utils - update sysctl variable name
- Pass expression in angle-bracket notation as filename argument to a ``compile()`` built-in function, so that Python debuggers do not try to parse it as filename.
- Pass the connection's timeout to connection plugins instead of the task's timeout.
- Provide more information in AnsibleUndefinedVariable (https://github.com/ansible/ansible/issues/55152)
@ -461,9 +589,11 @@ Bugfixes
- Restored unsafe_writes functionality which was being skipped.
- Restructured pipelining settings to be at the connection plugins leaving base config as global and for backwards compatiblity.
- SSH plugin - Improve error message when ssh client is not found on the host
- Setup virtualization_facts - add RHV and oVirt type. This change will fully work for VMs in clusters at cluster level 4.4 or newer (https://github.com/ansible/ansible/pull/72876).
- Skip invalid collection names when listing in ansible-doc instead of throwing exception. Issue#72257
- Skip literal_eval for string filters results in native jinja. (https://github.com/ansible/ansible/issues/70831)
- Stop adding the connection variables to the output results
- Strategy - When building the task in the Strategy from the Worker, ensure it is properly marked as finalized and squashed. Addresses an issue with ``ansible_failed_task``. (https://github.com/ansible/ansible/issues/57399)
- Suppress warning when user directory used in --playbook-dir option with ansible-inventory command (https://github.com/ansible/ansible/issues/65262).
- TOML inventory - Ensure we register dump functions for ``AnsibleUnsafe`` to support dumping unsafe values. Note that the TOML format has no functionality to mark that the data is unsafe for re-consumption. (https://github.com/ansible/ansible/issues/71307)
- Terminal plugins - add "\e[m" to the list of ANSI sequences stripped from device output
@ -471,9 +601,13 @@ Bugfixes
- The ``flush()`` method of ``CachePluginAdjudicator`` now calls the plugin's ``flush()`` method instead of iterating over the keys that the adjudicator knows about and deleting those from the cache. (https://github.com/ansible/ansible/issues/68770)
- The `ansible_become` value was not being treated as a boolean value when set in an INI format inventory file (fixes bug https://github.com/ansible/ansible/issues/70476).
- The machine-readable changelog ``changelogs/changelog.yaml`` is now contained in the release.
- Try to avoid kernel 'blocking' state on reading files while fact gathering.
- Updated docs and added warning on max_fail_percentage and free strategy usage. fixes issue 16666.
- VariableManager - Add the 'vars' key before getting delegated variables (https://github.com/ansible/ansible/issues/71092).
- Vault - Allow single vault encrypted values to be used directly as module parameters. (https://github.com/ansible/ansible/issues/68275)
- WorkerProcess - Implement workaround for stdout deadlock in multiprocessing shutdown to avoid process hangs.
- WorkerProcess - Python 3.5 fix for workaround for stdout deadlock in multiprocessing shutdown to avoid process hangs. (https://github.com/ansible/ansible/issues/74149)
- [set_fact] Corrected and expanded documentation as well as now raise errors that were previously ignored.
- account for bug in Python 2.6 that occurs during interpreter shutdown to avoid stack trace
- action plugins - change all action/module delegations to use FQ names while allowing overrides (https://github.com/ansible/ansible/issues/69788)
- add AlmaLinux to fact gathering (https://github.com/ansible/ansible/pull/73458)
@ -502,7 +636,9 @@ Bugfixes
- ansible-galaxy collection download - fix downloading tar.gz files and collections in git repositories (https://github.com/ansible/ansible/issues/70429)
- ansible-galaxy collection install - fix fallback mechanism if the AH server did not have the collection requested - https://github.com/ansible/ansible/issues/70940
- ansible-galaxy download - fix bug when downloading a collection in a SCM subdirectory
- ansible-pull - Run all playbooks that when multiple are supplied via the command line (https://github.com/ansible/ansible/issues/72708)
- ansible-test - Add ``pytest < 6.0.0`` constraint for managed installations on Python 3.x to avoid issues with relative imports.
- ansible-test - Add a ``six < 1.14.0`` constraint for Python 2.6.
- ansible-test - Always connect additional Docker containers to the network used by the current container (if any).
- ansible-test - Always map ``/var/run/docker.sock`` into test containers created by the ``--docker`` option if the docker host is not ``localhost``.
- ansible-test - Attempt to detect the Docker hostname instead of assuming ``localhost``.
@ -518,10 +654,12 @@ Bugfixes
- ansible-test - Skip installing requirements if they are already installed.
- ansible-test - Symbolic links are no longer used to inject ``python`` into the environment, since they do not work reliably in all cases. Instead, the existing Python based exec wrapper is always used.
- ansible-test - Temporarily limit ``cryptography`` to versions before 3.4 to enable tests to function.
- ansible-test - The ``--export`` option for ``ansible-test coverage`` is now limited to the ``combine`` command. It was previously available for reporting commands on which it had no effect.
- ansible-test - The ``--raw`` option for ``ansible-test shell --remote`` now uses ``sh`` for the shell instead of ``bash``, which may not be present.
- ansible-test - The ``--remote`` option has been updated for Python 2.7 to work around breaking changes in the newly released ``get-pip.py`` bootstrapper.
- ansible-test - The ``--remote`` option has been updated to use a versioned ``get-pip.py`` bootstrapper to avoid issues with future releases.
- ansible-test - The ``ansible-doc`` sanity test now works for ``netconf`` plugins.
- ansible-test - The ``ansible-test coverage combine`` option ``--export`` now exports relative paths. This avoids loss of coverage data when aggregating across systems with different absolute paths. Paths will be converted back to absolute when generating reports.
- ansible-test - The ``changelog`` sanity test has been updated to ensure ``rstcheck`` does not load the ``sphinx`` module.
- ansible-test - The ``cs`` and ``openshift`` test plugins now search for containers on the current network instead of assuming the ``bridge`` network.
- ansible-test - The ``resource_prefix`` variable provided to tests running on Azure Pipelines is now converted to lowercase to match other CI providers.
@ -530,6 +668,8 @@ Bugfixes
- ansible-test - ``cryptography`` is now limited to versions prior to 3.2 only when an incompatible OpenSSL version (earlier than 1.1.0) is detected
- ansible-test - add constraint for ``cffi`` to prevent failure on systems with older versions of ``gcc`` (https://foss.heptapod.net/pypy/cffi/-/issues/480)
- ansible-test - convert target paths to unicode on Python 2 to avoid ``UnicodeDecodeError`` (https://github.com/ansible/ansible/issues/68398, https://github.com/ansible/ansible/pull/72623).
- ansible-test - ensure the correct unit test target is given when the ``__init__.py`` file is modified inside the connection plugins directory
- ansible-test - ensure unit test paths for connection and inventory plugins are correctly identified for collections (https://github.com/ansible/ansible/issues/73876).
- ansible-test - improve classification of changes to ``.gitignore``, ``COPYING``, ``LICENSE``, ``Makefile``, and all files ending with one of ``.in`, ``.md`, ``.rst``, ``.toml``, ``.txt`` in the collection root directory (https://github.com/ansible/ansible/pull/72353).
- ansible-test - integration and unit test change detection now works for filter, lookup and test plugins
- ansible-test now always uses the ``--python`` option for ``virtualenv`` to select the correct interpreter when creating environments with the ``--venv`` option
@ -541,9 +681,11 @@ Bugfixes
- ansible_pkg_mgr fact - now correctly returns ``atomic_container`` when run on "RHEL for Edge" images and Fedora/RHEL/CentOS Atomic Host (https://github.com/ansible/ansible/issues/73084).
- api - time.clock is removed in Python 3.8, add backward compatible code (https://github.com/ansible/ansible/issues/70649).
- apt - add ``fail_on_autoremove`` param to apt module to avoid unintended package removals (https://github.com/ansible/ansible/issues/63231)
- apt - fix policy_rc_d parameter throwing an exception when restoring original file (https://github.com/ansible/ansible/issues/66211)
- apt - include exception message from apt python library in error output
- apt_key - Specifying ``file`` as mutually exclusive with ``data``, ``keyserver``, ``url`` (https://github.com/ansible/ansible/pull/70492).
- apt_repository - fixes ``mode`` doc to remove ineffective default (https://github.com/ansible/ansible/pull/70319).
- argument spec validation - fix behavior of ``apply_defaults=True`` when an empty dictionary is specified for such an option (https://github.com/ansible/ansible/pull/74029).
- assemble - fix decrypt argument in the module (https://github.com/ansible/ansible/issues/65450).
- async - Fix Python 3 interpreter parsing from module by comparing with bytes (https://github.com/ansible/ansible/issues/70690)
- async_wrapper - Fix race condition when ``~/.ansible_async`` folder tries to be created by multiple async tasks at the same time - https://github.com/ansible/ansible/issues/59306
@ -556,8 +698,11 @@ Bugfixes
- clarified changed status to reflect existing rule that had never been written down.
- collection loader - fix bogus code coverage entries for synthetic packages
- collection metadata - ensure collection loader uses libyaml/CSafeLoader to parse collection metadata if available
- connection/ssh, ensure parameters come from correct source get_option, so functionality matches docs.
- connection/ssh, fix reset to use same parameters to check if socket exists as actually used, was hardcoded to default string construction previouslly.
- cron - cron file should not be empty after adding var (https://github.com/ansible/ansible/pull/71207)
- cron - encode and decode crontab files in UTF-8 explicitly to allow non-ascii chars in cron filepath and job (https://github.com/ansible/ansible/issues/69492)
- debug action, prevent setting facts when displaying ansible_facts.
- default callback - Ensure that the ``host_pinned`` strategy is not treated as lockstep (https://github.com/ansible/ansible/issues/73364)
- delegate_to - Ensure that calculating ``delegate_to`` vars with a loop uses the correct context to correctly evaluate the loop (https://github.com/ansible/ansible/issues/37132)
- display correct error information when an error exists in the last line of the file (https://github.com/ansible/ansible/issues/16456)
@ -578,6 +723,7 @@ Bugfixes
- file - the module should warn in check_mode when path an owner/group don't exist (https://github.com/ansible/ansible/issues/67307).
- find module - Don't treat empty excludes as a match (https://github.com/ansible/ansible/issues/70640)
- find module - Stop traversing directories past the requested depth. (https://github.com/ansible/ansible/issues/73627)
- find module, fix default pattern when use_regex is true.
- fix issue with inventory_hostname and delegated host vars mixing on connection settings.
- fortimanager httpapi plugin - fix redirect to point to the ``fortinet.fortimanager`` collection (https://github.com/ansible/ansible/pull/71073).
- galaxy - handle plus sign in user token appearing in role url (https://github.com/ansible/ansible/issues/45475).
@ -595,15 +741,18 @@ Bugfixes
- inventory plugins - Let plugins define the sanitization method for the constructed ``groups`` feature.
- inventory_hostnames - Use ``InventoryManager`` instead of trying to replicate its behavior (https://github.com/ansible/ansible/issues/17268)
- is_string/vault - Ensure the is_string helper properly identifies AnsibleVaultEncryptedUnicode as a string (https://github.com/ansible/ansible/pull/71609)
- j2 plugin loader clarified comments, made note with better fqcn detection.
- lineinfile - fix not subscriptable error in exception handling around file creation
- linux network facts - get the correct value for broadcast address (https://github.com/ansible/ansible/issues/64384)
- native jinja2 types - properly handle Undefined in nested data.
- notify keyword is not ignored anymore on import_tasks, also able to apply to blocks now.
- package - use list of built in package managers from facts rather than creating a new list
- paramiko connection plugin - Ensure we only reset the connection when one has been previously established (https://github.com/ansible/ansible/issues/65812)
- password hashing - Ensure we validate salts against allowed characters and length when using ``crypt`` (https://github.com/ansible/ansible/issues/71107)
- password lookup - Try to automatically generate salts using known salt sizes (https://github.com/ansible/ansible/issues/53750)
- pause - Fix indefinite hang when using a pause task on a background process (https://github.com/ansible/ansible/issues/32142)
- pause - catch additional error on setting up curses (https://github.com/ansible/ansible/pull/73588).
- pause - do not accept enter to continue when a timeout is set (https://github.com/ansible/ansible/issues/73948)
- pause - do not warn when running in the background if a timeout is provided (https://github.com/ansible/ansible/issues/73042)
- pause - handle exception when there is no stdout (https://github.com/ansible/ansible/pull/47851)
- powershell - fix escaping of strings that broken modules like fetch when dealing with special chars - https://github.com/ansible/ansible/issues/62781
@ -616,15 +765,19 @@ Bugfixes
- remove contradictory recomendation from template docs. https://github.com/ansible/ansible/issues/63484
- remove redundant remote_user setting in play_context for local as plugin already does it, also removes fork/thread issue from use of pwd library.
- reset logging level to INFO due to CVE-2019-14846.
- restrict module valid JSON parsed output to objects as lists are not valid responses.
- runas - create a new token when running as ``SYSTEM`` to ensure it has the full privileges assigned to that account
- service - Fix for the BSD rcconf code using a Python 2 specific string replace function
- set_mode_if_different - handle symlink if it is inside a directory with sticky bit set (https://github.com/ansible/ansible/pull/45198)
- setup module, fix error handling on bad subset given
- setup, don't give up on all local facts gathering if one script file fails.
- several fixes to make apt_key better at identifying needs for change and also to avoid changes in check_mode.
- shell - fix quoting of mkdir command in creation of remote_tmp in order to allow spaces and other special characters (https://github.com/ansible/ansible/issues/69577).
- splunk httpapi plugin - switch from splunk.enterprise_security to splunk.es in runtime.yml to reflect upstream change of Collection Name
- ssh connection plugin - use ``get_option()`` rather than ``_play_context`` to ensure ``ANSBILE_SSH_ARGS`` are applied properly (https://github.com/ansible/ansible/issues/70437)
- stat - handle colons in filename while parsing the mimetype output (https://github.com/ansible/ansible/issues/70256).
- strftime filter - Input epoch is allowed to be a float (https://github.com/ansible/ansible/issues/71257)
- su become plugin, ensure correct type for localization option.
- systemd - account for templated unit files using ``@`` when searching for the unit file (https://github.com/ansible/ansible/pull/72347#issuecomment-730626228)
- systemd - fixed chroot usage on new versions of systemd, that broke because of upstream changes in systemctl output
- systemd - follow up fix to https://github.com/ansible/ansible/issues/72338 to use ``list-unit-files`` rather than ``list-units`` in order to show all units files on the system.
@ -650,6 +803,7 @@ Bugfixes
- vault - Support reading raw binary data from stdin under python3
- virtual facts - kubevirt is now identified as "KubeVirt" and with a "guest" role instead of "kvm" and "host" role (https://github.com/ansible/ansible/issues/72001).
- wait_for - catch and ignore errors when getting active connections with psutil (https://github.com/ansible/ansible/issues/72322)
- wait_for module, move missing socket into function to get proper comparrison in time.
- win setup - Fix redirection path for the windows setup module
- windows async - use full path when calling PowerShell to reduce reliance on environment vars being correct - https://github.com/ansible/ansible/issues/70655
- winrm - preserve winrm forensic data on put_file failures

View File

@ -1,5 +1,32 @@
ancestor: 2.10.0
releases:
2.11.0:
changes:
bugfixes:
- ansible-test - ensure the correct unit test target is given when the ``__init__.py``
file is modified inside the connection plugins directory
major_changes:
- ansible-test - Tests run with the ``centos6`` and ``default`` test containers
now use a PyPI proxy container to access PyPI when Python 2.6 is used. This
allows tests running under Python 2.6 to continue functioning even though
PyPI is discontinuing support for non-SNI capable clients.
minor_changes:
- ansible-test - Update distribution test containers from version 2.0.1 to 2.0.2.
- ansible-test - Update the Ansible Core and Ansible Collection default test
containers to 3.2.0 and 3.2.2 respectively.
release_summary: '| Release Date: 2021-04-26
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- ansible-test-connection-units-init.yml
- ansible-test-default-containers-3.2.yml
- ansible-test-distro-containers-2.0.2.yml
- ansible-test-pypi-test-container.yml
- v2.11.0_summary.yaml
release_date: '2021-04-26'
2.11.0b1:
changes:
breaking_changes:
@ -509,7 +536,7 @@ releases:
``COMMAND_WARNINGS`` configuration option is also deprecated and defaults
to ``False``. These will be removed and their presence will become an error
in 2.14.
- apt_key - the paramater ``key`` does not have any effect, has been deprecated
- apt_key - the parameter ``key`` does not have any effect, has been deprecated
and will be removed in ansible-core version 2.14 (https://github.com/ansible/ansible/pull/70319).
- psrp - Set the minimum version of ``pypsrp`` to ``0.4.0``.
known_issues:
@ -1586,3 +1613,434 @@ releases:
- v2.11.0b4_summary.yaml
- wait_for_fix.yml
release_date: '2021-03-29'
2.11.0rc1:
changes:
bugfixes:
- OpenBSD module_utils - update sysctl variable name
- WorkerProcess - Implement workaround for stdout deadlock in multiprocessing
shutdown to avoid process hangs.
- ansible-test - Add a ``six < 1.14.0`` constraint for Python 2.6.
- ansible-test - The ``--export`` option for ``ansible-test coverage`` is now
limited to the ``combine`` command. It was previously available for reporting
commands on which it had no effect.
- ansible-test - The ``ansible-test coverage combine`` option ``--export`` now
exports relative paths. This avoids loss of coverage data when aggregating
across systems with different absolute paths. Paths will be converted back
to absolute when generating reports.
- debug action, prevent setting facts when displaying ansible_facts.
minor_changes:
- ansible-test - Add constraint for ``decorator`` for Python versions prior
to 3.5.
- service_facts - return service state information on OpenBSD.
release_summary: '| Release Date: 2021-04-05
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- ansible-test-decorator-constraint.yml
- ansible-test-fix-coverage-export.yml
- ansible-test-six.yml
- debug_dont_set_facts.yml
- openbsd-service.yml
- openbsd-sysutil.yml
- v2.11.0rc1_summary.yaml
- workerprocess-stdout-deadlock.yml
release_date: '2021-04-05'
2.11.0rc2:
changes:
bugfixes:
- WorkerProcess - Python 3.5 fix for workaround for stdout deadlock in multiprocessing
shutdown to avoid process hangs. (https://github.com/ansible/ansible/issues/74149)
release_summary: '| Release Date: 2021-04-06
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- fix-for-workerprocess-stdout-deadlock-fix.yml
- v2.11.0rc2_summary.yaml
release_date: '2021-04-06'
2.11.1:
changes:
release_summary: '| Release Date: 2021-05-24
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- v2.11.1_summary.yaml
release_date: '2021-05-24'
2.11.1rc1:
changes:
bugfixes:
- Add RockyLinux to fact gathering (https://github.com/ansible/ansible/pull/74530).
- Improve resilience of ``ansible-galaxy collection`` by increasing the page
size to make fewer requests overall and retrying queries with a jittered exponential
backoff when rate limiting HTTP codes (520 and 429) occur. (https://github.com/ansible/ansible/issues/74191)
- Prevent ``ansible_failed_task`` from further templating (https://github.com/ansible/ansible/issues/74036)
- Remove 'default' from ssh plugin as we want to rely on default from ssh itself
or ssh/config.
- The error message about the failure to import a ``gpg`` key by the ``apt_key``
module was incorrect (https://github.com/ansible/ansible/issues/74423).
- ansible-test - Avoid publishing the port used by the ``pypi-test-container``
since it is only accessed by other containers. This avoids issues when trying
to run tests in parallel on a single host.
- ansible-test - Fix docker container IP address detection. The ``bridge`` network
is no longer assumed to be the default.
- ansible-test - Use documented API to retrieve build information from Azure
Pipelines.
- ansible.builtin.cron - Keep non-empty crontabs, when removing cron jobs (https://github.com/ansible/ansible/pull/74497).
- ansible.utils.encrypt now handles missing or unusable 'crypt' library.
- ansible_test - add constraint for ``MarkupSafe`` (https://github.com/ansible/ansible/pull/74666)
- apt_key - Binary GnuPG keys downloaded via URLs were corrupted so GnuPG could
not import them (https://github.com/ansible/ansible/issues/74424).
- become - fix a regression on Solaris where chmod can return 5 which we interpret
as auth failure and stop trying become tmpdir permission fallbacks
- become - work around setfacl not existing on modern Solaris (and possibly
failing on some filesystems even when it does exist)
- callback default, now uses task delegate_to instead of delegate vars to display
delegate to host
- callbacks, restores missing delegate_vars
- correct doc links for become on warnings over world readable settings.
- correctly use world readable setting since old constant is not 'settable'
anymore.
- facts - detect homebrew installed at /opt/homebrew/bin/brew
- filter plugins - patch new versions of Jinja2 to prevent warnings/errors on
renamed filter decorators (https://github.com/ansible/ansible/issues/74667)
- get_url - Fixed checksum validation for binary files (leading asterisk) in
checksum files (https://github.com/ansible/ansible/pull/74502).
- hostname - Add Rocky Linux support
- ini lookup - handle errors for duplicate keys and missing sections (https://github.com/ansible/ansible/issues/74601)
- interpreter discovery - Debian 8 and lower will avoid unsupported Python3
version in interpreter discovery
- pause - ensure control characters are always set to an appropriate value (https://github.com/ansible/ansible/issues/73264)
- playbook loaded from collection subdir now does not ignore subdirs.
- plugin config now allows list type options to have multiple valid choices
(#74225).
- replace - better handling of file operation exceptions (https://github.com/ansible/ansible/pull/74686).
- roles - allow for role arg specs in new meta file (https://github.com/ansible/ansible/issues/74525).
- service - compare version without LooseVersion API (https://github.com/ansible/ansible/issues/74488).
minor_changes:
- ansible adhoc, clarified the help to some options, also added some comments
to code.
- command - update the user warning message to point out command name (https://github.com/ansible/ansible/pull/74475).
release_summary: '| Release Date: 2021-05-17
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- 73264-pause-emacs.yml
- 73887.mac-m1-homebrew.yaml
- 74036-unsafe-ansible_failed_task.yml
- 74240-ansible-galaxy-increase-pagesize-and-handle-throttling.yml
- 74474-apt_key-gpg-binary-import.yaml
- 74476-apt_key-gpg-inline-data.yaml
- 74488_solaris_looseversion.yml
- 74497-keep-non-empty-crontabs.yml
- 74502-get_url-filx-checksum-binary.yml
- 74582-role-argspec-new-file.yml
- 74601-ini-lookup-handle-errors.yml
- 74686-replace-handle-file-exc.yml
- adhoc_help_clarify.yml
- allow_lists_of_config_choices.yml
- ansible-test-azp-build-api.yml
- ansible-test-docker-network-detect.yml
- ansible-test-markupsafe-constraint.yml
- ansible-test-pypi-container-no-publish.yml
- cmd_wording.yml
- coll_pb_subdir_fixes.yml
- crypt_missing.yml
- debian8_discovery.yml
- jinja2_decorator_renames.yml
- macos-solaris-regression.yml
- missing_delegate_vars.yml
- solaris-setfacl-chmod-fallback.yml
- ssh_port_default_fix.yml
- support_rocky_linux_hostname.yml
- support_rockylinux.yml
- v2.11.1rc1_summary.yaml
- world_readable_fixes.yml
release_date: '2021-05-17'
2.11.2:
changes:
release_summary: '| Release Date: 2021-06-22
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- v2.11.2_summary.yaml
release_date: '2021-06-22'
2.11.2rc1:
changes:
bugfixes:
- AnsibleModule.set_mode_if_different - don't check file existence when check_mode
is activated (https://github.com/ansible/ansible/issues/61185).
- Apply ``display_failed_stderr`` callback option on loop item results. (https://github.com/ansible/ansible/issues/74864)
- Avoid task executor from ending early as vars can come from delegated to host.
- ansible-pull - update documentation for ``--directory`` option to clarify
path must be absolute.
- config, ensure 'quoted' lists from ini or env do not take the quotes literally
as part of the list item.
- gather_facts, package, service - fix using module_defaults for the modules
in addition to the action plugins. (https://github.com/ansible/ansible/issues/72918)
- psrp - Always cleanup the last run pipeline if a second pipeline is invoked
to avoid violating any resource limits.
- psrp - Fix error when resetting a connection that was initialised but not
connected - (https://github.com/ansible/ansible/issues/74092).
- psrp - Try to clean up any server-side resources when resetting a connection.
- roles - make sure argspec validation task is tagged with ``always`` (https://github.com/ansible/ansible/pull/74994).
- slurp - Fix error messages for unreadable files and directories (https://github.com/ansible/ansible/issues/67340).
- slurp - handle error when ``path`` is a directory and not a file (https://github.com/ansible/ansible/pull/74930).
- ssh connection - fix interaction between transfer settings options.
- subversion - fix stack trace when getting information about the repository
(https://github.com/ansible/ansible/issues/36498)
- version test - improve error message when an empty version is provided
release_summary: '| Release Date: 2021-06-14
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
security_fixes:
- templating engine fix for not preserving usnafe status when trying to preserve
newlines. CVE-2021-3583
codename: Hey Hey, What Can I Do
fragments:
- 36498-subversion-fix-info-parsing.yml
- 61185-basic.py-fix-check_mode.yaml
- 67340-slurp_error_message.yml
- 73864-action-plugin-module-defaults.yml
- 74864-display_failed_stderr-per-item.yml
- ansible-pull-doc-update.yml
- config_lists_unquote.yml
- delegate_te_fix.yml
- fix_scp_ssh_settings.yml
- fix_unsafe_newline.yml
- psrp-cleanup.yml
- psrp-reset.yml
- role_argspec_tagged_always.yml
- slurp-handle-error-with-dir.yml
- v2.11.2rc1_summary.yaml
- version_compare-error-on-empty.yml
release_date: '2021-06-14'
2.11.3:
changes:
release_summary: '| Release Date: 2021-07-19
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- v2.11.3_summary.yaml
release_date: '2021-07-19'
2.11.3rc1:
changes:
bugfixes:
- Add unicode support to ``ansible-inventory`` CLI (https://github.com/ansible/ansible/issues/57378)
- Ensure we get full path for extra vars into cliargs to avoid realpath issues
after initial load.
- ansible-doc - in text output, do not show empty ``version_added_collection``
values (https://github.com/ansible/ansible/pull/74999).
- ansible-test - restrict ``packaging`` to ``< 21.0`` for Python ``< 3.6`` (https://github.com/ansible/ansible/pull/75186).
- command - remove unreachable code path when trying to convert the value for
``chdir`` to bytes (https://github.com/ansible/ansible/pull/75036)
- module_common - handle exception when multiple workers try to create the cache
directory
- roles - make sure argspec validation task templates suboptions (https://github.com/ansible/ansible/issues/75070).
- slurp - improve the logic in the error handling and remove ``os.stat()`` call
(https://github.com/ansible/ansible/pull/75038)
- ssh_connection - rename ``retries`` to ``reconnection_retries`` to avoid conflicts
with task vars (https://github.com/ansible/ansible/issues/75142).
- ssh_connection - set the default for ``reconnection_retries`` back to ``0``
(https://github.com/ansible/ansible/issues/75142).
- task_executor/ssh_connection - use the ``retries`` value from ``ssh_connection``
settings, not the default from the ``Task`` field attributes (https://github.com/ansible/ansible/issues/75142).
minor_changes:
- ansible-test - aws creates and exposes a new tiny_prefix variable to provide
a shorter prefix for the AWS tests.
release_summary: '| Release Date: 2021-07-13
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- 57378-inventory-cli-unicode.yml
- 74999-ansible-doc-version_added_collection.yml
- 75073-role-argspec-suboption-variables.yaml
- 75142-ssh-retries-collision.yml
- 75186-ansible-test-packaging-constraint.yml
- aws_tiny_prefix.yaml
- command-remove-unreachable-code.yml
- concurrency-cache-dir-collision.yml
- extra_vars_unfrack.yml
- slurp-improve-error-handling-readability.yml
- v2.11.3rc1_summary.yaml
release_date: '2021-07-13'
2.11.4:
changes:
release_summary: '| Release Date: 2021-08-16
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- v2.11.4_summary.yaml
release_date: '2021-08-16'
2.11.4rc1:
changes:
bugfixes:
- Fix ``when`` evaluation on Native Jinja and Python 3.10.
- Jinja2 globals should be accessible even when importing a template without
the context (https://github.com/ansible/ansible/issues/75371)
- ansible-test - add packaging python module to ``ansible-doc`` sanity test
requirements.
- ansible-test validate-modules - correctly validate positional parameters to
``AnsibleModules`` (https://github.com/ansible/ansible/pull/75332).
- cli defaults for ssh args set to None as '' was bypassing normal default.
- dnf module - Use all components of a package name to determine if it's installed
(https://github.com/ansible/ansible/issues/75311).
- do not trigger interpreter discovery in the forced_local module path as they
should use the ansible playbook python unless otherwise configured.
- find action, correctly convert path to text when warning about skiping.
- remote tmpdir permissions - fix type error in macOS chmod ACL fallback (https://github.com/ansible/ansible/pull/74613).
- template - ensure Jinja2 overrides from template header are used (https://github.com/ansible/ansible/issues/75275)
- unarchive - move failure for missing binary to ``can_handle_archive()`` rather
than ``__init__()``
release_summary: '| Release Date: 2021-08-10
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- 74613-actionfixup_perms2_macos_remote_paths_ensure_list.yml
- 75275-ensure-jinja2-header-overrides-used.yml
- 75332-ansible-test-validate-modules-AnsibleModule-args.yml
- 75356-add-requirement-to-ansible-test.yml
- 75371-import_template_globals.yml
- find_error_fix.yml
- fix-dnf-filtering-for-installed-package-name.yml
- fix_cli_ssh_defaults.yml
- skip_local_discovery.yml
- unarchive-fix-bin-checking.yml
- v2.11.4rc1_summary.yaml
- when-eval-native-py310.yml
release_date: '2021-08-10'
2.11.5:
changes:
release_summary: '| Release Date: 2021-09-13
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- v2.11.5_summary.yaml
release_date: '2021-09-13'
2.11.5rc1:
changes:
bugfixes:
- Fix templating task action with host-specific vars (https://github.com/ansible/ansible/issues/75568)
- Since ansible/2.11 doc site was removed, the current relative messages point
to a 404 url, this fixes it by chainging the target to ansible-core/2.11
- ansible-galaxy - Fix a bug with build_ignore when installing collections from
source (https://github.com/ansible/ansible/issues/75528).
- ansible-galaxy - Improve error message from dependency resolution when a candidate
has inconsistent requirements (https://github.com/ansible/ansible/issues/75139).
- ansible-playbook, more robust handling of --list-hosts and undefined vars
in hosts keyword.
- command module, clarify order of remove/creates checks.
- command module, correctly handles chdir to symlinks.
- command module, move to standarized messages in 'msg' vs abusing 'stdout'.
- command module, now all options work in ad-hoc execution.
- command module, now always returns what we documented as 'returns always'.
- get_bin_path, clarify with quotes what the missing required executable is.
- make previous versions compatible we new attributres w/o implementing them.
- paramiko_ssh - mark connection as connected when ``_connect()`` is called
(https://github.com/ansible/ansible/issues/74081)
- setup module should now not truncate hpux interface names.
- validate_argument_spec, correct variable precedence and merge method and add
missing examples
- variable manager, avoid sourcing delegated variables when no inventory hostname
is present. This affects scenarios like syntax check and imports.
release_summary: '| Release Date: 2021-09-08
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- 74081-paramiko-mark-connected.yml
- 75235-ansible-galaxy-inconsistent-candidate-error.yml
- 75547-fix-installing-collections-from-source.yaml
- 75568-fix-templating-task-action-host-specific-vars.yml
- attributes_compat.yml
- clarify_missing_exe.yml
- command_deliver_promisses.yml
- fix_host_list.yml
- fix_relative_msg_urls.yml
- fix_syntax_check.yml
- hpux_iface_facts_length.yml
- v2.11.5rc1_summary.yaml
- vas_fixes.yml
release_date: '2021-09-08'
2.11.6:
changes:
bugfixes:
- ansible-test pslint - Fix error when encountering validation results that
are highly nested - https://github.com/ansible/ansible/issues/74151
release_summary: '| Release Date: 2021-10-11
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
codename: Hey Hey, What Can I Do
fragments:
- pslint-sanity-warning.yml
- v2.11.6_summary.yaml
release_date: '2021-10-11'
2.11.6rc1:
changes:
bugfixes:
- PowerShell - Ignore the ``LIB`` environment variable when compiling C# Ansible
code
- ansible-galaxy - Fix handling HTTP exceptions from Galaxy servers. Continue
to the next server in the list until the collection is found.
- config - use ``callbacks_enabled`` instead ``callback_enabled`` in a deprecated
message (https://github.com/ansible/ansible/issues/70028).
- netconf - catch and handle exception to prevent stack trace when running in
FIPS mode
- roles - fix unexpected ``AttributeError`` when an empty ``argument_specs.yml``
is present (https://github.com/ansible/ansible/pull/75604).
minor_changes:
- ansible-galaxy - Non-HTTP exceptions from Galaxy servers are now a warning
and only fatal if the collection to download|install|verify is not available
from any of the servers (https://github.com/ansible/ansible/issues/75443).
release_summary: '| Release Date: 2021-10-04
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__
'
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)
codename: Hey Hey, What Can I Do
fragments:
- 70028-config-small-typo-fix.yml
- 75468_fix_galaxy_server_fallback.yaml
- 75604-empty-argument-specs.yml
- avoid-set_options-leak.yaml
- fips-ncclient-import-error.yaml
- powershell-addtype-env-vars.yml
- v2.11.6rc1_summary.yaml
release_date: '2021-10-04'

View File

@ -0,0 +1,2 @@
bugfixes:
- subversion - fix stack trace when getting information about the repository (https://github.com/ansible/ansible/issues/36498)

View File

@ -0,0 +1,2 @@
bugfixes:
- Add unicode support to ``ansible-inventory`` CLI (https://github.com/ansible/ansible/issues/57378)

View File

@ -0,0 +1,2 @@
bugfixes:
- AnsibleModule.set_mode_if_different - don't check file existence when check_mode is activated (https://github.com/ansible/ansible/issues/61185).

View File

@ -0,0 +1,2 @@
bugfixes:
- "slurp - Fix error messages for unreadable files and directories (https://github.com/ansible/ansible/issues/67340)."

View File

@ -0,0 +1,2 @@
bugfixes:
- config - use ``callbacks_enabled`` instead ``callback_enabled`` in a deprecated message (https://github.com/ansible/ansible/issues/70028).

View File

@ -1,4 +1,4 @@
bugfixes:
- apt_repository - fixes ``mode`` doc to remove ineffective default (https://github.com/ansible/ansible/pull/70319).
deprecated_features:
- apt_key - the paramater ``key`` does not have any effect, has been deprecated and will be removed in ansible-core version 2.14 (https://github.com/ansible/ansible/pull/70319).
- apt_key - the parameter ``key`` does not have any effect, has been deprecated and will be removed in ansible-core version 2.14 (https://github.com/ansible/ansible/pull/70319).

View File

@ -0,0 +1,2 @@
bugfixes:
- pause - ensure control characters are always set to an appropriate value (https://github.com/ansible/ansible/issues/73264)

View File

@ -0,0 +1,2 @@
bugfixes:
- gather_facts, package, service - fix using module_defaults for the modules in addition to the action plugins. (https://github.com/ansible/ansible/issues/72918)

View File

@ -0,0 +1,3 @@
---
bugfixes:
- facts - detect homebrew installed at /opt/homebrew/bin/brew

View File

@ -0,0 +1,2 @@
bugfixes:
- Prevent ``ansible_failed_task`` from further templating (https://github.com/ansible/ansible/issues/74036)

View File

@ -0,0 +1,2 @@
bugfixes:
- paramiko_ssh - mark connection as connected when ``_connect()`` is called (https://github.com/ansible/ansible/issues/74081)

View File

@ -0,0 +1,6 @@
bugfixes:
- >-
Improve resilience of ``ansible-galaxy collection`` by increasing the page
size to make fewer requests overall and retrying queries with a jittered
exponential backoff when rate limiting HTTP codes (520 and 429) occur.
(https://github.com/ansible/ansible/issues/74191)

View File

@ -0,0 +1,2 @@
bugfixes:
- apt_key - Binary GnuPG keys downloaded via URLs were corrupted so GnuPG could not import them (https://github.com/ansible/ansible/issues/74424).

View File

@ -0,0 +1,2 @@
bugfixes:
- The error message about the failure to import a ``gpg`` key by the ``apt_key`` module was incorrect (https://github.com/ansible/ansible/issues/74423).

View File

@ -0,0 +1,2 @@
bugfixes:
- service - compare version without LooseVersion API (https://github.com/ansible/ansible/issues/74488).

View File

@ -0,0 +1,3 @@
bugfixes:
- ansible.builtin.cron - Keep non-empty crontabs, when removing cron jobs
(https://github.com/ansible/ansible/pull/74497).

View File

@ -0,0 +1,2 @@
bugfixes:
- get_url - Fixed checksum validation for binary files (leading asterisk) in checksum files (https://github.com/ansible/ansible/pull/74502).

View File

@ -0,0 +1,2 @@
bugfixes:
- roles - allow for role arg specs in new meta file (https://github.com/ansible/ansible/issues/74525).

View File

@ -0,0 +1,2 @@
bugfixes:
- ini lookup - handle errors for duplicate keys and missing sections (https://github.com/ansible/ansible/issues/74601)

View File

@ -0,0 +1,2 @@
bugfixes:
- "remote tmpdir permissions - fix type error in macOS chmod ACL fallback (https://github.com/ansible/ansible/pull/74613)."

View File

@ -0,0 +1,2 @@
bugfixes:
- replace - better handling of file operation exceptions (https://github.com/ansible/ansible/pull/74686).

View File

@ -0,0 +1,2 @@
bugfixes:
- Apply ``display_failed_stderr`` callback option on loop item results. (https://github.com/ansible/ansible/issues/74864)

View File

@ -0,0 +1,2 @@
bugfixes:
- "ansible-doc - in text output, do not show empty ``version_added_collection`` values (https://github.com/ansible/ansible/pull/74999)."

View File

@ -0,0 +1,2 @@
bugfixes:
- roles - make sure argspec validation task templates suboptions (https://github.com/ansible/ansible/issues/75070).

View File

@ -0,0 +1,7 @@
bugfixes:
- >-
task_executor/ssh_connection - use the ``retries`` value from ``ssh_connection`` settings,
not the default from the ``Task`` field attributes (https://github.com/ansible/ansible/issues/75142).
- ssh_connection - set the default for ``reconnection_retries`` back to ``0`` (https://github.com/ansible/ansible/issues/75142).
- ssh_connection - rename ``retries`` to ``reconnection_retries`` to avoid conflicts with task vars (https://github.com/ansible/ansible/issues/75142).

View File

@ -0,0 +1,2 @@
bugfixes:
- "ansible-test - restrict ``packaging`` to ``< 21.0`` for Python ``< 3.6`` (https://github.com/ansible/ansible/pull/75186)."

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-galaxy - Improve error message from dependency resolution when a candidate has inconsistent requirements (https://github.com/ansible/ansible/issues/75139).

View File

@ -0,0 +1,2 @@
bugfixes:
- template - ensure Jinja2 overrides from template header are used (https://github.com/ansible/ansible/issues/75275)

View File

@ -0,0 +1,2 @@
bugfixes:
- "ansible-test validate-modules - correctly validate positional parameters to ``AnsibleModules`` (https://github.com/ansible/ansible/pull/75332)."

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-test - add packaging python module to ``ansible-doc`` sanity test requirements.

View File

@ -0,0 +1,2 @@
bugfixes:
- Jinja2 globals should be accessible even when importing a template without the context (https://github.com/ansible/ansible/issues/75371)

View File

@ -0,0 +1,9 @@
bugfixes:
- >-
ansible-galaxy - Fix handling HTTP exceptions from Galaxy servers.
Continue to the next server in the list until the collection is found.
minor_changes:
- >-
ansible-galaxy - Non-HTTP exceptions from Galaxy servers are now a warning and only fatal if
the collection to download|install|verify is not available from any of the servers
(https://github.com/ansible/ansible/issues/75443).

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-galaxy - Fix a bug with build_ignore when installing collections from source (https://github.com/ansible/ansible/issues/75528).

View File

@ -0,0 +1,2 @@
bugfixes:
- Fix templating task action with host-specific vars (https://github.com/ansible/ansible/issues/75568)

View File

@ -0,0 +1,3 @@
---
bugfixes:
- roles - fix unexpected ``AttributeError`` when an empty ``argument_specs.yml`` is present (https://github.com/ansible/ansible/pull/75604).

View File

@ -0,0 +1,2 @@
minor_changes:
- ansible adhoc, clarified the help to some options, also added some comments to code.

View File

@ -0,0 +1,2 @@
bugfixes:
- plugin config now allows list type options to have multiple valid choices (#74225).

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-pull - update documentation for ``--directory`` option to clarify path must be absolute.

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-test - Use documented API to retrieve build information from Azure Pipelines.

View File

@ -0,0 +1,4 @@
bugfixes:
- >-
ansible-test - ensure the correct unit test target is given when the
``__init__.py`` file is modified inside the connection plugins directory

View File

@ -0,0 +1,2 @@
minor_changes:
- ansible-test - Add constraint for ``decorator`` for Python versions prior to 3.5.

View File

@ -0,0 +1,2 @@
minor_changes:
- ansible-test - Update the Ansible Core and Ansible Collection default test containers to 3.2.0 and 3.2.2 respectively.

View File

@ -0,0 +1,2 @@
minor_changes:
- ansible-test - Update distribution test containers from version 2.0.1 to 2.0.2.

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-test - Fix docker container IP address detection. The ``bridge`` network is no longer assumed to be the default.

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible_test - add constraint for ``MarkupSafe`` (https://github.com/ansible/ansible/pull/74666)

View File

@ -0,0 +1,3 @@
bugfixes:
- ansible-test - Avoid publishing the port used by the ``pypi-test-container`` since it is only accessed by other containers.
This avoids issues when trying to run tests in parallel on a single host.

View File

@ -0,0 +1,3 @@
major_changes:
- ansible-test - Tests run with the ``centos6`` and ``default`` test containers now use a PyPI proxy container to access PyPI when Python 2.6 is used.
This allows tests running under Python 2.6 to continue functioning even though PyPI is discontinuing support for non-SNI capable clients.

View File

@ -0,0 +1,2 @@
bugfixes:
- make previous versions compatible we new attributres w/o implementing them.

View File

@ -0,0 +1,5 @@
---
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)

View File

@ -0,0 +1,3 @@
---
minor_changes:
- ansible-test - aws creates and exposes a new tiny_prefix variable to provide a shorter prefix for the AWS tests.

View File

@ -0,0 +1,2 @@
bugfixes:
- get_bin_path, clarify with quotes what the missing required executable is.

View File

@ -0,0 +1,2 @@
minor_changes:
- command - update the user warning message to point out command name (https://github.com/ansible/ansible/pull/74475).

View File

@ -0,0 +1,2 @@
bugfixes:
- playbook loaded from collection subdir now does not ignore subdirs.

View File

@ -0,0 +1,2 @@
bugfixes:
- command - remove unreachable code path when trying to convert the value for ``chdir`` to bytes (https://github.com/ansible/ansible/pull/75036)

View File

@ -0,0 +1,6 @@
bugfixes:
- command module, now always returns what we documented as 'returns always'.
- command module, now all options work in ad-hoc execution.
- command module, clarify order of remove/creates checks.
- command module, correctly handles chdir to symlinks.
- command module, move to standarized messages in 'msg' vs abusing 'stdout'.

View File

@ -0,0 +1,2 @@
bugfixes:
- module_common - handle exception when multiple workers try to create the cache directory

View File

@ -0,0 +1,2 @@
bugfixes:
- config, ensure 'quoted' lists from ini or env do not take the quotes literally as part of the list item.

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible.utils.encrypt now handles missing or unusable 'crypt' library.

View File

@ -0,0 +1,2 @@
bugfixes:
- interpreter discovery - Debian 8 and lower will avoid unsupported Python3 version in interpreter discovery

View File

@ -0,0 +1,2 @@
bugfixes:
- Avoid task executor from ending early as vars can come from delegated to host.

View File

@ -0,0 +1,2 @@
bugfixes:
- Ensure we get full path for extra vars into cliargs to avoid realpath issues after initial load.

View File

@ -0,0 +1,2 @@
bugfixes:
- find action, correctly convert path to text when warning about skiping.

View File

@ -0,0 +1,2 @@
bugfixes:
- netconf - catch and handle exception to prevent stack trace when running in FIPS mode

View File

@ -0,0 +1,2 @@
bugfixes:
- dnf module - Use all components of a package name to determine if it's installed (https://github.com/ansible/ansible/issues/75311).

View File

@ -0,0 +1,2 @@
bugfixes:
- "WorkerProcess - Python 3.5 fix for workaround for stdout deadlock in multiprocessing shutdown to avoid process hangs. (https://github.com/ansible/ansible/issues/74149)"

View File

@ -0,0 +1,2 @@
bugfixes:
- cli defaults for ssh args set to None as '' was bypassing normal default.

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-playbook, more robust handling of --list-hosts and undefined vars in hosts keyword.

View File

@ -0,0 +1,2 @@
bugfixes:
- Since ansible/2.11 doc site was removed, the current relative messages point to a 404 url, this fixes it by chainging the target to ansible-core/2.11

View File

@ -0,0 +1,2 @@
bugfixes:
- ssh connection - fix interaction between transfer settings options.

View File

@ -0,0 +1,2 @@
bugfixes:
- variable manager, avoid sourcing delegated variables when no inventory hostname is present. This affects scenarios like syntax check and imports.

View File

@ -0,0 +1,2 @@
security_fixes:
- templating engine fix for not preserving usnafe status when trying to preserve newlines. CVE-2021-3583

View File

@ -0,0 +1,2 @@
bugfixes:
- setup module should now not truncate hpux interface names.

View File

@ -0,0 +1,2 @@
bugfixes:
- filter plugins - patch new versions of Jinja2 to prevent warnings/errors on renamed filter decorators (https://github.com/ansible/ansible/issues/74667)

View File

@ -0,0 +1,4 @@
bugfixes:
- >-
become - fix a regression on Solaris where chmod can return 5 which we
interpret as auth failure and stop trying become tmpdir permission fallbacks

View File

@ -0,0 +1,3 @@
bugfixes:
- callbacks, restores missing delegate_vars
- callback default, now uses task delegate_to instead of delegate vars to display delegate to host

View File

@ -0,0 +1,2 @@
bugfixes:
- PowerShell - Ignore the ``LIB`` environment variable when compiling C# Ansible code

View File

@ -0,0 +1,2 @@
bugfixes:
- ansible-test pslint - Fix error when encountering validation results that are highly nested - https://github.com/ansible/ansible/issues/74151

View File

@ -0,0 +1,2 @@
bugfixes:
- psrp - Always cleanup the last run pipeline if a second pipeline is invoked to avoid violating any resource limits.

View File

@ -0,0 +1,3 @@
bugfixes:
- psrp - Fix error when resetting a connection that was initialised but not connected - (https://github.com/ansible/ansible/issues/74092).
- psrp - Try to clean up any server-side resources when resetting a connection.

View File

@ -0,0 +1,2 @@
bugfixes:
- roles - make sure argspec validation task is tagged with ``always`` (https://github.com/ansible/ansible/pull/74994).

View File

@ -0,0 +1,2 @@
bugfixes:
- do not trigger interpreter discovery in the forced_local module path as they should use the ansible playbook python unless otherwise configured.

View File

@ -0,0 +1,2 @@
bugfixes:
- slurp - handle error when ``path`` is a directory and not a file (https://github.com/ansible/ansible/pull/74930).

View File

@ -0,0 +1,2 @@
bugfixes:
- slurp - improve the logic in the error handling and remove ``os.stat()`` call (https://github.com/ansible/ansible/pull/75038)

View File

@ -0,0 +1,2 @@
bugfixes:
- become - work around setfacl not existing on modern Solaris (and possibly failing on some filesystems even when it does exist)

View File

@ -0,0 +1,2 @@
bugfixes:
- Remove 'default' from ssh plugin as we want to rely on default from ssh itself or ssh/config.

View File

@ -0,0 +1,2 @@
bugfixes:
- hostname - Add Rocky Linux support

View File

@ -0,0 +1,2 @@
bugfixes:
- Add RockyLinux to fact gathering (https://github.com/ansible/ansible/pull/74530).

View File

@ -0,0 +1,2 @@
bugfixes:
- unarchive - move failure for missing binary to ``can_handle_archive()`` rather than ``__init__()``

View File

@ -0,0 +1,3 @@
release_summary: |
| Release Date: 2021-04-26
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__

View File

@ -0,0 +1,3 @@
release_summary: |
| Release Date: 2021-04-05
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__

View File

@ -0,0 +1,3 @@
release_summary: |
| Release Date: 2021-04-06
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__

View File

@ -0,0 +1,3 @@
release_summary: |
| Release Date: 2021-05-24
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__

View File

@ -0,0 +1,3 @@
release_summary: |
| Release Date: 2021-05-17
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__

View File

@ -0,0 +1,3 @@
release_summary: |
| Release Date: 2021-06-22
| `Porting Guide <https://docs.ansible.com/ansible/devel/porting_guides.html>`__

Some files were not shown because too many files have changed in this diff Show More