./sysutils/ansible-core, SSH-based configuration management, deployment, and task execution

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 2.18.1, Package name: ansible-core-2.18.1, Maintainer: pkgsrc-users

Ansible is a radically simple IT automation system. It handles configuration
management, application deployment, cloud provisioning, ad-hoc task execution,
network automation, and multi-node orchestration. Ansible makes complex changes
like zero-downtime rolling updates with load balancers easy.


Master sites:

Filesize: 2998.013 KB

Version history: (Expand)


CVS history: (Expand)


   2024-12-10 07:22:34 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
ansible-core: updated to 2.18.1

v2.18.1

Minor Changes

- ansible-test - When detection of the current container network fails, a \ 
warning is now issued and execution continues. This simplifies usage in cases \ 
where the current container cannot be inspected, such as when running in GitHub \ 
Codespaces.

Security Fixes

- Templating will not prefer AnsibleUnsafe when a variable is referenced via \ 
hostvars - CVE-2024-11079

Bugfixes

- Fix returning 'unreachable' for the overall task result. This prevents false \ 
positives when a looped task has unignored unreachable items \ 
(https://github.com/ansible/ansible/issues/84019).
- ansible-test - Fix traceback that occurs after an interactive command fails.
- dnf5 - fix installing a package using ``state=latest`` when a binary of the \ 
same name as the package is already installed \ 
(https://github.com/ansible/ansible/issues/84259)
- dnf5 - matching on a binary can be achieved only by specifying a full path \ 
(https://github.com/ansible/ansible/issues/84334)
- runas become - Fix up become logic to still get the SYSTEM token with the most \ 
privileges when running as SYSTEM.
   2024-11-12 09:02:34 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
ansible-core: updated to 2.18.0

v2.18.0
=======

Minor Changes
-------------

- Add ``gid_min``, ``gid_max`` to the group plugin to overwrite the defaults \ 
provided by the ``/etc/login.defs`` file \ 
(https://github.com/ansible/ansible/pull/81770).
- Add ``python3.13`` to the default ``INTERPRETER_PYTHON_FALLBACK`` list.
- Add ``uid_min``, ``uid_max`` to the user plugin to overwrite the defaults \ 
provided by the ``/etc/login.defs`` file \ 
(https://github.com/ansible/ansible/pull/81770).
- Add a new meta task ``end_role`` (https://github.com/ansible/ansible/issues/22286)
- Add a new mount_facts module to support gathering information about mounts \ 
that are excluded by default fact gathering.
- Introducing COLOR_INCLUDED parameter. This can set a specific color for \ 
"included" events.
- Removed the shell ``environment`` config entry as this is already covered by \ 
the play/task directives documentation and the value itself is not used in the \ 
shell plugins. This should remove any confusion around how people set the \ 
environment for a task.
- Suppress cryptography deprecation warnings for Blowfish and TripleDES when the \ 
``paramiko`` Python module is installed.
- The minimum supported Python version on targets is now Python 3.8.
- ``ansible-galaxy collection publish`` - add configuration options for the \ 
initial poll interval and the exponential when checking the import status of a \ 
collection, since the default is relatively slow.
- ansible-config has new 'validate' option to find mispelled/forgein \ 
configurations in ini file or environment variables.
- ansible-doc - show examples in role entrypoint argument specs \ 
(https://github.com/ansible/ansible/pull/82671).
- ansible-galaxy - Handle authentication errors and token expiration
- ansible-test - Add Ubuntu 24.04 remote.
- ansible-test - Add support for Python 3.13.
- ansible-test - An ``ansible_core.egg-info`` directory is no longer generated \ 
when running tests.
- ansible-test - Connection options can be set for ansible-test managed remote \ 
Windows instances.
- ansible-test - Default to Python 3.13 in the ``base`` and ``default`` containers.
- ansible-test - Disable the ``deprecated-`` prefixed ``pylint`` rules as their \ 
results vary by Python version.
- ansible-test - Improve container runtime probe error handling. When unexpected \ 
probe output is encountered, an error with more useful debugging information is \ 
provided.
- ansible-test - Improve the error message shown when an unknown ``--remote`` or \ 
``--docker`` option is given.
- ansible-test - Remove Python 2.7 compatibility imports.
- ansible-test - Removed the ``vyos/1.1.8`` network remote as it is no longer \ 
functional.
- ansible-test - Replace Alpine 3.19 container and remote with Alpine 3.20.
- ansible-test - Replace Fedora 39 container and remote with Fedora 40.
- ansible-test - Replace FreeBSD 14.0 remote with FreeBSD 14.1.
- ansible-test - Replace RHEL 9.3 remote with RHEL 9.4.
- ansible-test - Replace Ubuntu 20.04 container with Ubuntu 24.04 container.
- ansible-test - The ``empty-init`` sanity test no longer applies to \ 
``module_utils`` packages.
- ansible-test - Update ``ansible-test-utility-container`` to version 3.1.0.
- ansible-test - Update ``base`` and ``default`` containers to omit Python 3.7.
- ansible-test - Update ``coverage`` to version 7.6.1.
- ansible-test - Update ``http-test-container`` to version 3.0.0.
- ansible-test - Update ``nios-test-container`` to version 5.0.0.
- ansible-test - Update ``pylint`` sanity test to use version 3.3.1.
- ansible-test - Update ``pypi-test-container`` to version 3.2.0.
- ansible-test - Update the ``base`` and ``default`` containers.
- ansible-test - Updated the frozen requirements for all sanity tests.
- ansible-test - Upgrade ``pip`` used in ansible-test managed virtual \ 
environments from version 24.0 to 24.2.
- ansible-test - Virtual environments created by ansible-test no longer include \ 
the ``wheel`` or ``setuptools`` packages.
- ansible-test - update HTTP test container to 3.2.0 \ 
(https://github.com/ansible/ansible/pull/83469).
- ansible.log now also shows log severity field
- distribution.py - Added SL-Micro in Suse OS Family. \ 
(https://github.com/ansible/ansible/pull/83541)
- dnf - minor internal changes in how the errors from the dnf API are handled; \ 
rely solely on the exceptions rather than inspecting text embedded in them
- dnf - remove legacy code for unsupported dnf versions
- dnf5 - implement ``enable_plugin`` and ``disable_plugin`` options
- fact gathering - Gather /proc/sysinfo facts on s390 Linux on Z
- facts - add systemd version and features
- find - change the datatype of ``elements`` to ``path`` in option ``paths`` \ 
(https://github.com/ansible/ansible/pull/83575).
- ini lookup - add new ``interpolation`` option \ 
(https://github.com/ansible/ansible/issues/83755)
- isidentifier - remove unwanted Python 2 specific code.
- loop_control - add a break_when option to to break out of a task loop early \ 
based on Jinja2 expressions (https://github.com/ansible/ansible/issues/83442).
- package_facts module now supports using aliases for supported package \ 
managers, for example managers=yum or managers=dnf will resolve to using the \ 
underlying rpm.
- plugins, deprecations and warnings concerning configuration are now displayed \ 
to the user, technical issue that prevented 'de-duplication' have been resolved.
- psrp - Remove connection plugin extras vars lookup. This should have no affect \ 
on existing users as all options have been documented.
- remove extraneous selinux import (https://github.com/ansible/ansible/issues/83657).
- replace random with secrets library.
- rpm_key - allow validation of gpg key with a subkey fingerprint
- rpm_key - enable gpg validation that requires presence of multiple fingerprints
- service_mgr - add support for dinit service manager \ 
(https://github.com/ansible/ansible/pull/83489).
- task timeout now returns timedout key with frame/code that was in execution \ 
when the timeout is triggered.
- timedout test for checking if a task result represents a 'timed out' task.
- unarchive - Remove Python 2.7 compatibility imports.
- validate-modules sanity test - detect if names of an option (option name + \ 
aliases) do not match between argument spec and documentation \ 
(https://github.com/ansible/ansible/issues/83598, \ 
https://github.com/ansible/ansible/pull/83599).
- validate-modules sanity test - reject option/aliases names that are identical \ 
up to casing but belong to different options \ 
(https://github.com/ansible/ansible/pull/83530).
- vaulted_file test filter added, to test if the provided path is an 'Ansible \ 
vaulted' file
- yum_repository - add ``excludepkgs`` alias to the ``exclude`` option.

Breaking Changes / Porting Guide
--------------------------------

- Stopped wrapping all commands sent over SSH on a Windows target with a \ 
``powershell.exe`` executable. This results in one less process being started on \ 
each command for Windows to improve efficiency, simplify the code, and make \ 
``raw`` an actual raw command run with the default shell configured on the \ 
Windows sshd settings. This should have no affect on most tasks except for \ 
``raw`` which now is not guaranteed to always be running in a PowerShell shell \ 
and from having the console output codepage set to UTF-8. To avoid this issue \ 
either swap to using ``ansible.windows.win_command``, \ 
``ansible.windows.win_shell``, ``ansible.windows.win_powershell`` or manually \ 
wrap the raw command with the shell commands needed to set the output console \ 
encoding.
- persistent connection plugins - The ``ANSIBLE_CONNECTION_PATH`` config option \ 
no longer has any effect.

Deprecated Features
-------------------

- Deprecate ``ansible.module_utils.basic.AnsibleModule.safe_eval`` and \ 
``ansible.module_utils.common.safe_eval`` as they are no longer used.
- persistent connection plugins - The ``ANSIBLE_CONNECTION_PATH`` config option \ 
no longer has any effect, and will be removed in a future release.
- yum_repository - deprecate ``async`` option as it has been removed in RHEL 8 \ 
and will be removed in ansible-core 2.22.
- yum_repository - the following options are deprecated: \ 
``deltarpm_metadata_percentage``, ``gpgcakey``, ``http_caching``, ``keepalive``, \ 
``metadata_expire_filter``, ``mirrorlist_expire``, ``protect``, \ 
``ssl_check_cert_permissions``, ``ui_repoid_vars`` as they have no effect for \ 
dnf as an underlying package manager. The options will be removed in \ 
ansible-core 2.22.

Removed Features (previously deprecated)
----------------------------------------

- Play - removed deprecated ``ROLE_CACHE`` property in favor of ``role_cache``.
- Remove deprecated `VariableManager._get_delegated_vars` method \ 
(https://github.com/ansible/ansible/issues/82950)
- Removed Python 3.10 as a supported version on the controller. Python 3.11 or \ 
newer is required.
- Removed support for setting the ``vars`` keyword to lists of dictionaries. It \ 
is now required to be a single dictionary.
- loader - remove deprecated non-inclusive words \ 
(https://github.com/ansible/ansible/issues/82947).
- paramiko_ssh - removed deprecated ssh_args from the paramiko_ssh connection \ 
plugin (https://github.com/ansible/ansible/issues/82939).
- paramiko_ssh - removed deprecated ssh_common_args from the paramiko_ssh \ 
connection plugin (https://github.com/ansible/ansible/issues/82940).
- paramiko_ssh - removed deprecated ssh_extra_args from the paramiko_ssh \ 
connection plugin (https://github.com/ansible/ansible/issues/82941).
- play_context - remove deprecated PlayContext.verbosity property \ 
(https://github.com/ansible/ansible/issues/82945).
- utils/listify - remove deprecated 'loader' argument from \ 
listify_lookup_plugin_terms API \ 
(https://github.com/ansible/ansible/issues/82949).

Security Fixes
--------------

- include_vars action - Ensure that result masking is correctly requested when \ 
vault-encrypted files are read. (CVE-2024-8775)
- task result processing - Ensure that action-sourced result masking \ 
(``_ansible_no_log=True``) is preserved. (CVE-2024-8775)
- user action won't allow ssh-keygen, chown and chmod to run on existing ssh \ 
public key file, avoiding traversal on existing symlinks (CVE-2024-9902).
   2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862)
Log message:
py-*: remove unused tool dependency

py-setuptools includes the py-wheel functionality nowadays
   2024-10-14 08:46:10 by Thomas Klausner | Files touched by this commit (325)
Log message:
*: clean-up after python38 removal
   2024-10-08 12:42:03 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
ansible-core: updated to 2.17.5

v2.17.5

Bugfixes

- Add descriptions for ``ansible-galaxy install --help` and ``ansible-galaxy \ 
role|collection install --help``.
- Errors now preserve stacked error messages even when YAML is involved.
- ``ansible-galaxy install --help`` - Fix the usage text and document that the \ 
requirements file passed to ``-r`` can include collections and roles.
- copy - mtime/atime not updated. Fix now update \ 
mtime/atime(https://github.com/ansible/ansible/issues/83013)
- delay keyword is now a float, matching the underlying 'time' API and user \ 
expectations.
- dnf5 - re-introduce the ``state: installed`` alias to ``state: present`` \ 
(https://github.com/ansible/ansible/issues/83960)
- module_utils atomic_move (used by most file based modules), now correctly \ 
handles permission copy and setting mtime correctly across all paths
   2024-09-10 08:59:42 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
ansible-core: updated to 2.17.4

v2.17.4

Bugfixes

- Fix ``SemanticVersion.parse()`` to store the version string so that \ 
``__repr__`` reports it instead of ``None`` \ 
(https://github.com/ansible/ansible/pull/83831).
- Fix an issue where registered variable was not available for templating in \ 
``loop_control.label`` on skipped looped tasks \ 
(https://github.com/ansible/ansible/issues/83619)
- Fix for ``meta`` tasks breaking host/fork affinity with ``host_pinned`` \ 
strategy (https://github.com/ansible/ansible/issues/83294)
- Fix using the current task's directory for looking up relative paths within \ 
roles (https://github.com/ansible/ansible/issues/82695).
- atomic_move - fix using the setgid bit on the parent directory when creating \ 
files (https://github.com/ansible/ansible/issues/46742, \ 
https://github.com/ansible/ansible/issues/67177).
- connection plugins using the 'extras' option feature would need variables to \ 
match the plugin's loaded name, sometimes requiring fqcn, which is not the same \ 
as the documented/declared/expected variables. Now we fall back to the \ 
'basename' of the fqcn, but plugin authors can still set the expected value \ 
directly.
- csvfile lookup - give an error when no search term is provided using modern \ 
config syntax (https://github.com/ansible/ansible/issues/83689).
- include_tasks - Display location when attempting to load a task list where \ 
``include_*`` did not specify any value - \ 
https://github.com/ansible/ansible/issues/83874
- powershell - Improve CLIXML decoding to decode all control characters and \ 
unicode characters that are encoded as surrogate pairs.
- psrp - Fix bug when attempting to fetch a file path that contains special glob \ 
characters like ``[]``
- runtime-metadata sanity test - do not crash on deprecations if ``galaxy.yml`` \ 
contains an empty ``version`` field \ 
(https://github.com/ansible/ansible/pull/83831).
- ssh - Fix bug when attempting to fetch a file path with characters that should \ 
be quoted when using the ``piped`` transfer method
   2024-08-19 13:16:23 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
ansible-core: updated to 2.17.3

v2.17.3
=======

Release Summary
---------------

| Release Date: 2024-08-12
| `Porting Guide \ 
<https://docs.ansible.com/ansible-core/2.17/porting_guides/porting_guide_core_2.17.html>`__

Minor Changes
-------------

- ansible-test - Improve the error message shown when an unknown ``--remote`` or \ 
``--docker`` option is given.
- ansible-test - Removed the ``vyos/1.1.8`` network remote as it is no longer \ 
functional.

Bugfixes
--------

- Warning now includes filename and line number of variable when specifying a \ 
list of dictionaries for vars (https://github.com/ansible/ansible/issues/82528).
- config, restored the ability to set module compression via a variable
- debconf - fix normalization of value representation for boolean vtypes in new \ 
packages (https://github.com/ansible/ansible/issues/83594)
- linear strategy: fix handlers included via ``include_tasks`` handler to be \ 
executed in lockstep (https://github.com/ansible/ansible/issues/83019)
   2024-07-17 10:16:18 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
ansible-core: updated to 2.17.2

v2.17.2

Bugfixes

- Fix a traceback when an environment variable contains certain special \ 
characters (https://github.com/ansible/ansible/issues/83498)
- dnf - reverted incomplete fix from 2.17.2rc1 \ 
(https://github.com/ansible/ansible/pull/83504)
- dnf, dnf5 - fix for installing a set of packages by specifying them using a \ 
wildcard character (https://github.com/ansible/ansible/issues/83373)
- linear strategy now provides a properly templated task name to the \ 
v2_runner_on_started callback event.
- package_facts - ignore warnings sent by apk on stderr \ 
(https://github.com/ansible/ansible/issues/83501).
- replace - Updated before/after example \ 
(https://github.com/ansible/ansible/issues/83390).
- templating hostvars under native jinja will not cause serialization errors anymore.