diff --git a/0001-Changes-to-support-building-docs-with-old-jinja2.patch b/0001-Changes-to-support-building-docs-with-old-jinja2.patch deleted file mode 100644 index 0ba8faecf11d6368f07c25762622490096f06631..0000000000000000000000000000000000000000 --- a/0001-Changes-to-support-building-docs-with-old-jinja2.patch +++ /dev/null @@ -1,194 +0,0 @@ -From e348dc28e922c29e0ab1fd61be24ecc6616e34ed Mon Sep 17 00:00:00 2001 -From: Toshio Kuratomi -Date: Mon, 25 Jun 2018 11:27:15 -0700 -Subject: [PATCH] Changes to support building docs with old jinja2 - -This commit: fa5c0282a4816c4dd48e80b983ffc1e14506a1f5 relied upon -features present in Jinja-2.10 and above. The changes here allow us to -build the *rst* with older versions of jinja2. ---- - docs/bin/plugin_formatter.py | 30 +++++++++++++++++ - docs/templates/plugin.rst.j2 | 80 ++++++++++++++++++++++---------------------- - 2 files changed, 70 insertions(+), 40 deletions(-) - -diff --git a/docs/bin/plugin_formatter.py b/docs/bin/plugin_formatter.py -index 5df8b3d86e..330a7540ab 100755 ---- a/docs/bin/plugin_formatter.py -+++ b/docs/bin/plugin_formatter.py -@@ -85,6 +85,28 @@ pp = PrettyPrinter() - display = Display() - - -+# kludge_ns gives us a kludgey way to set variables inside of loops that need to be visible outside -+# the loop. We can get rid of this when we no longer need to build docs with less than Jinja-2.10 -+# http://jinja.pocoo.org/docs/2.10/templates/#assignments -+# With Jinja-2.10 we can use jinja2's namespace feature, restoring the namespace template portion -+# of: fa5c0282a4816c4dd48e80b983ffc1e14506a1f5 -+NS_MAP = {} -+ -+ -+def to_kludge_ns(key, value): -+ NS_MAP[key] = value -+ return "" -+ -+ -+def from_kludge_ns(key): -+ return NS_MAP[key] -+ -+ -+# The max filter was added in Jinja2-2.10. Until we can require that version, use this -+def do_max(seq): -+ return max(seq) -+ -+ - def rst_ify(text): - ''' convert symbols like I(this is in italics) to valid restructured text ''' - -@@ -298,6 +320,14 @@ def jinja2_environment(template_dir, typ, plugin_type): - trim_blocks=True) - env.globals['xline'] = rst_xline - -+ # Can be removed (and template switched to use namespace) when we no longer need to build -+ # with -- {# Pre-compute the nesting depth to allocate columns #} -- {% set ns = namespace(maxdepth=1) %} -- {% for key, value in options|dictsort recursive %} -- {% set ns.maxdepth = [loop.depth, ns.maxdepth] | max %} -- {% if value.suboptions %} -- {% if value.suboptions.items %} -- @{ loop(value.suboptions.items()) }@ -- {% elif value.suboptions[0].items %} -- @{ loop(value.suboptions[0].items()) }@ -- {% endif %} -- {% endif %} -- {% endfor %} -- {# Header of the documentation #} -+ {# Pre-compute the nesting depth to allocate columns -#} -+ @{ to_kludge_ns('maxdepth', 1) -}@ -+ {% for key, value in options|dictsort recursive -%} -+ @{ to_kludge_ns('maxdepth', [loop.depth, from_kludge_ns('maxdepth')] | max) -}@ -+ {% if value.suboptions -%} -+ {% if value.suboptions.items -%} -+ @{ loop(value.suboptions.items()) -}@ -+ {% elif value.suboptions[0].items -%} -+ @{ loop(value.suboptions[0].items()) -}@ -+ {% endif -%} -+ {% endif -%} -+ {% endfor -%} -+ {# Header of the documentation -#} - -- Parameter -+ Parameter - Choices/Defaults - {% if plugin_type != 'module' %} - Configuration -@@ -116,7 +116,7 @@ Parameters - - {% endfor %} - {# parameter name with required and/or introduced label #} -- -+ - @{ key }@ - {% if value.get('required', False) %}
required
{% endif %} - {% if value.version_added %}
(added in @{value.version_added}@)
{% endif %} -@@ -246,19 +246,19 @@ Facts returned by this module are added/updated in the ``hostvars`` host facts a - - - {# Pre-compute the nesting depth to allocate columns #} -- {% set ns = namespace(maxdepth=1) %} -+ @{ to_kludge_ns('maxdepth', 1) -}@ - {% for key, value in returnfacts|dictsort recursive %} -- {% set ns.maxdepth = [loop.depth, ns.maxdepth] | max %} -- {% if value.contains %} -- {% if value.contains.items %} -- @{ loop(value.contains.items()) }@ -- {% elif value.contains[0].items %} -- @{ loop(value.contains[0].items()) }@ -- {% endif %} -- {% endif %} -- {% endfor %} -+ @{ to_kludge_ns('maxdepth', [loop.depth, from_kludge_ns('maxdepth')] | max) -}@ -+ {% if value.contains -%} -+ {% if value.contains.items -%} -+ @{ loop(value.contains.items()) -}@ -+ {% elif value.contains[0].items -%} -+ @{ loop(value.contains[0].items()) -}@ -+ {% endif -%} -+ {% endif -%} -+ {% endfor -%} - -- -+ - - - -@@ -267,7 +267,7 @@ Facts returned by this module are added/updated in the ``hostvars`` host facts a - {% for i in range(1, loop.depth) %} - - {% endfor %} -- -@@ -317,19 +317,19 @@ Common return values are documented :ref:`here `, the foll - .. raw:: html - -
FactFactReturnedDescription
-+ - @{ key }@ -
@{ value.type }@
-
-- {% set ns = namespace(maxdepth=1) %} -- {% for key, value in returndocs|dictsort recursive %} -- {% set ns.maxdepth = [loop.depth, ns.maxdepth] | max %} -- {% if value.contains %} -- {% if value.contains.items %} -- @{ loop(value.contains.items()) }@ -- {% elif value.contains[0].items %} -- @{ loop(value.contains[0].items()) }@ -- {% endif %} -- {% endif %} -- {% endfor %} -+ @{ to_kludge_ns('maxdepth', 1) -}@ -+ {% for key, value in returndocs|dictsort recursive -%} -+ @{ to_kludge_ns('maxdepth', [loop.depth, from_kludge_ns('maxdepth')] | max) -}@ -+ {% if value.contains -%} -+ {% if value.contains.items -%} -+ @{ loop(value.contains.items()) -}@ -+ {% elif value.contains[0].items -%} -+ @{ loop(value.contains[0].items()) -}@ -+ {% endif -%} -+ {% endif -%} -+ {% endfor -%} - -- -+ - - - -@@ -338,7 +338,7 @@ Common return values are documented :ref:`here `, the foll - {% for i in range(1, loop.depth) %} - - {% endfor %} -- --- -2.14.4 - diff --git a/ansible-2.5.5.tar.gz b/ansible-2.9.0.tar.gz similarity index 49% rename from ansible-2.5.5.tar.gz rename to ansible-2.9.0.tar.gz index c8e9e8a6bd3ff929a045dd32ead29e793bf08d29..98245d8eece44865ec0f9af0e0ba751e1e17a750 100644 Binary files a/ansible-2.5.5.tar.gz and b/ansible-2.9.0.tar.gz differ diff --git a/ansible-newer-jinja.patch b/ansible-newer-jinja.patch deleted file mode 100644 index c3930673c8f98457ddd91436c563a9f5a1c991c5..0000000000000000000000000000000000000000 --- a/ansible-newer-jinja.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -Nur ansible-2.4.1.0.orig/requirements.txt ansible-2.4.1.0/requirements.txt ---- ansible-2.4.1.0.orig/requirements.txt 2017-10-25 16:05:04.000000000 -0700 -+++ ansible-2.4.1.0/requirements.txt 2017-10-30 14:41:31.202896847 -0700 -@@ -3,8 +3,8 @@ - # packages. Thus, this should be the loosest set possible (only required - # packages, not optional ones, and with the widest range of versions that could - # be suitable) --jinja2 -+jinja2 >= 2.6 - PyYAML - paramiko --cryptography -+pycrypto >= 2.6 - setuptools diff --git a/ansible.spec b/ansible.spec index 65aaa38a9c5e7bc2c8da9e476ac9f3b30b40cb95..e378369474612240de898645db7e4a9ab3f6739a 100644 --- a/ansible.spec +++ b/ansible.spec @@ -1,14 +1,20 @@ %global with_docs 0 %global with_python3 1 +%global common_desc \ + Ansible is a radically simple model-driven configuration management,\ + multi-node deployment, and remote task execution system. Ansible works \ + over SSH and does not require any software or daemons to be installed \ + on remote nodes. Extension modules can be written in any language and \ + are transferred to managed machines automatically. \ + This package installs versions of ansible that execute on Python3. + Name: ansible Summary: SSH-based configuration management, deployment, and task execution system -Version: 2.5.5 +Version: 2.9.0 Release: 1 License: Python-2.0 and MIT and GPL+ Url: http://ansible.com Source0: https://releases.ansible.com/ansible/%{name}-%{version}.tar.gz -Patch0: 0001-Changes-to-support-building-docs-with-old-jinja2.patch -Patch100: ansible-newer-jinja.patch BuildArch: noarch Provides: ansible-fireball = %{version}-%{release} Obsoletes: ansible-fireball < 1.2.4 @@ -18,11 +24,8 @@ Requires: python3-setuptools python3-six sshpass python3-httplib2 Requires: python3-jmespath python3-jinja2 Recommends: %{name}-help = %{version}-%{release} %description -Ansible is a radically simple model-driven configuration management, -multi-node deployment, and remote task execution system. Ansible works -over SSH and does not require any software or daemons to be installed -on remote nodes. Extension modules can be written in any language and -are transferred to managed machines automatically. +%{common_desc} + %if 0%{?with_python3} Provides: ansible-python3 = %{version}-%{release} Obsoletes: ansible-python3 < %{version}-%{release} @@ -39,12 +42,8 @@ BuildRequires: python3-boto3 python3-botocore python3-passlib python3-jinj Requires: python3-PyYAML python3-paramiko python3-crypto python3-setuptools python3-six Requires: python3-jinja2 sshpass python3-jmespath %description -Ansible is a radically simple model-driven configuration management, -multi-node deployment, and remote task execution system. Ansible works -over SSH and does not require any software or daemons to be installed -on remote nodes. Extension modules can be written in any language and -are transferred to managed machines automatically. -This package installs versions of ansible that execute on Python3. +%{common_desc} + %endif %package -n ansible-help @@ -52,17 +51,10 @@ Summary: Documentation for Ansible Provides: %{name}-doc = %{name}-%{release} Obsoletes: %{name}-doc < %{name}-%{release} %description -n ansible-help -Ansible is a radically simple model-driven configuration management, -multi-node deployment, and remote task execution system. Ansible works -over SSH and does not require any software or daemons to be installed -on remote nodes. Extension modules can be written in any language and -are transferred to managed machines automatically. -This package installs extensive documentation for ansible +%{common_desc} %prep %setup -q -%patch0 -p1 -%patch100 -p1 %if 0%{?with_python3} rm -rf %{py3dir} cp -a . %{py3dir} @@ -110,7 +102,6 @@ cp -pr docs/docsite/rst . %defattr(-,root,root) %{_bindir}/ansible* %config(noreplace) %{_sysconfdir}/ansible/ -%doc README.rst PKG-INFO COPYING changelogs/CHANGELOG-v2.5.rst %doc %{_mandir}/man1/ansible* %if 0%{?with_python3} %{python3_sitelib}/ansible* @@ -123,5 +114,9 @@ cp -pr docs/docsite/rst . %endif %changelog +* Mon Jul 12 2021 liksh - 2.9.0-1 +- update to 2.9.0 + * Tue Jan 12 2021 yanan li - 2.5.5-1 - Package init +
KeyKeyReturnedDescription
  -+ - @{ key }@ -
@{ value.type }@
-