Commit Graph

3913 Commits (9b77492e96106b616f2c23e147357b323b97b265)

Author SHA1 Message Date
Felix Fontein 9b77492e96
blockinfile: do not crash when filename has no path (#81638) (#82869)
* Do not crash when filename has no path.

* Clean up file after test.

(cherry picked from commit e659c23bf2)
8 months ago
Jordan Borean daf71c51e0
winrm - Handle task timeout (#82784) (#82864)
When using winrm over HTTP with message encryption enabled and a task
has timed out the connection plugin will fail to cleanup the WinRM
command. This will change that exception into a warning as a timeout is
already an exception event and a failure to clean the operation should
not override the timeout error shown.

(cherry picked from commit 8aecd1f9b2)
8 months ago
Brian Coca f8162c19a2
centralize and complete the internal static vars (#82872) (#82925)
* centralize and complete the internal static vars

These vars are internal and should not be overridden nor templated
from inventory nor hostvars.

(cherry picked from commit 8704b9fc29)
8 months ago
Sloane Hertel 85697beee0
fix handling allow_duplicates with the role cache (#82691) (#82927)
allow_duplicates is not part of the role uniqueness, so the value on the cached role may not match the current role.

* remove the allow_duplicates check from Role.has_run() which operates on the deduplicated role
* check the current role's allow_duplicates value in the strategy

(cherry picked from commit b3d8cdde5d)

Co-authored-by: Martin Krizek <martin.krizek@gmail.com>
8 months ago
Sloane Hertel 6ac75a20d0
Fix traceback inheriting from NetworkConnectionBase and add integration tests (#82954) (#82956)
(cherry picked from commit 4bddbe69d5)

Co-authored-by: Jeroen van Bemmel <jvb127@gmail.com>
8 months ago
Matt Martz bdf45d1fbc
[stable-2.16] dnf: obey the keepcache setting (#82735) (#82964)
Fixes #81954
(cherry picked from commit 77ab7af)

Co-authored-by: Martin Krizek <martin.krizek@gmail.com>
8 months ago
Jordan Borean 5a3bcd4bac
fetch - add error check on calculated dest (#82970) (#82990)
Add explicit error when the calculated dest path for fetch becomes a
local directory. The existing behaviour will not be checked unlike when
the path did not end with a trailing slash.

(cherry picked from commit 179bc1dabd)
8 months ago
Matt Martz ee04df4796
New release v2.16.5 (#82907) 8 months ago
Matt Clay d469cffff5
[stable-2.16] ansible-test - Fix Alpine libexpat bootstrapping (#82896)
(cherry picked from commit ca168eb367)
9 months ago
Matt Martz a1e38ba26b
New release v2.16.5rc1 (#82839) 9 months ago
Matt Martz 4bf051486e
[stable-2.16] Harden the ansiballz and respawn python templates (#81753) (#82747)
Harden our python templates for respawn and ansiballz around str literal quoting
(cherry picked from commit 7c73855)
9 months ago
Jordan Borean 075623770d
Avoid winrm hang on stdin write failure (#82766) (#82782)
If the connection plugin fails to write the data to run to stdin we will
only attempt to get the output with one operation attempt. If this times
out we will consider the command to have failed and raise an exception
instead of forever attempting to get the output.

(cherry picked from commit 942424e10b)
9 months ago
Martin Krizek 627a92e34a
Fix error when templating an unsafe string leading to a type error in Python (#82675) (#82745)
Fixes #82600

(cherry picked from commit 79ea21a39f)

Co-authored-by: Davide Sbetti <davide.sbetti@gmail.com>
9 months ago
Martin Krizek 56f31126ad
Prevent failures due to unsafe plugin name (#82759) 9 months ago
Matt Clay b65a6cd1b2
[stable-2.16] ansible-test - Add work-around for pytest>=8 errors (#82723) (#82727)
* ansible-test - Add work-around for pytest>=8 errors
* Update changelogs/fragments/ansible-test-pytest-8.yml

(cherry picked from commit a1edb61ce7)
9 months ago
Matt Martz 9f6649cadc
New release v2.16.4 (#82746) 9 months ago
Matt Martz 8c4aa28696
New release v2.16.4rc1 (#82709) 10 months ago
Sloane Hertel 74f99dc36c
Fix ansible.builtin.include_vars - depth (#80995) (#82610)
* Changes as suggested by sivel

* Add changelog fragment and tests

Co-authored-by: Matt Martz <matt@sivel.net>
Co-authored-by: s-hertel <19572925+s-hertel@users.noreply.github.com>
(cherry picked from commit 48bed1e15a)

Co-authored-by: tachyontec <92679798+tachyontec@users.noreply.github.com>
10 months ago
Martin Krizek c93234304b
Do not ignore SyntaxError from jinja2.Environment.from_string (#82607) (#82614)
Jinja may generate an invalid Python source code from a template. Trying
to compile such source code into a Python code object results in
SyntaxError being thrown. An example of such a template is providing the
same keyword argument into a lookup twice, resulting in:
`SyntaxError: keyword argument repeated`.

Since `jinja2.exceptions.TemplateSyntaxError` does not cover such a
case, as it is not a Jinja parsing error, we need to catch SyntaxError
explicitly ourselves.

Fixes #82606

(cherry picked from commit 6d34eb88d9)
10 months ago
Sloane Hertel add76f36f5
fix loading vars_plugins in roles (#82273) (#82609)
* Fix loading legacy vars plugins when the plugin loader cache is reset

* Remove extra cache layer by ensuring vars plugin names are cached (stateless or not) so that the plugin loader cache can double as the load order

(cherry picked from commit 13e6d8487a)
10 months ago
Sloane Hertel 9a07ab72b4
[2.16] expect - fix argument spec error with timeout=null (#82522) (#82608)
* expect - fix argument spec error with timeout=null (#82522)

* Fix using timeout=null to wait indefinitely

* fix error message

(cherry picked from commit da9edd7760)

* python2-ify
10 months ago
Maxwell G 3e3c29b86e
changelog: use correct spelling for possessive pronoun its (#82594) 10 months ago
Matt Martz df6c5244ef
New release v2.16.3 (#82619) 10 months ago
Matt Martz 19e82eca02
New release v2.16.3rc1 (#82587) 11 months ago
Nilashish Chakraborty d817f5e87f
Support `action_plugin` in plugin_routing_schema (#82562) (#82581)
now validation schema matches reality

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
Co-authored-by: s-hertel <19572925+s-hertel@users.noreply.github.com>
(cherry picked from commit b01f1f207c)
11 months ago
Brian Coca 611d0e4dcf Better errors for delegate_to (#82319)
Handle empty result of templating
  Also skip work when we omit

(cherry picked from commit 6ebefaceb6)
11 months ago
Brian Coca 50736c45ba lookups, make file searching use better is_role (#82290)
* lookups, make file searching use better is_role

 The dwim function will internally try by detecting tasks/main['','.yml','.yaml]
 but this is far from optimial, the existince of role path in vars is much better
 indicator that we can use to pass a hint

* updated test to avoid main.yml

(cherry picked from commit a9919dd7f6)
11 months ago
snipfoo c3b4b3ebe3 Run all handlers with the same `listen` topic when notified from another handler (#82364)
Fixes #82363

(cherry picked from commit 8328153121)
11 months ago
Brian Coca cfa8caff39
[stable-2.16] Role fixes (#82339) (#82452)
* Role fixes (#82339)

* Various fixes to roles

  - static property is now properly set
  - role_names and other magic vars now have full list
  - role public/private var loading is now done when adding to play.roles instead of on each var query
  - added tests

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

* import_role does not get public until next version
11 months ago
Brian Coca 46d9d4b17c ansible-config dedupe ini plugin entries (#82498)
added test for ini file integrity, also ensuring no dupes

(cherry picked from commit 6c2895fd88)
11 months ago
Sloane Hertel 9252584e89
ansible-galaxy - fix exit code for failed role import (#82193) (#82412)
(cherry picked from commit fe81164fe5)
11 months ago
Sloane Hertel 16c40a03ae
[ansible-galaxy] Remove role name conversion when the repo startswith 'ansible-role' (#82508) (#82532)
* Remove role name conversion based on whether the repo name starts with
ansible-role

This was added in 2.3 to match the Galaxy ui behavior of truncating the
'ansible-role-' prefix automatically, but the new backend requires an
alternate name to be provided or defined in the ``galaxy_info``
metadata.

Roles that were imported using the ansible-role-$name convention will
need to use ``--role-name`` or add ``role_name`` to the ``galaxy_info``
dictionary in ``meta/main.yml``.

changelog

* Update changelogs/fragments/fix-default-ansible-galaxy-role-import-name.yml

* Update changelogs/fragments/fix-default-ansible-galaxy-role-import-name.yml

Co-authored-by: flowerysong <junk+github@flowerysong.com>

---------

Co-authored-by: flowerysong <junk+github@flowerysong.com>
(cherry picked from commit d7be3824fe)
11 months ago
Matt Martz b9a03bbf5a
[stable-2.16] Ensure ANSIBLE_NO_LOG is respected (CVE-2024-0690) (#82565) (#82566)
(cherry picked from commit 6935c8e)
11 months ago
Sloane Hertel a25fe10056
Targeted fix for installing roles with symlinks containing '..' (#82165) (#82323)
Set the tarfile attribute to a normalized value from unfrackpath instead
of validating path parts and omiting potentially invald parts

Allow tarfile paths/links containing '..', '$', '~' as long as the
normalized realpath is in the tarfile's role directory

(cherry picked from commit 3a42a00368)
11 months ago
Matt Martz c6a652c081
[stable-2.16] Enable directly using `AnsibleUnsafeText` with Python `pathlib` (#82510)
* Enable directly using `AnsibleUnsafeText` with Python `pathlib`. Fixes #82414
11 months ago
Matt Martz 71a1f55a34
New release v2.16.2 (#82399) 12 months ago
Matt Martz afe3fc184f
Additional Unsafe fixes (#82376)
* Allow older pickle protocols to pickle unsafe classes. Fixes #82356

* Address issues when iterating or getting single index from AnsibleUnsafeBytes. Fixes #82375

* clog frag
1 year ago
Matt Martz 6d40beeef4
New release v2.16.1 (#82346) 1 year ago
Matt Martz 5007068bfe
New release v2.16.1rc1 (#82301) 1 year ago
Matt Martz 270b39f6ff
Ensure that unsafe is more difficult to lose [stable-2.16] (#82293)
* Ensure that unsafe is more difficult to lose

* Add Task.untemplated_args, and switch assert over to use it
* Don't use re in first_found, switch to using native string methods
* If nested templating results in unsafe, just error, don't continue

* ci_complete
1 year ago
Martin Krizek f302b2f592
Allow include_tasks handlers for searching role subdirs (#82248) (#82268)
Fixes #82241

(cherry picked from commit d664f13b4a)
1 year ago
Brian Coca bb787c119d
ansible-pull: expand destinantion directoy to avoid purgin in / (#82030) (#82221)
* expand destinantion directoy to avoid purgin in /

  bad things could happen and help alone is not enough

(cherry picked from commit 8825e60add)
1 year ago
Brian Coca 8a87e1c5d3
no_log avoid masking booleans (#82217) (#82235)
* no_log avoid masking booleans (#82217)

* no_log avoid masking booleans

* clog

* fix issues

(cherry picked from commit 6e448edc63)

* unused boil is hot
1 year ago
Brian Coca fb5d254a79
wait_for, fallback to read for non mmapable files (#82064) (#82233)
* wait_for, fallback to read for non mmapable files (#82064)

* also handle oserror, added debug jic

(cherry picked from commit 8b102dca4a)

* skip problem versions
1 year ago
Martin Krizek 2f7376ce06
flush_handlers: handle a failure in a nested block with force_handlers (#81572) (#82197)
Fixes #81532

ci_complete

(cherry picked from commit a8b6ef7e7c)
1 year ago
Brian Coca 71b00cefac
restore role param precedence (#82106) (#82138)
* add test for setfact/param override

(cherry picked from commit 20a54eb236)
1 year ago
Brian Coca e13569d0e2
ansible-pull now handles all secret files CLI options (#82009) (#82070)
* ansible-pull added missing pasthrough for secrets

 Both become and connection password file options were missing.
 Also added test

(cherry picked from commit 99e0d25857)
1 year ago
Brian Coca 6cfa8ec021
Fix Jinja plugin deduplication (#82002) (#82053)
for j2 plugins dedupe on path and  not basename
for j2 this is a container file , for other plugins file name == plugin name

(cherry picked from commit b4566c18b3)
1 year ago
Matt Martz 704ee70943
New release v2.16.0 (#82141) 1 year ago
Matt Clay 31aac52a72 [stable-2.16] ansible-test - Fix parsing of cgroup entries
(cherry picked from commit e933d9d8a6)

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