import ansible-core-2.13.3-1.el9

This commit is contained in:
CentOS Sources 2022-11-15 01:26:10 -05:00 committed by Stepan Oksanichenko
parent f08e94a185
commit bbbee46b21
4 changed files with 68 additions and 129 deletions

View File

@ -1,4 +1,6 @@
c482edef8c65b0ebf62eb0eddab3c039ac1e4589 SOURCES/ansible-6c75cf5c83da044d1fd69bc444ce4de50d728d09.tar.gz
56057bba4714e59b0f28bbb778bdb8321a198dd7 SOURCES/ansible-c1bb0c6ab89a344bdcc07ef66887c310e661e3a6.tar.gz
6a9e1e0eec23c0f3091fa53f91eb8701ad7caaeb SOURCES/jinja2-b08cd4bc64bb980df86ed2876978ae5735572280.tar.gz
72c5fe7f8145d4cff66426c444c33104a9ae3d53 SOURCES/markupsafe-b5a517506d6cb8091e215a4a89e47db5eee6a68f.tar.gz
d5b06047a8a5937c9433c8e0e88bcf2ccb6a4f84 SOURCES/packaging-ded06cedf6e20680eea0363fac894cb4a09e7831.tar.gz
f20e820c8fa08ff162ace90735a2a89c599f7166 SOURCES/pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605.tar.gz
c17fd6000af4ccf32930c41e928fea1e38cb5d0a SOURCES/straightplugin-6634ea8e1e89d5bb23804f50e676f196c52c46ed.tar.gz

4
.gitignore vendored
View File

@ -1,4 +1,6 @@
SOURCES/ansible-6c75cf5c83da044d1fd69bc444ce4de50d728d09.tar.gz
SOURCES/ansible-c1bb0c6ab89a344bdcc07ef66887c310e661e3a6.tar.gz
SOURCES/jinja2-b08cd4bc64bb980df86ed2876978ae5735572280.tar.gz
SOURCES/markupsafe-b5a517506d6cb8091e215a4a89e47db5eee6a68f.tar.gz
SOURCES/packaging-ded06cedf6e20680eea0363fac894cb4a09e7831.tar.gz
SOURCES/pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605.tar.gz
SOURCES/straightplugin-6634ea8e1e89d5bb23804f50e676f196c52c46ed.tar.gz

View File

@ -1,87 +0,0 @@
From ae35fc04c3a2068b1d37efe813d1c6938b4f2634 Mon Sep 17 00:00:00 2001
From: Brian Coca <bcoca@users.noreply.github.com>
Date: Wed, 16 Feb 2022 11:55:03 -0500
Subject: [PATCH] Fix final fact delegation (#77008) (#77017)
* fix facts delegation loop overwrite
partial revert of change to allow facts to be present in each loop iteration
was not needed in final results as result processing alreayd had the disctiontion
and ended up breaking the assumptions in the calling code.
fixes #76676
(cherry picked from commit c9d3518d2f3812787e1627806b5fa93f8fae48a6)
---
.../fragments/fix_fax_delegation_loops.yml | 2 ++
lib/ansible/executor/task_executor.py | 8 +------
.../delegate_to/delegate_facts_loop.yml | 21 ++++++++++++++++++-
3 files changed, 23 insertions(+), 8 deletions(-)
create mode 100644 changelogs/fragments/fix_fax_delegation_loops.yml
diff --git a/changelogs/fragments/fix_fax_delegation_loops.yml b/changelogs/fragments/fix_fax_delegation_loops.yml
new file mode 100644
index 0000000000..d9e07bf110
--- /dev/null
+++ b/changelogs/fragments/fix_fax_delegation_loops.yml
@@ -0,0 +1,2 @@
+bugfixes:
+ - task_executor reverts the change to push facts into delegated vars on loop finalization as result managing code already handles this and was duplicating effort to wrong result.
diff --git a/lib/ansible/executor/task_executor.py b/lib/ansible/executor/task_executor.py
index 1a7c666fea..05dcb96446 100644
--- a/lib/ansible/executor/task_executor.py
+++ b/lib/ansible/executor/task_executor.py
@@ -745,13 +745,7 @@ class TaskExecutor:
if 'ansible_facts' in result and self._task.action not in C._ACTION_DEBUG:
if self._task.action in C._ACTION_WITH_CLEAN_FACTS:
- if self._task.delegate_to and self._task.delegate_facts:
- if '_ansible_delegated_vars' in variables:
- variables['_ansible_delegated_vars'].update(result['ansible_facts'])
- else:
- variables['_ansible_delegated_vars'] = result['ansible_facts']
- else:
- variables.update(result['ansible_facts'])
+ variables.update(result['ansible_facts'])
else:
# TODO: cleaning of facts should eventually become part of taskresults instead of vars
af = wrap_var(result['ansible_facts'])
diff --git a/test/integration/targets/delegate_to/delegate_facts_loop.yml b/test/integration/targets/delegate_to/delegate_facts_loop.yml
index 90a25676dd..28a1488de3 100644
--- a/test/integration/targets/delegate_to/delegate_facts_loop.yml
+++ b/test/integration/targets/delegate_to/delegate_facts_loop.yml
@@ -5,7 +5,6 @@
test: 123
delegate_to: "{{ item }}"
delegate_facts: true
- when: test is not defined
loop: "{{ groups['all'] | difference(['localhost']) }}"
- name: ensure we didnt create it on current host
@@ -19,3 +18,23 @@
- "'test' in hostvars[item]"
- hostvars[item]['test'] == 123
loop: "{{ groups['all'] | difference(['localhost']) }}"
+
+
+- name: test that we don't polute whole group with one value
+ hosts: localhost
+ gather_facts: no
+ vars:
+ cluster_name: bleh
+ tasks:
+ - name: construct different fact per host in loop
+ set_fact:
+ vm_name: "{{ cluster_name }}-{{item}}"
+ delegate_to: "{{ item }}"
+ delegate_facts: True
+ with_items: "{{ groups['all'] }}"
+
+ - name: ensure the fact is personalized for each host
+ assert:
+ that:
+ - hostvars[item]['vm_name'].endswith(item)
+ loop: "{{ groups['all'] }}"
--
2.30.2

View File

@ -1,21 +1,16 @@
# Is this a nightly build?
%global nightly 0
# We need this because we are no longer noarch, since our bundled deps might
# conceivably need to compile arch-specific things. But we currently have no
# useful debuginfo stuff.
%global debug_package %{nil}
%if 0%{?nightly}
%global snap %(date +'%Y%m%d')git
%global nightly_pretag .dev0
%endif
# Disable shebang munging for specific paths. These files are data files.
# ansible-test munges the shebangs itself.
%global __brp_mangle_shebangs_exclude_from_file %{SOURCE1}
%global commitId 6c75cf5c83da044d1fd69bc444ce4de50d728d09
# Filter requires on jinja2 since bundled
%global __requires_exclude jinja2
%global commitId c1bb0c6ab89a344bdcc07ef66887c310e661e3a6
%global python39_sitelib /usr/lib/python3.9/site-packages/
# RHEL and Fedora add -s to the shebang line. We do *not* use -s -E -S or -I
@ -31,6 +26,8 @@
%define vendor_pip /usr/bin/python3.9 -m pip install --no-deps -v --no-use-pep517 --no-binary :all: -t %{vendor_path}
# These control which bundled dep versions we pin against
%global jinja2_version 3.1.2
%global markupsafe_version 2.1.0
%global packaging_version 20.4
%global pyparsing_version 2.4.7
%global straightplugin_version 1.4.1
@ -38,30 +35,22 @@
Name: ansible-core
Summary: SSH-based configuration management, deployment, and task execution system
Version: 2.12.2
%if 0%{?nightly}
Release: 0.1.%{snap}%{?dist}
%else
Release: 2%{?dist}
%endif
Version: 2.13.3
Release: 1%{?dist}
Group: Development/Libraries
License: GPLv3+
%if 0%{?nightly}
Source0: %{name}-%{version}%{nightly_pretag}.tar.gz
%else
Source0: ansible-%{commitId}.tar.gz
%endif
Source1: ansible-test-data-files.txt
# And bundled deps
Source2: packaging-ded06cedf6e20680eea0363fac894cb4a09e7831.tar.gz
Source3: pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605.tar.gz
Source2: jinja2-b08cd4bc64bb980df86ed2876978ae5735572280.tar.gz
Source3: markupsafe-b5a517506d6cb8091e215a4a89e47db5eee6a68f.tar.gz
Source4: packaging-ded06cedf6e20680eea0363fac894cb4a09e7831.tar.gz
Source5: pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605.tar.gz
# Deps to build man pages
Source5: straightplugin-6634ea8e1e89d5bb23804f50e676f196c52c46ed.tar.gz
Patch0: 0001-Fix-final-fact-delegation-77008-77017.patch
Source6: straightplugin-6634ea8e1e89d5bb23804f50e676f196c52c46ed.tar.gz
URL: http://ansible.com
@ -75,32 +64,32 @@ Obsoletes: ansible-base
# Bundled provides that are sprinkled throughout the codebase.
Provides: bundled(python-backports-ssl_match_hostname) = 3.7.0.1
Provides: bundled(python-distro) = 1.5.0
Provides: bundled(python-distro) = 1.6.0
Provides: bundled(python-selectors2) = 1.1.1
Provides: bundled(python-six) = 1.13.0
Provides: bundled(python-six) = 1.16.0
# Things we explicitly bundle via src rpm, and put in ansible._vendor
Provides: bundled(python-jinja2) = %{jinja2_version}
Provides: bundled(python-markupsafe) = %{markupsafe_version}
Provides: bundled(python-packaging) = %{packaging_version}
Provides: bundled(python-pyparsing) = %{pyparsing_version}
Provides: bundled(python-straightplugin) = %{straightplugin_version}
BuildRequires: python3-devel
BuildRequires: python3-docutils
BuildRequires: python3-jinja2
BuildRequires: python3-pip
BuildRequires: python3-pyyaml
BuildRequires: python3-resolvelib
BuildRequires: python3-rpm-macros
BuildRequires: python3-setuptools
BuildRequires: python3-wheel
BuildRequires: make git-core
BuildRequires: make git-core gcc
Requires: git
Requires: git-core
Requires: python3
Requires: python3-jinja2
Requires: python3-PyYAML
Requires: python3-PyYAML >= 5.1
Requires: python3-cryptography
Requires: python3-resolvelib
Requires: python3-resolvelib >= 0.5.3
Requires: python3-six
Requires: sshpass
@ -126,11 +115,12 @@ This package installs the ansible-test command for testing modules and plugins
developed for ansible.
%prep
%setup -q -T -b 2 -n packaging-ded06cedf6e20680eea0363fac894cb4a09e7831
%setup -q -T -b 3 -n pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605
%setup -q -T -b 5 -n straightplugin-6634ea8e1e89d5bb23804f50e676f196c52c46ed
%setup -q -T -b 2 -n jinja2-b08cd4bc64bb980df86ed2876978ae5735572280
%setup -q -T -b 3 -n markupsafe-b5a517506d6cb8091e215a4a89e47db5eee6a68f
%setup -q -T -b 4 -n packaging-ded06cedf6e20680eea0363fac894cb4a09e7831
%setup -q -T -b 5 -n pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605
%setup -q -T -b 6 -n straightplugin-6634ea8e1e89d5bb23804f50e676f196c52c46ed
%setup -q -n ansible-%{commitId}
%patch0 -p 1
%build
/usr/bin/python3.9 setup.py build
@ -140,8 +130,10 @@ developed for ansible.
# Handle bundled deps:
%{vendor_pip} \
../pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605/ \
../packaging-ded06cedf6e20680eea0363fac894cb4a09e7831/
../jinja2-b08cd4bc64bb980df86ed2876978ae5735572280/ \
../markupsafe-b5a517506d6cb8091e215a4a89e47db5eee6a68f/ \
../packaging-ded06cedf6e20680eea0363fac894cb4a09e7831/ \
../pyparsing-6a844ee35ca5125490a28dbd6dd2d15b6498e605/
# Create system directories that Ansible defines as default locations in
# ansible/config/base.yml
@ -208,14 +200,44 @@ cp -p lib/ansible_core.egg-info/PKG-INFO .
%{_datadir}/ansible/
%{python39_sitelib}/ansible*
%exclude %{python39_sitelib}/ansible_test
%exclude %{python39_sitelib}/ansible/_vendor/markupsafe/_speedups.c
%files -n ansible-test
%{_bindir}/ansible-test
%{python39_sitelib}/ansible_test
%changelog
* Tue Jul 19 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.12.2-2
- fix facts delegation loop overwrite (rhbz#2108651)
* Mon Aug 15 2022 James Marshall <jamarsha@redhat.com> - 2.13.3-1
- ansible-core 2.13.3 release (rhbz#2118458)
* Mon Jul 18 2022 James Marshall <jamarsha@redhat.com> - 2.13.2-1
- ansible-core 2.13.2 release (rhbz#2108229)
* Mon Jun 27 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.13.1-2
- Update bundled jinja2 version to 3.1.2 (rhbz#2101462)
* Wed Jun 22 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.13.1-1
- ansible-core 2.13.1 release (rhbz#2100242)
- add bundled version of jinja2 and markupsafe
* Mon Jun 20 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.12.7-1
- ansible-core 2.12.7 release (rhbz#2099317)
- remove legacy nightly configuration
* Tue May 24 2022 James Marshall <jamarsha@redhat.com> - 2.12.6-1
- ansible-core 2.12.6 release
* Fri May 13 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.12.5-2
- switch from git to git-core dependency (rhbz#2083386)
* Mon May 09 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.12.5-1
- ansible-core 2.12.5 release
* Wed Apr 06 2022 James Marshall <jamarsha@redhat.com> - 2.12.4-1
- ansible-core 2.12.4 release
* Mon Mar 14 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.12.3-1
- ansible-core 2.12.3 release
* Tue Feb 01 2022 Dimitri Savineau <dsavinea@redhat.com> - 2.12.2-1
- ansible-core 2.12.2 release