Commit Graph

53760 Commits (30fa4adcdfd64f75fc145bea89bda170454659ef)
 

Author SHA1 Message Date
Sloane Hertel 30fa4adcdf
[ansible-galaxy] Remove role name conversion when the repo startswith 'ansible-role' (#82508) (#82533)
* 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)
2 years ago
Matt Martz 78db3a3de6
[stable-2.15] Ensure ANSIBLE_NO_LOG is respected (CVE-2024-0690) (#82565) (#82567)
(cherry picked from commit 6935c8e)
2 years ago
Sloane Hertel 2477059be2
Targeted fix for installing roles with symlinks containing '..' (#82165) (#82324)
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)
2 years ago
Matt Martz 0db4bb36ba
Enable directly using `AnsibleUnsafeText` with Python `pathlib` (#82510) (#82563)
* Enable directly using `AnsibleUnsafeText` with Python `pathlib`. Fixes #82414.
(cherry picked from commit c6a652c081)
2 years ago
Abhijeet Kasurde 11e50715a3 [backport-2.15] CI: remove FreeBSD 12.4 from test matrix (#81315)
Fixes: #80417

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 11e261b54f)
2 years ago
Matt Martz b7a93e586c
Update Ansible release version to v2.15.8.post0. (#82403) 2 years ago
Matt Martz ba1854271b
New release v2.15.8 (#82400) 2 years ago
Matt Martz b19cfb19c2
[stable-2.15] Additional Unsafe fixes (#82376) (#82380)
* Allow older pickle protocols to pickle unsafe classes. Fixes #82356

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

* clog frag
(cherry picked from commit afe3fc1)
2 years ago
Sviatoslav Sydorenko (Святослав Сидоренко) a79e410c51
[backport-2.15] Replace FreeBSD 13.1 with 13.2 in CI and ansible-test (#82397)
* [backport-2.15] Add FreeBSD 13.2 to ansible-test (#80698)

(cherry picked from commit d12aa7f69c)

* [backport-2.15] remove Freebsd 13.1 from test matrix (#81058)

* remove Freebsd 13.1 from test matrix

fixes #80416

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

* Revert to the original Python versions for the branch

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

---------

Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
Co-authored-by: Matt Martz <matt@sivel.net>
2 years ago
Sviatoslav Sydorenko 0474d3da62
[backport][stable-2.15] 🧪 Replace GitHub SVN integration test with local TLS (#82369)
* [backport][stable-2.15] 🧪 Replace GitHub SVN integration test with local TLS

PR #82334

* Run svn integration test locally with TLS

This patch uses a `trustme` to make an ephemeral CA, and server, and
client TLS artifacts for testing. These are integrated into the Apache
web server via it's `mod_ssl`.

Resolves #82207

* Replace GitHub SVN HTTPS URL w/ localhost over TLS

This change gets rid of the need to use GitHub, which is just about to
drop support for SVN [[1]]. Moreover, it eliminates the need to use
external network for any SVN commands in the test.

[1]: https://github.blog/2023-01-20-sunsetting-subversion-support/

(cherry picked from commit dd0138ba21)

* Implement compat w/ opensuse15, centos7 & rhel7/8
2 years ago
Matt Martz 320a39dc0f
Update Ansible release version to v2.15.7.post0. (#82350) 2 years ago
Matt Martz e5fd1dae57
New release v2.15.7 (#82347) 2 years ago
Matt Davis 4fc275aa1b
Fix various issues in unsafe_proxy (#82326) (#82331)
- Use str/bytes directly instead of text_type/binary_type
- Fix AnsibleUnsafeBytes.__str__ implementation
- Fix AnsibleUnsafeBytes.__format__ return type
- Remove invalid methods from AnsibleUnsafeBytes (casefold, format, format_map)
- Use `chars` instead of `bytes` to match stdlib naming
- Remove commented out code

(cherry picked from commit 59aa0145d2)

Co-authored-by: Matt Clay <matt@mystile.com>
2 years ago
Matt Martz 3561008c7e
[stable-2.15] Install upgraded crun from edge (#81833). (#82343)
(cherry picked from commit e78cc1e602)
2 years ago
Matt Martz 24a8d040eb
Update Ansible release version to v2.15.7rc1.post0. (#82305) 2 years ago
Matt Martz a1d85b9554
New release v2.15.7rc1 (#82302) 2 years ago
Matt Martz fea130480d
Ensure that unsafe is more difficult to lose [stable-2.15] (#82294)
* 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

(cherry picked from commit 586f1924512b01305f896d9ae4732773023013a3)

* ci_complete
2 years ago
Martin Krizek 03330f1431
flush_handlers: handle a failure in a nested block with force_handlers (#81572) (#82198)
Fixes #81532

ci_complete

(cherry picked from commit a8b6ef7e7c)
2 years ago
Matt Davis bade98dc8f
add pep668 note to pip module docs (#82096) (#82099)
(cherry picked from commit 3ea5304a57)
2 years ago
Matt Martz 7c31e6b1c0
[stable-2.15] Check if skeleton is /dev/null while creating home folder (#75948) (#82103)
* Check if skeleton is /dev/null while creating home folder

* Add test for linux



(cherry picked from commit 25b3d3a)

Co-authored-by: Holger Dörner <42909210+HolgerDoerner@users.noreply.github.com>
2 years ago
Jordan Borean a62ba401be
Remove duplicate winrm test (#82124) (#82126)
(cherry picked from commit f8a9fd4758)
2 years ago
Abhijeet Kasurde 412c6bc4f6
[bp-2.15] Fix the strategy plugin description in keywords (#82132)
Fixes: https://github.com/ansible/ansible-documentation/issues/762

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit 8ecc1d485b)
2 years ago
Brian Coca fdbdc2ae35
restore role param precedence (#82106) (#82139)
* add test for setfact/param override

(cherry picked from commit 20a54eb236)
2 years ago
Brian Coca 5623783bcf
ansible-pull: expand destinantion directoy to avoid purgin in / (#82030) (#82222)
* expand destinantion directoy to avoid purgin in /

  bad things could happen and help alone is not enough

(cherry picked from commit 8825e60add)
2 years ago
Brian Coca 23cd32e31e
wait_for, fallback to read for non mmapable files (#82064) (#82234)
* wait_for, fallback to read for non mmapable files (#82064)

(cherry picked from commit 8b102dca4a)
2 years ago
Brian Coca 5b5c26c644
no_log avoid masking booleans (#82217) (#82236)
* no_log avoid masking booleans (#82217)

(cherry picked from commit 6e448edc63)
2 years ago
Matt Martz 6d746023a1
Update Ansible release version to v2.15.6.post0. (#82143) 2 years ago
Matt Martz 36675bbe9f
New release v2.15.6 (#82140) 2 years ago
Matt Martz e141a9092a
Update Ansible release version to v2.15.6rc1.post0. (#82093) 2 years ago
Matt Martz 357ba68b76
New release v2.15.6rc1 (#82092) 2 years ago
Brian Coca 0ef9984918
Restore import_role variable exporting behavior (#81840) (#81873)
* Import role public (#81772)

revert to previous behavior to push vars to play at compile time
add `public` parameter to allow per import control of exporting (vs just the global config)

Co-authored-by: tchernomax <maxime.deroucy@gmail.com>
Co-authored-by: Sloane Hertel <19572925+s-hertel@users.noreply.github.com>
(cherry picked from commit ab6a544e86)

* adapted to prev version

 - removed new functionality
 - restored global config functioning overriding specific public option

* remove typoe

* quote it

(cherry picked from commit 9a4bc7e7b3)
2 years ago
Matt Davis 83c20fed99
switch available_hosts to `frozenset` from `list` in ansible-inventory (#81870) (#81876)
* major speedup large inventories, since it's consulted iteratively

(cherry picked from commit c1343cc304)
2 years ago
Jordan Borean 498cc00b4e
Add test coverage for winrm (#81910) - 2.15 (#81913)
* Add test coverage for winrm (#81910)

(cherry picked from commit 282908c57e)

* Add more winrm coverage (#81923)

(cherry picked from commit 976067c15f)
2 years ago
Martin Krizek 3e2ce2d073
[stable-2.15] run_once: unnotify hosts on handlers that are not run (#81667) (#81919)
Fixes #81666
(cherry picked from commit 2d5861c)
2 years ago
Martin Krizek a05d254ca2
[stable-2.15] Properly template tags in parent blocks (#81624) (#81922)
When templating tags (which happens outside of standard `post_validate`) we
need to template each object in the inheritance chain and set the templated
values on those objects individually. That way when `task.tags` is called the
`extend` functionality properly picks up the templated values of all
parents into one flatten list.

Fixes #81053
(cherry picked from commit 9b3ed5e)
2 years ago
Jordan Borean 1eb437e50d
ansible-galaxy - fix traceback error for invalid req file (#81917) (#81925)
Provide a better error message when encountering a YAML requirements file that is not a dictionary or list.

Fixes: #81901
(cherry picked from commit 8a5ccc9d63)
2 years ago
Brian Coca 8896db97ed
Fix Jinja plugin deduplication (#82002) (#82054)
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)
2 years ago
Matt Clay 0c98b2256c [stable-2.15] ansible-test - Fix parsing of cgroup entries
(cherry picked from commit e933d9d8a6)

Co-authored-by: Matt Clay <matt@mystile.com>
2 years ago
Matt Clay 9aeced838f [stable-2.15] Fix subversion integration test (#82029)
- Remove dependency on the htpasswd module (and thus passlib)
- Fix setup/teardown of the httpd process
- Fix cleanup of temporary directories.
(cherry picked from commit 09d943445c)

Co-authored-by: Matt Clay <matt@mystile.com>
2 years ago
Matt Clay 40b9ed35ce
ansible-test - Use Azure for Windows 2012/2012-R2 (#81971) 2 years ago
Matt Martz 427248cbc9
Update Ansible release version to v2.15.5.post0. (#81936) 2 years ago
Matt Martz f1aab39d79
New release v2.15.5 (#81933) 2 years ago
Jordan Borean 92447debff
win_fetch - improve test time by not scanning Win dir (#81884) (#81887)
(cherry picked from commit dfc62589f6)
2 years ago
Matt Martz faa96a23c3
Update Ansible release version to v2.15.5rc1.post0. (#81869) 2 years ago
Matt Martz 0ddfdbde4e
New release v2.15.5rc1 (#81863) 2 years ago
Sviatoslav Sydorenko ccb00b74fe
[backport][stable-2.15] Always allow "no-other-choice" pre-release dependencies when resolving collection dependency tree (#81747)
* Always allow "no-other-choice" pre-release dependencies when resolving collection dependency tree

PR #81606.

Prior to this patch, when `--pre` CLI flag was not passed, the
dependency resolver would treat concrete collection dependency
candidates (Git repositories, subdirs, tarball URLs, or local dirs or
files etc) as not meeting the requirements.

This patch makes it so pre-releases in any concrete artifact
references, and the ones being specifically pinned dependencies or
user requests, met anywhere in the dependency tree, are allowed
unconditionally.

This is achieved by moving the pre-release check from
`is_satisfied_by()` to the `find_matches()` hook, following the
Pip's example.

As a bonus, this change also fixes the situation when a collection
pre-releases weren't considered if it didn't have any stable releases.
This now works even if `--pre` wasn't requested explicitly.

Finally, this patch partially reverts commit
6f4b4c345b, except for the tests. And it
also improves the `--pre` hint warning to explain that it mostly
affects Galaxy/Automation Hub-hosted collection releases.

Ref #73416
Ref #79112
Fixes #79168
Fixes #80048
Resolves #81605

Co-authored-by: Sloane Hertel <19572925+s-hertel@users.noreply.github.com>
(cherry picked from commit 7662a05085)

* Shorten the collection namespace and name @ tests

This is needed on the 2.15 branch which uses older galaxy containers
that have restricted FQCN size.
2 years ago
Matt Martz f71190068b
[stable-2.15] Add compat function for parsing Content-Disposition header (#81807) (#81828)
* py2 compat for get_param

* Add tests, and handle ValueError

* Add clog frag
(cherry picked from commit 831dc6e)
2 years ago
Brian Coca 3a8b1ef86d
ansible-galaxy fix scm dependency error (#81599) (#81798)
* ansible-galaxy fix scm dependency error

  also changed usage of 'virtual colleciton' to actual type
  avoid error by filtering out virtual collections that dont have
expected properties

simplified as per webknjaz

* Update lib/ansible/galaxy/collection/__init__.py
Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>

(cherry picked from commit 2aef0406d4)
2 years ago
Sloane Hertel 244c48c78e
Fix reporting role as not found when remote_data is None (#81829) (#81837)
(cherry picked from commit 7fab552563)
2 years ago
Val V 7ed557c4f7
Fix stealth exceptions and blocking select() in daemonize() (#81064) - 2.15 (#81581)
* Fix stealth exceptions and blocking select() in daemonize() (#81064)

* Fix stealth exceptions and blocking select() in daemonize()

* Add changelog entry

(cherry picked from commit 894c339df8)

* Daemonize follow-up fixes (#81584)

* Ensure binary data transmission in daemonize

* Add changelog fragment

(cherry picked from commit 91f94fb59d)
2 years ago