Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ansible-core-2.19 for
openSUSE:Factory checked in at 2026-02-03 21:28:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ansible-core-2.19 (Old)
and /work/SRC/openSUSE:Factory/.ansible-core-2.19.new.1995 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ansible-core-2.19"
Tue Feb 3 21:28:25 2026 rev:3 rq:1330328 version:2.19.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/ansible-core-2.19/ansible-core-2.19.changes
2025-12-11 18:44:32.825554539 +0100
+++
/work/SRC/openSUSE:Factory/.ansible-core-2.19.new.1995/ansible-core-2.19.changes
2026-02-03 21:29:35.335820492 +0100
@@ -1,0 +2,21 @@
+Fri Jan 30 08:22:56 UTC 2026 - Johannes Kastl
<[email protected]>
+
+- update to 2.19.6:
+
https://github.com/ansible/ansible/blob/v2.19.6/changelogs/CHANGELOG-v2.19.rst
+ * Minor Changes
+ - ansible-test - Replace RHEL 10.0 remote with 10.1.
+ - ansible-test - Replace RHEL 9.5 remote with 9.7.
+ * Bugfixes
+ - Fix Windows LIB env var corruption
+ (ansible-collections/ansible.windows#297).
+ - ansible_local will no longer trigger variable injection
+ default value deprecation.
+ - package, service, gather_facts - fix templating
+ module_defaults for modules executed by these action plugins.
+ (#85848)
+ - winrm - Provide a better error message if a domain user is
+ specified using a User Principal Name (UPN) but the
+ pykerberos library is not installed so Kerberos is
+ unavailable.
+
+-------------------------------------------------------------------
Old:
----
ansible_core-2.19.5.tar.gz
ansible_core-2.19.5.tar.gz.sha256
New:
----
ansible_core-2.19.6.tar.gz
ansible_core-2.19.6.tar.gz.sha256
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ansible-core-2.19.spec ++++++
--- /var/tmp/diff_new_pack.qUkGoz/_old 2026-02-03 21:29:37.047892353 +0100
+++ /var/tmp/diff_new_pack.qUkGoz/_new 2026-02-03 21:29:37.055892688 +0100
@@ -1,7 +1,7 @@
#
# spec file for package ansible-core-2.19
#
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -43,7 +43,7 @@
%endif
Name: ansible-core-2.19
-Version: 2.19.5
+Version: 2.19.6
Release: 0
Summary: Radically simple IT automation
License: GPL-3.0-or-later
++++++ ansible_core-2.19.5.tar.gz -> ansible_core-2.19.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/PKG-INFO
new/ansible_core-2.19.6/PKG-INFO
--- old/ansible_core-2.19.5/PKG-INFO 2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/PKG-INFO 2026-01-29 20:19:58.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: ansible-core
-Version: 2.19.5
+Version: 2.19.6
Summary: Radically simple IT automation
Author: Ansible Project
Project-URL: Homepage, https://ansible.com/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/ansible_core.egg-info/PKG-INFO
new/ansible_core-2.19.6/ansible_core.egg-info/PKG-INFO
--- old/ansible_core-2.19.5/ansible_core.egg-info/PKG-INFO 2025-12-09
17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/ansible_core.egg-info/PKG-INFO 2026-01-29
20:19:58.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: ansible-core
-Version: 2.19.5
+Version: 2.19.6
Summary: Radically simple IT automation
Author: Ansible Project
Project-URL: Homepage, https://ansible.com/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/ansible_core.egg-info/SOURCES.txt
new/ansible_core-2.19.6/ansible_core.egg-info/SOURCES.txt
--- old/ansible_core-2.19.5/ansible_core.egg-info/SOURCES.txt 2025-12-09
17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/ansible_core.egg-info/SOURCES.txt 2026-01-29
20:19:58.000000000 +0100
@@ -2025,6 +2025,7 @@
test/integration/targets/deprecations/entry_key_deprecated.cfg
test/integration/targets/deprecations/entry_key_deprecated2.cfg
test/integration/targets/deprecations/entry_key_not_deprecated.cfg
+test/integration/targets/deprecations/injectfacts.yml
test/integration/targets/deprecations/runme.sh
test/integration/targets/deprecations/cache_plugins/notjsonfile.py
test/integration/targets/deprecations/collections/ansible_collections/foo/bar/plugins/__init__.py
@@ -4699,6 +4700,8 @@
test/sanity/code-smell/mypy.py
test/sanity/code-smell/mypy.requirements.in
test/sanity/code-smell/mypy.requirements.txt
+test/sanity/code-smell/no-s3.json
+test/sanity/code-smell/no-s3.py
test/sanity/code-smell/no-unwanted-characters.json
test/sanity/code-smell/no-unwanted-characters.py
test/sanity/code-smell/no-unwanted-files.json
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/changelogs/CHANGELOG-v2.19.rst
new/ansible_core-2.19.6/changelogs/CHANGELOG-v2.19.rst
--- old/ansible_core-2.19.5/changelogs/CHANGELOG-v2.19.rst 2025-12-09
17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/changelogs/CHANGELOG-v2.19.rst 2026-01-29
20:19:58.000000000 +0100
@@ -4,6 +4,29 @@
.. contents:: Topics
+v2.19.6
+=======
+
+Release Summary
+---------------
+
+| Release Date: 2026-01-29
+| `Porting Guide
<https://docs.ansible.com/ansible-core/2.19/porting_guides/porting_guide_core_2.19.html>`__
+
+Minor Changes
+-------------
+
+- ansible-test - Replace RHEL 10.0 remote with 10.1.
+- ansible-test - Replace RHEL 9.5 remote with 9.7.
+
+Bugfixes
+--------
+
+- Fix Windows LIB env var corruption
(https://github.com/ansible-collections/ansible.windows/issues/297).
+- ansible_local will no longer trigger variable injection default value
deprecation.
+- package, service, gather_facts - fix templating module_defaults for modules
executed by these action plugins.
(https://github.com/ansible/ansible/issues/85848)
+- winrm - Provide a better error message if a domain user is specified using a
User Principal Name (``UPN``) but the ``pykerberos`` library is not installed
so Kerberos is unavailable.
+
v2.19.5
=======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/changelogs/changelog.yaml
new/ansible_core-2.19.6/changelogs/changelog.yaml
--- old/ansible_core-2.19.5/changelogs/changelog.yaml 2025-12-09
17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/changelogs/changelog.yaml 2026-01-29
20:19:58.000000000 +0100
@@ -1448,3 +1448,41 @@
- get_url_regex.yml
- varloaderror.yml
release_date: '2025-12-02'
+ 2.19.6:
+ changes:
+ release_summary: '| Release Date: 2026-01-29
+
+ | `Porting Guide
<https://docs.ansible.com/ansible-core/2.19/porting_guides/porting_guide_core_2.19.html>`__
+
+ '
+ codename: What Is and What Should Never Be
+ fragments:
+ - 2.19.6_summary.yaml
+ release_date: '2026-01-29'
+ 2.19.6rc1:
+ changes:
+ bugfixes:
+ - Fix Windows LIB env var corruption
(https://github.com/ansible-collections/ansible.windows/issues/297).
+ - ansible_local will no longer trigger variable injection default value
deprecation.
+ - package, service, gather_facts - fix templating module_defaults for
modules
+ executed by these action plugins.
(https://github.com/ansible/ansible/issues/85848)
+ - winrm - Provide a better error message if a domain user is specified
using
+ a User Principal Name (``UPN``) but the ``pykerberos`` library is not
installed
+ so Kerberos is unavailable.
+ minor_changes:
+ - ansible-test - Replace RHEL 10.0 remote with 10.1.
+ - ansible-test - Replace RHEL 9.5 remote with 9.7.
+ release_summary: '| Release Date: 2026-01-23
+
+ | `Porting Guide
<https://docs.ansible.com/ansible-core/2.19/porting_guides/porting_guide_core_2.19.html>`__
+
+ '
+ codename: What Is and What Should Never Be
+ fragments:
+ - 2.19.6rc1_summary.yaml
+ - ansible-test-rhel-10.1.yml
+ - ansible_local_nodepr.yml
+ - fix-windows-lib-env-corruption.yml
+ - module_defaults-action-plugin-templating.yml
+ - winrm-kerberos.yml
+ release_date: '2026-01-22'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/lib/ansible/executor/module_common.py
new/ansible_core-2.19.6/lib/ansible/executor/module_common.py
--- old/ansible_core-2.19.5/lib/ansible/executor/module_common.py
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/lib/ansible/executor/module_common.py
2026-01-29 20:19:58.000000000 +0100
@@ -1357,6 +1357,9 @@
def _get_action_arg_defaults(action: str, task: Task, templar: TemplateEngine)
-> dict[str, t.Any]:
+ """
+ Get module_defaults that match or contain a fully qualified action/module
name.
+ """
action_groups = task._parent._play._action_groups
defaults = task.module_defaults
@@ -1393,7 +1396,14 @@
def _apply_action_arg_defaults(action: str, task: Task, action_args: dict[str,
t.Any], templar: Templar) -> dict[str, t.Any]:
+ """
+ Finalize arguments from module_defaults and update with action_args.
+
+ This is used by action plugins like gather_facts, package, and service,
+ which select modules to execute after normal task argument finalization.
+ """
args = _get_action_arg_defaults(action, task, templar._engine)
+ args = templar.template({k: v for k, v in args.items() if k not in
action_args})
args.update(action_args)
return args
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/lib/ansible/module_utils/ansible_release.py
new/ansible_core-2.19.6/lib/ansible/module_utils/ansible_release.py
--- old/ansible_core-2.19.5/lib/ansible/module_utils/ansible_release.py
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/lib/ansible/module_utils/ansible_release.py
2026-01-29 20:19:58.000000000 +0100
@@ -17,6 +17,6 @@
from __future__ import annotations
-__version__ = '2.19.5'
+__version__ = '2.19.6'
__author__ = 'Ansible, Inc.'
__codename__ = "What Is and What Should Never Be"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/lib/ansible/module_utils/powershell/Ansible.ModuleUtils.AddType.psm1
new/ansible_core-2.19.6/lib/ansible/module_utils/powershell/Ansible.ModuleUtils.AddType.psm1
---
old/ansible_core-2.19.5/lib/ansible/module_utils/powershell/Ansible.ModuleUtils.AddType.psm1
2025-12-09 17:24:02.000000000 +0100
+++
new/ansible_core-2.19.6/lib/ansible/module_utils/powershell/Ansible.ModuleUtils.AddType.psm1
2026-01-29 20:19:58.000000000 +0100
@@ -378,7 +378,7 @@
$originalEnv = @{}
try {
'LIB' | ForEach-Object -Process {
- $value = Get-Item -LiteralPath "Env:\$_" -ErrorAction
SilentlyContinue
+ $value = (Get-Item -LiteralPath "Env:\$_" -ErrorAction
SilentlyContinue).Value
if ($value) {
$originalEnv[$_] = $value
Remove-Item -LiteralPath "Env:\$_"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/lib/ansible/plugins/connection/winrm.py
new/ansible_core-2.19.6/lib/ansible/plugins/connection/winrm.py
--- old/ansible_core-2.19.5/lib/ansible/plugins/connection/winrm.py
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/lib/ansible/plugins/connection/winrm.py
2026-01-29 20:19:58.000000000 +0100
@@ -31,6 +31,8 @@
remote_user:
description:
- The user to log in as to the Windows machine
+ - If O(transport) is not defined, the authentication used will be
V(kerberos) if the user is in the UPN format V(user@domain),
+ otherwise it will be V(basic)
vars:
- name: ansible_user
- name: ansible_winrm_user
@@ -75,7 +77,8 @@
transport:
description:
- List of winrm transports to attempt to use (ssl, plaintext,
kerberos, etc)
- - If None (the default) the plugin will try to automatically guess
the correct list
+ - If None (the default) the plugin will try to automatically guess
the correct list. It will use
+ V(kerberos) if the username looks like a UPN V(user@domain),
otherwise it will use V(basic).
- The choices available depend on your version of pywinrm
type: list
elements: string
@@ -288,12 +291,11 @@
# calculate transport if needed
if self._winrm_transport is None or self._winrm_transport[0] is None:
# TODO: figure out what we want to do with auto-transport
selection in the face of NTLM/Kerb/CredSSP/Cert/Basic
- transport_selector = ['ssl'] if self._winrm_scheme == 'https' else
['plaintext']
-
- if HAVE_KERBEROS and ((self._winrm_user and '@' in
self._winrm_user)):
- self._winrm_transport = ['kerberos'] + transport_selector
+ if self._winrm_user and '@' in self._winrm_user:
+ # A UPN must be a domain account and we always default to
Kerberos for this.
+ self._winrm_transport = ['kerberos']
else:
- self._winrm_transport = transport_selector
+ self._winrm_transport = ['ssl'] if self._winrm_scheme ==
'https' else ['plaintext']
unsupported_transports =
set(self._winrm_transport).difference(self._winrm_supported_authtypes)
@@ -418,7 +420,12 @@
for transport in self._winrm_transport:
if transport == 'kerberos':
if not HAVE_KERBEROS:
- errors.append('kerberos: the python kerberos library is
not installed')
+ kerb_msg = (
+ 'WinRM Kerberos authentication requested but the
python kerberos library is not installed. '
+ 'Please install the pykerberos library, set a
different authentication method with ansible_winrm_transport, '
+ 'or use a local user account to connect using basic
authentication.'
+ )
+ errors.append(kerb_msg)
continue
if self._kerb_managed:
self._kerb_auth(self._winrm_user, self._winrm_pass)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/lib/ansible/release.py
new/ansible_core-2.19.6/lib/ansible/release.py
--- old/ansible_core-2.19.5/lib/ansible/release.py 2025-12-09
17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/lib/ansible/release.py 2026-01-29
20:19:58.000000000 +0100
@@ -17,6 +17,6 @@
from __future__ import annotations
-__version__ = '2.19.5'
+__version__ = '2.19.6'
__author__ = 'Ansible, Inc.'
__codename__ = "What Is and What Should Never Be"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/lib/ansible/vars/manager.py
new/ansible_core-2.19.6/lib/ansible/vars/manager.py
--- old/ansible_core-2.19.5/lib/ansible/vars/manager.py 2025-12-09
17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/lib/ansible/vars/manager.py 2026-01-29
20:19:58.000000000 +0100
@@ -297,7 +297,7 @@
# push facts to main namespace
if C.INJECT_FACTS_AS_VARS:
- deprecated_facts_vars = {k: _deprecate_top_level_fact(v)
for k, v in clean_facts(facts).items()}
+ deprecated_facts_vars = {k: (_deprecate_top_level_fact(v)
if k != 'ansible_local' else v) for k, v in clean_facts(facts).items()}
all_vars = _combine_and_track(all_vars,
deprecated_facts_vars, "facts")
else:
# always 'promote' ansible_local
@@ -367,7 +367,7 @@
raise AnsibleUndefinedVariable("an undefined
variable was found when attempting to template the vars_files item '%s'"
%
vars_file_item, obj=vars_file_item) from ex
- display.warning("skipping vars_file item due to an
undefined variable", obj=vars_file_item)
+ display.warning("skipping vars_files item due to an
undefined variable", obj=vars_file_item)
continue
# We now merge in all exported vars from all roles in the play
(very high precedence)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/pyproject.toml
new/ansible_core-2.19.6/pyproject.toml
--- old/ansible_core-2.19.5/pyproject.toml 2025-12-09 17:24:02.000000000
+0100
+++ new/ansible_core-2.19.6/pyproject.toml 2026-01-29 20:19:58.000000000
+0100
@@ -1,5 +1,5 @@
[build-system]
-requires = ["setuptools >= 66.1.0, <= 80.9.0", "wheel == 0.45.1"] # lower
bound to support controller Python versions, upper bound for latest version
tested at release
+requires = ["setuptools >= 66.1.0, <= 80.10.2", "wheel == 0.45.1"] # lower
bound to support controller Python versions, upper bound for latest version
tested at release
build-backend = "setuptools.build_meta"
[project]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/deprecations/injectfacts.yml
new/ansible_core-2.19.6/test/integration/targets/deprecations/injectfacts.yml
---
old/ansible_core-2.19.5/test/integration/targets/deprecations/injectfacts.yml
1970-01-01 01:00:00.000000000 +0100
+++
new/ansible_core-2.19.6/test/integration/targets/deprecations/injectfacts.yml
2026-01-29 20:19:58.000000000 +0100
@@ -0,0 +1,8 @@
+- hosts: localhost
+ gather_facts: true
+ tasks:
+ - debug:
+ msg: '{{ansible_distribution}}'
+ - debug:
+ msg: '{{ansible_local}}'
+ tags: alocal
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/deprecations/runme.sh
new/ansible_core-2.19.6/test/integration/targets/deprecations/runme.sh
--- old/ansible_core-2.19.5/test/integration/targets/deprecations/runme.sh
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/integration/targets/deprecations/runme.sh
2026-01-29 20:19:58.000000000 +0100
@@ -56,3 +56,9 @@
# check for plugin deprecation
[ "$(ansible-doc -t cache notjsonfile --playbook-dir ./ | grep -c
'DEPRECATED:')" -eq "1" ]
+
+# Injection default is deprecated
+[ "$(ANSIBLE_INJECT_FACT_VARS=1 ansible-playbook injectfacts.yml 2>&1 | grep
-c 'INJECT_FACTS_AS_VARS')" -eq "0" ]
+
+# Injection default is deprecated but not ansible_local
+[ "$(ansible-playbook injectfacts.yml --tags alocal 2>&1 | grep -c
'INJECT_FACTS_AS_VARS')" -eq "0" ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/gathering_facts/runme.sh
new/ansible_core-2.19.6/test/integration/targets/gathering_facts/runme.sh
--- old/ansible_core-2.19.5/test/integration/targets/gathering_facts/runme.sh
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/integration/targets/gathering_facts/runme.sh
2026-01-29 20:19:58.000000000 +0100
@@ -26,6 +26,9 @@
ansible-playbook test_module_defaults.yml "$@" --tags networking
+# test gather_facts action templates module_defaults for different module name
+ansible-playbook test_module_defaults.yml "$@" --tags templating
+
# test it works by default
ANSIBLE_FACTS_MODULES='ansible.legacy.slow' ansible -m gather_facts localhost
--playbook-dir ./ "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/gathering_facts/test_module_defaults.yml
new/ansible_core-2.19.6/test/integration/targets/gathering_facts/test_module_defaults.yml
---
old/ansible_core-2.19.5/test/integration/targets/gathering_facts/test_module_defaults.yml
2025-12-09 17:24:02.000000000 +0100
+++
new/ansible_core-2.19.6/test/integration/targets/gathering_facts/test_module_defaults.yml
2026-01-29 20:19:58.000000000 +0100
@@ -128,3 +128,21 @@
- assert:
that:
- "ansible_facts.gather_subset == 'min'"
+
+- name: Test module_defaults templating when the action and module differ
+ hosts: localhost
+ gather_facts: True
+ tags:
+ - templating
+ vars:
+ subset_facts:
+ - "!all"
+ - "!min"
+ - env
+ module_defaults:
+ setup:
+ gather_subset: "{{ subset_facts }}"
+ tasks:
+ - assert:
+ that:
+ - ansible_facts.gather_subset == subset_facts
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/module_defaults/collections/ansible_collections/testns/testcoll/meta/runtime.yml
new/ansible_core-2.19.6/test/integration/targets/module_defaults/collections/ansible_collections/testns/testcoll/meta/runtime.yml
---
old/ansible_core-2.19.5/test/integration/targets/module_defaults/collections/ansible_collections/testns/testcoll/meta/runtime.yml
2025-12-09 17:24:02.000000000 +0100
+++
new/ansible_core-2.19.6/test/integration/targets/module_defaults/collections/ansible_collections/testns/testcoll/meta/runtime.yml
2026-01-29 20:19:58.000000000 +0100
@@ -69,6 +69,8 @@
- metadata:
extend_group:
- testgroup
+ contains_setup:
+ - ansible.builtin.setup
empty_metadata:
- metadata: {}
bad_metadata_format:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/module_defaults/test_action_groups.yml
new/ansible_core-2.19.6/test/integration/targets/module_defaults/test_action_groups.yml
---
old/ansible_core-2.19.5/test/integration/targets/module_defaults/test_action_groups.yml
2025-12-09 17:24:02.000000000 +0100
+++
new/ansible_core-2.19.6/test/integration/targets/module_defaults/test_action_groups.yml
2026-01-29 20:19:58.000000000 +0100
@@ -130,3 +130,18 @@
- metadata:
collections:
- testns.testcoll
+
+ - name: Test action plugin templates group defaults
+ vars:
+ setup_subset:
+ - "!all"
+ - "!min"
+ - local
+ module_defaults:
+ group/testns.testcoll.contains_setup:
+ gather_subset: "{{ setup_subset }}"
+ block:
+ - gather_facts:
+ - assert:
+ that:
+ - ansible_facts.gather_subset == setup_subset
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/module_utils_Ansible.ModuleUtils.AddType/library/add_type_test.ps1
new/ansible_core-2.19.6/test/integration/targets/module_utils_Ansible.ModuleUtils.AddType/library/add_type_test.ps1
---
old/ansible_core-2.19.5/test/integration/targets/module_utils_Ansible.ModuleUtils.AddType/library/add_type_test.ps1
2025-12-09 17:24:02.000000000 +0100
+++
new/ansible_core-2.19.6/test/integration/targets/module_utils_Ansible.ModuleUtils.AddType/library/add_type_test.ps1
2026-01-29 20:19:58.000000000 +0100
@@ -322,6 +322,7 @@
$env:LIB = "C:\fake\folder\path"
try {
Add-CSharpType -Reference $lib_set
+ Assert-Equal -actual $env:LIB -expected "C:\fake\folder\path"
}
finally {
Remove-Item -LiteralPath env:\LIB
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/package/tasks/main.yml
new/ansible_core-2.19.6/test/integration/targets/package/tasks/main.yml
--- old/ansible_core-2.19.5/test/integration/targets/package/tasks/main.yml
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/integration/targets/package/tasks/main.yml
2026-01-29 20:19:58.000000000 +0100
@@ -69,28 +69,53 @@
# Verify module_defaults for package and the underlying module are utilized
# Validates: https://github.com/ansible/ansible/issues/72918
- block:
- # 'name' is required
+ # note: dnf module unexpectedly succeeds when no arguments are provided.
+ # Until the requires_one_of (?) bug is fixed, this test asserts changes
are made to avoid false positives.
- name: install apt with package defaults
package:
module_defaults:
package:
name: apt
state: present
+ register: result
+ - assert:
+ that: result is changed
+
+ - name: uninstall apt between tests
+ dnf5:
+ name: apt
+ state: absent
+
+ # Validate package handles applying templated defaults for dnf
+ # https://github.com/ansible/ansible/issues/85848
- name: install apt with dnf defaults (auto)
package:
module_defaults:
- dnf:
- name: apt
+ dnf5:
+ name: "{{ 'apt' }}"
state: present
+ register: result
- - name: install apt with dnf defaults (use dnf)
+ - assert:
+ that: result is changed
+
+ - name: uninstall apt between tests
+ dnf5:
+ name: apt
+ state: absent
+
+ - name: install apt with dnf defaults (use dnf5)
package:
- use: dnf
+ use: dnf5
module_defaults:
- dnf:
+ dnf5:
name: apt
state: present
+ register: result
+
+ - assert:
+ that: result is changed
always:
- name: remove apt
dnf:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/rpm_key/tasks/main.yaml
new/ansible_core-2.19.6/test/integration/targets/rpm_key/tasks/main.yaml
--- old/ansible_core-2.19.5/test/integration/targets/rpm_key/tasks/main.yaml
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/integration/targets/rpm_key/tasks/main.yaml
2026-01-29 20:19:58.000000000 +0100
@@ -1,3 +1,7 @@
+ - name: Skip RHEL 10.1 until rpm_key has been updated
+ meta: end_play
+ when: ansible_distribution == "RedHat" and ansible_distribution_version ==
"10.1"
+
- when: ansible_os_family == "RedHat"
block:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/service/tasks/tests.yml
new/ansible_core-2.19.6/test/integration/targets/service/tasks/tests.yml
--- old/ansible_core-2.19.5/test/integration/targets/service/tasks/tests.yml
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/integration/targets/service/tasks/tests.yml
2026-01-29 20:19:58.000000000 +0100
@@ -32,10 +32,12 @@
when: "ansible_service_mgr in ['sysvinit', 'systemd']"
module_defaults:
sysvinit:
- name: ansible_test
+ # Test the action plugin templates sysvinit defaults
+ # https://github.com/ansible/ansible/issues/85848
+ name: "{{ 'ansible_test' }}"
enabled: yes
systemd:
- name: ansible_test
+ name: "{{ 'ansible_test' }}"
enabled: yes
- name: assert that changes reported for check mode run
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/integration/targets/win_app_control/setup.yml
new/ansible_core-2.19.6/test/integration/targets/win_app_control/setup.yml
--- old/ansible_core-2.19.5/test/integration/targets/win_app_control/setup.yml
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/integration/targets/win_app_control/setup.yml
2026-01-29 20:19:58.000000000 +0100
@@ -82,7 +82,7 @@
- name: install OpenAuthenticode
shell: |
if (-not (Get-Module -Name OpenAuthenticode -ListAvailable | Where-Object
Version -ge '0.5.0')) {
- $url =
'https://ansible-ci-files.s3.us-east-1.amazonaws.com/test/integration/targets/win_app_control/openauthenticode.0.6.1.nupkg'
+ $url =
'https://ci-files.testing.ansible.com/test/integration/targets/win_app_control/openauthenticode.0.6.1.nupkg'
Invoke-WebRequest -Uri $url -OutFile '{{ local_tmp_dir
}}/openauthenticode.0.6.1.nupkg'
Register-PSResourceRepository -Name AnsibleTemp -Trusted -Uri '{{
local_tmp_dir }}'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/lib/ansible_test/_data/completion/remote.txt
new/ansible_core-2.19.6/test/lib/ansible_test/_data/completion/remote.txt
--- old/ansible_core-2.19.5/test/lib/ansible_test/_data/completion/remote.txt
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/lib/ansible_test/_data/completion/remote.txt
2026-01-29 20:19:58.000000000 +0100
@@ -7,8 +7,8 @@
freebsd python_dir=/usr/local/bin become=su_sudo provider=aws arch=x86_64
macos/15.3 python=3.13 python_dir=/usr/local/bin become=sudo
provider=parallels arch=x86_64
macos python_dir=/usr/local/bin become=sudo provider=parallels arch=x86_64
-rhel/9.5 python=3.9,3.12 become=sudo provider=aws arch=x86_64
-rhel/10.0 python=3.12 become=sudo provider=aws arch=x86_64
+rhel/9.7 python=3.9,3.12 become=sudo provider=aws arch=x86_64
+rhel/10.1 python=3.12 become=sudo provider=aws arch=x86_64
rhel become=sudo provider=aws arch=x86_64
ubuntu/22.04 python=3.10 become=sudo provider=aws arch=x86_64
ubuntu/24.04 python=3.12 become=sudo provider=aws arch=x86_64
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/sanity/code-smell/no-s3.json
new/ansible_core-2.19.6/test/sanity/code-smell/no-s3.json
--- old/ansible_core-2.19.5/test/sanity/code-smell/no-s3.json 1970-01-01
01:00:00.000000000 +0100
+++ new/ansible_core-2.19.6/test/sanity/code-smell/no-s3.json 2026-01-29
20:19:58.000000000 +0100
@@ -0,0 +1,4 @@
+{
+ "text": true,
+ "output": "path-line-column-message"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ansible_core-2.19.5/test/sanity/code-smell/no-s3.py
new/ansible_core-2.19.6/test/sanity/code-smell/no-s3.py
--- old/ansible_core-2.19.5/test/sanity/code-smell/no-s3.py 1970-01-01
01:00:00.000000000 +0100
+++ new/ansible_core-2.19.6/test/sanity/code-smell/no-s3.py 2026-01-29
20:19:58.000000000 +0100
@@ -0,0 +1,27 @@
+"""
+Disallow direct linking to S3 buckets.
+S3 buckets should be accessed through a CloudFront distribution.
+"""
+
+from __future__ import annotations
+
+import re
+import sys
+
+
+def main():
+ """Main entry point."""
+ for path in sys.argv[1:] or sys.stdin.read().splitlines():
+ with open(path, 'rb') as path_fd:
+ for line, b_text in enumerate(path_fd.readlines()):
+ try:
+ text = b_text.decode()
+ except UnicodeDecodeError:
+ continue
+
+ if match := re.search(r'(http.*?s3\..*?amazonaws\.com)', text):
+ print(f'{path}:{line + 1}:{match.start(1) + 1}: use a
CloudFront distribution instead of an S3 bucket: {match.group(1)}')
+
+
+if __name__ == '__main__':
+ main()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ansible_core-2.19.5/test/units/plugins/connection/test_winrm.py
new/ansible_core-2.19.6/test/units/plugins/connection/test_winrm.py
--- old/ansible_core-2.19.5/test/units/plugins/connection/test_winrm.py
2025-12-09 17:24:02.000000000 +0100
+++ new/ansible_core-2.19.6/test/units/plugins/connection/test_winrm.py
2026-01-29 20:19:58.000000000 +0100
@@ -63,7 +63,7 @@
'_winrm_kwargs': {'username': '[email protected]',
'password': None},
'_winrm_pass': None,
- '_winrm_transport': ['kerberos', 'ssl'],
+ '_winrm_transport': ['kerberos'],
'_winrm_user': '[email protected]'
},
True
@@ -78,7 +78,7 @@
'_winrm_kwargs': {'username': '[email protected]',
'password': None},
'_winrm_pass': None,
- '_winrm_transport': ['ssl'],
+ '_winrm_transport': ['kerberos'],
'_winrm_user': '[email protected]'
},
False
@@ -93,7 +93,7 @@
'_winrm_kwargs': {'username': '[email protected]',
'password': 'pass'},
'_winrm_pass': 'pass',
- '_winrm_transport': ['kerberos', 'ssl'],
+ '_winrm_transport': ['kerberos'],
'_winrm_user': '[email protected]'
},
True
++++++ ansible_core-2.19.5.tar.gz.sha256 -> ansible_core-2.19.6.tar.gz.sha256
++++++
---
/work/SRC/openSUSE:Factory/ansible-core-2.19/ansible_core-2.19.5.tar.gz.sha256
2025-12-11 18:44:32.925558741 +0100
+++
/work/SRC/openSUSE:Factory/.ansible-core-2.19.new.1995/ansible_core-2.19.6.tar.gz.sha256
2026-02-03 21:29:35.471826200 +0100
@@ -1 +1 @@
-d03660ff32ba8a5ae40a82148cb24b38a35d26c0155621ddd9148b7562fd8be2
ansible_core-2.19.5.tar.gz
+1e6b711e357901422592a1d1e4a076eee918497587646a5843fa61536ede1990
ansible_core-2.19.6.tar.gz