You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/lib/ansible
Sloane Hertel e84240db84
Fix installing roles containing symlinks (#82911)
* Fix installing roles containing symlinks

Fix sanitizing tarfile symlinks relative to the link directory instead of the archive

For example:

role
├── handlers
│   └── utils.yml -> ../tasks/utils/suite.yml

The link ../tasks/utils/suite.yml will resolve to a path outside of the link's directory, but within the role

role/handlers/../tasks/utils/suite.yml

the resolved path relative to the role is tasks/utils/suite.yml, but if the symlink is set to that value, tarfile would extract it from role/handlers/tasks/utils/suite.yml

* Replace overly forgiving test case with tests for a symlink in a subdirectory of the archive and a symlink in the archive dir when these are not equivalent.

* Build test case from role files to make it easier to add test cases

Fixes #82702
Fixes #81965
Fixes #82051
1 month ago
..
_vendor Require `from __future__ import annotations` (#81902) 8 months ago
cli ansible-config: add 'validate' option (#83007) 2 months ago
collections Require `from __future__ import annotations` (#81902) 8 months ago
compat Remove Python `< 3.5` `selectors` fallbacks (#81872) 8 months ago
config ansible-config: ensure we get templated default (#82974) 2 months ago
errors Require `from __future__ import annotations` (#81902) 8 months ago
executor handlers: fix executing in lockstep using linear (#83030) 2 months ago
galaxy Fix installing roles containing symlinks (#82911) 1 month ago
inventory Require `from __future__ import annotations` (#81902) 8 months ago
module_utils Update distro version in __init__.py (#83114) 1 month ago
modules add systemd version and features fact (#83083) 1 month ago
parsing Enable file cache for vaulted host_vars_files vars plugin (#81995) 3 months ago
playbook play_context: remove deprecated PlayContext.verbosity (#82993) 2 months ago
plugins password_hash: update docs about bcrypt (#81675) 1 month ago
template inspect components, ansible_managed templatable (#83053) 1 month ago
utils Remove deprecated 'loader' argument (#82968) 2 months ago
vars plugins: remove deprecated features (#82976) 2 months ago
__init__.py Require `from __future__ import annotations` (#81902) 8 months ago
__main__.py Require `from __future__ import annotations` (#81902) 8 months ago
constants.py centralize and complete the internal static vars (#82872) 2 months ago
context.py Require `from __future__ import annotations` (#81902) 8 months ago
keyword_desc.yml Fix the strategy plugin description in keywords (#82113) 7 months ago
release.py Bump devel to 2.18.0.dev0 (#82934) 2 months ago