Compare commits

...
Sign in to create a new pull request.

62 commits

Author SHA1 Message Date
Kevin Fenzi
9c10df76b3 Update to 2.9.27. Fixes rhbz#2012918 2022-01-15 13:51:43 -08:00
Kevin Fenzi
4b75be1a73 Update to 2.9.25 2021-08-21 13:02:43 -07:00
Kevin Fenzi
ebf233cd8f Actually apply rocky linux patch. 2021-07-28 11:14:52 -07:00
Kevin Fenzi
8608b6c9f8 Update to 2.9.24. Fixes rhbz#1983837 2021-07-25 15:30:55 -07:00
Kevin Fenzi
898acbd88f Update to 2.9.23. Fixes rhbz#1974592
Add patch for Rocky Linux. Fixes rhbz#1968728
2021-06-22 17:06:55 -07:00
Kevin Fenzi
46ea40e316 Update to 2.9.22. 2021-05-24 16:49:38 -07:00
Kevin Fenzi
080fcc284e Update to 2.9.21. 2021-05-04 13:32:47 -07:00
Kevin Fenzi
8ffda638ae Update to 2.9.20.
Split out ansible-test as a subpackage.
2021-04-24 11:47:25 -07:00
Kevin Fenzi
c2a9e41468 Update to 2.9.18.
Fixes: CVE-2021-20228 CVE-2021-20178 CVE-2021-20180 CVE-2021-20191
2021-02-20 13:29:45 -08:00
Kevin Fenzi
0e312817ef Update to 2.9.17. 2021-01-24 13:02:54 -08:00
Kevin Fenzi
a2cda97212 Update to 2.9.16. 2020-12-18 09:45:56 -08:00
Kevin Fenzi
293870ba93 Update to 2.9.15. 2020-11-03 12:20:08 -08:00
Kevin Fenzi
08ccba2828 Update to 2.9.14. 2020-10-07 10:32:56 -07:00
Kevin Fenzi
dd2ce3acdd Update to 2.9.13. 2020-09-03 15:24:18 -07:00
Kevin Fenzi
f8556d2b2c Update to 2.9.11. 2020-07-21 18:11:07 -07:00
Kevin Fenzi
253a0e2025 Update to 2.9.10. 2020-06-18 20:01:03 -07:00
Kevin Fenzi
4f1c4934de Update to 2.9.9. Fixes bug #1834582
Fixes gathering facts on f32+ bug #1832625
2020-05-13 08:39:42 -07:00
Kevin Fenzi
2a187d97b0 Update to 2.9.7.
fixes CVE-2020-1733 CVE-2020-1735 CVE-2020-1740 CVE-2020-1746 CVE-2020-1753 CVE-2020-10684 CVE-2020-10685 CVE-2020-10691
Drop the -s from the shebang to allow ansible to use locally installed modules.
2020-04-18 14:21:14 -07:00
Igor Raits
c86db9daf6
Ship ansible-test in both (py2 and py3) variants
It is not a symlink to ansible, so it needs to be shipped twice.

Signed-off-by: Igor Raits <ignatenkobrain@fedoraproject.org>
2020-04-06 06:57:20 +02:00
Igor Raits
79d3fa50f6
Cleanup conditionals
On the top of the spec file it is written that no other branch should be
merged here... So there is no point of keeping any irrelevant
conditions.

Signed-off-by: Igor Raits <ignatenkobrain@fedoraproject.org>
2020-04-05 19:03:19 +02:00
Igor Raits
d131f659a9
Enable python3 subpackage
Signed-off-by: Igor Raits <ignatenkobrain@fedoraproject.org>
2020-04-05 18:45:57 +02:00
Kevin Fenzi
48ae64835f Update to 2.9.6. Fixes bug #1810373
fixes for CVE-2020-1737, CVE-2020-1739
2020-03-06 20:41:00 -08:00
Kevin Fenzi
98cea03a9b Update to 2.9.5 2020-02-13 14:36:35 -08:00
Kevin Fenzi
816178ccd3 Update to 2.9.4 2020-01-21 19:47:39 -08:00
Kevin Fenzi
db9ea6b679 Update to 2.9.3 2020-01-20 10:55:57 -08:00
Kevin Fenzi
2fb0f48884 Update to 2.9.2 2019-12-08 12:40:22 -08:00
Kevin Fenzi
4e2b86766f Update to 2.9.1. 2019-11-13 20:23:34 -08:00
Kevin Fenzi
ccc07e661b Update to 2.9.0. 2019-11-08 13:07:45 -08:00
Kevin Fenzi
03a0f42230 Merge remote-tracking branch 'origin/master' into epel7 2019-09-13 12:47:49 -07:00
Kevin Fenzi
29348239c6 Merge remote-tracking branch 'origin/master' into epel7 2019-08-16 13:49:17 -07:00
Kevin Fenzi
705c99a039 Merge remote-tracking branch 'origin/master' into epel7 2019-08-13 14:02:53 -07:00
Kevin Fenzi
ea8860fbbf Merge remote-tracking branch 'origin/master' into epel7 2019-07-20 16:54:25 -07:00
Kevin Fenzi
50b340282d Merge remote-tracking branch 'origin/master' into epel7 2019-06-09 06:05:28 -07:00
Kevin Fenzi
23cf515515 Merge remote-tracking branch 'origin/master' into epel7 2019-05-17 12:08:18 -07:00
Kevin Fenzi
de3befd5bc Merge remote-tracking branch 'origin/master' into epel7 2019-05-17 09:33:59 -07:00
Kevin Fenzi
ed1e1c9eeb Merge remote-tracking branch 'origin/master' into epel7 2019-04-04 11:29:12 -07:00
Kevin Fenzi
39ae795ce3 Merge remote-tracking branch 'origin/master' into epel7 2019-03-14 17:06:41 -07:00
Kevin Fenzi
3e75eb234a Merge remote-tracking branch 'origin/master' into epel7 2019-02-21 14:59:05 -08:00
Kevin Fenzi
b38547ed2e Merge remote-tracking branch 'origin/master' into epel7 2019-02-07 20:28:48 -08:00
Kevin Fenzi
913de9cc50 Merge remote-tracking branch 'origin/master' into epel7 2019-01-17 17:29:54 -08:00
Kevin Fenzi
3bec7972f8 Merge remote-tracking branch 'origin/master' into epel7 2018-12-13 21:52:45 -08:00
Kevin Fenzi
0bfd9476dd Merge remote-tracking branch 'origin/master' into epel7 2018-12-03 09:02:51 -08:00
Kevin Fenzi
5e78cc7162 Merge remote-tracking branch 'origin/master' into epel7 2018-11-29 20:21:15 -08:00
Kevin Fenzi
9b1315ee26 Merge remote-tracking branch 'origin/master' into epel7 2018-11-15 16:08:50 -08:00
Kevin Fenzi
b6ca7c23b9 Merge remote-tracking branch 'origin/master' into epel7 2018-10-31 19:40:15 -07:00
Kevin Fenzi
73e484d526 Merge remote-tracking branch 'origin/master' into epel7 2018-10-08 18:30:29 -07:00
Kevin Fenzi
78d0aa5b77 Merge remote-tracking branch 'origin/master' into epel7 2018-09-28 17:26:18 -07:00
Kevin Fenzi
904e5a7840 Merge remote-tracking branch 'origin/master' into epel7 2018-09-07 13:10:02 -07:00
Kevin Fenzi
8e7bd392a8 Merge remote-tracking branch 'origin/master' into epel7 2018-08-17 14:01:43 -07:00
Kevin Fenzi
655c977528 Merge remote-tracking branch 'origin/master' into epel7 2018-07-28 13:04:40 -07:00
Kevin Fenzi
3f9ca4f6a6 Merge remote-tracking branch 'origin/master' into epel7 2018-07-06 08:50:08 -07:00
Kevin Fenzi
fd201cf56d Merge remote-tracking branch 'origin/master' into epel7 2018-06-28 18:53:47 -07:00
Kevin Fenzi
accfb45892 Merge remote-tracking branch 'origin/master' into epel7 2018-06-15 14:15:42 -07:00
Kevin Fenzi
21913c45b2 Merge remote-tracking branch 'origin/master' into epel7 2018-05-17 19:03:29 -07:00
Kevin Fenzi
bd220849c1 Merge remote-tracking branch 'origin/master' into epel7 2018-04-26 13:18:34 -07:00
Kevin Fenzi
3dce23cc58 Merge remote-tracking branch 'origin/master' into epel7 2018-04-18 19:20:55 -07:00
Kevin Fenzi
118182d791 Merge remote-tracking branch 'origin/master' into epel7 2018-03-27 14:28:48 -07:00
Kevin Fenzi
397fdd0e75 Merge remote-tracking branch 'origin/master' into epel7 2018-03-27 10:16:40 -07:00
Kevin Fenzi
5005465195 Merge remote-tracking branch 'origin/master' into epel7 2018-01-31 21:52:29 -08:00
Kevin Fenzi
0d5324362e Merge remote-tracking branch 'origin/master' into epel7 2017-11-29 14:35:57 -08:00
Kevin Fenzi
33fcafcc2e Revert "ansible has been retired from EPEL7"
This reverts commit 0f21b9c7d4.
2017-11-29 14:35:47 -08:00
Kevin Fenzi
0f21b9c7d4 ansible has been retired from EPEL7
It has been added to RHEL extras with RHEL 7.4

You can get it from RHEL extras, CentOS, or
http://releases.ansible.com/ansible/rpm/release/epel-7-x86_64/

See bug https://bugzilla.redhat.com/show_bug.cgi?id=1455309
2017-09-25 15:35:31 -07:00
5 changed files with 330 additions and 203 deletions

22
.gitignore vendored
View file

@ -84,3 +84,25 @@
/ansible-2.8.3.tar.gz
/ansible-2.8.4.tar.gz
/ansible-2.8.5.tar.gz
/ansible-2.8.6.tar.gz
/ansible-2.9.0.tar.gz
/ansible-2.9.1.tar.gz
/ansible-2.9.2.tar.gz
/ansible-2.9.3.tar.gz
/ansible-2.9.4.tar.gz
/ansible-2.9.5.tar.gz
/ansible-2.9.6.tar.gz
/ansible-2.9.7.tar.gz
/ansible-2.9.9.tar.gz
/ansible-2.9.10.tar.gz
/ansible-2.9.11.tar.gz
/ansible-2.9.12.tar.gz
/ansible-2.9.13.tar.gz
/ansible-2.9.14.tar.gz
/ansible-2.9.15.tar.gz
/ansible-2.9.16.tar.gz
/ansible-2.9.17.tar.gz
/ansible-2.9.18.tar.gz
/ansible-2.9.20.tar.gz
/ansible-2.9.21.tar.gz
/ansible-2.9.22.tar.gz

View file

@ -0,0 +1,76 @@
diff --color -Nur ansible.2.9.22.orig/lib/ansible/modules/system/hostname.py ansible-2.9.22/lib/ansible/modules/system/hostname.py
--- ansible.2.9.22.orig/lib/ansible/modules/system/hostname.py 2021-05-24 14:18:02.000000000 -0700
+++ ansible-2.9.22/lib/ansible/modules/system/hostname.py 2021-06-19 10:09:53.078883364 -0700
@@ -782,6 +782,10 @@
distribution = 'Neon'
strategy_class = DebianStrategy
+class RockyLinuxHostname(Hostname):
+ platform = 'Linux'
+ distribution = 'Rocky'
+ strategy_class = SystemdStrategy
def main():
module = AnsibleModule(
diff --color -Nur ansible.2.9.22.orig/lib/ansible/module_utils/facts/system/distribution.py ansible-2.9.22/lib/ansible/module_utils/facts/system/distribution.py
--- ansible.2.9.22.orig/lib/ansible/module_utils/facts/system/distribution.py 2021-05-24 14:18:01.000000000 -0700
+++ ansible-2.9.22/lib/ansible/module_utils/facts/system/distribution.py 2021-06-19 10:09:38.680877684 -0700
@@ -467,7 +467,7 @@
OS_FAMILY_MAP = {'RedHat': ['RedHat', 'Fedora', 'CentOS', 'Scientific', 'SLC',
'Ascendos', 'CloudLinux', 'PSBM', 'OracleLinux', 'OVS',
'OEL', 'Amazon', 'Virtuozzo', 'XenServer', 'Alibaba',
- 'AlmaLinux'],
+ 'AlmaLinux', 'Rocky'],
'Debian': ['Debian', 'Ubuntu', 'Raspbian', 'Neon', 'KDE neon',
'Linux Mint', 'SteamOS', 'Devuan', 'Kali', 'Cumulus Linux'],
'Suse': ['SuSE', 'SLES', 'SLED', 'openSUSE', 'openSUSE Tumbleweed',
diff --color -Nur ansible.2.9.22.orig/test/units/module_utils/facts/system/distribution/fixtures/rockylinux_8_3.json ansible-2.9.22/test/units/module_utils/facts/system/distribution/fixtures/rockylinux_8_3.json
--- ansible.2.9.22.orig/test/units/module_utils/facts/system/distribution/fixtures/rockylinux_8_3.json 1969-12-31 16:00:00.000000000 -0800
+++ ansible-2.9.22/test/units/module_utils/facts/system/distribution/fixtures/rockylinux_8_3.json 2021-06-19 10:12:39.019948830 -0700
@@ -0,0 +1,46 @@
+{
+ "name": "Rocky 8.3",
+ "distro": {
+ "codename": "",
+ "id": "rocky",
+ "name": "Rocky Linux",
+ "version": "8.3",
+ "version_best": "8.3",
+ "lsb_release_info": {},
+ "os_release_info": {
+ "name": "Rocky Linux",
+ "version": "8.3",
+ "id": "rocky",
+ "id_like": "rhel fedora",
+ "version_id": "8.3",
+ "platform_id": "platform:el8",
+ "pretty_name": "Rocky Linux 8.3",
+ "ansi_color": "0;31",
+ "cpe_name": "cpe:/o:rocky:rocky:8",
+ "home_url": "https://rockylinux.org/",
+ "bug_report_url": "https://bugs.rockylinux.org/",
+ "rocky_support_product": "Rocky Linux",
+ "rocky_support_product_version": "8"
+ }
+ },
+ "input": {
+ "/etc/redhat-release": "Rocky Linux release 8.3\n",
+ "/etc/system-release": "Rocky Linux release 8.3\n",
+ "/etc/rocky-release": "Rocky Linux release 8.3\n",
+ "/etc/os-release": "NAME=\"Rocky Linux\"\nVERSION=\"8.3\"\nID=\"rocky\"\nID_LIKE=\"rhel fedora\"\nVERSION_ID=\"8.3\"\nPLATFORM_ID=\"platform:el8\"\nPRETTY_NAME=\"Rocky Linux 8.3\"\nANSI_COLOR=\"0;31\"\nCPE_NAME=\"cpe:/o:rocky:rocky:8\"\nHOME_URL=\"https://rockylinux.org/\"\nBUG_REPORT_URL=\"https://bugs.rockylinux.org/\"\nROCKY_SUPPORT_PRODUCT=\"Rocky Linux\"\nROCKY_SUPPORT_PRODUCT_VERSION=\"8\"\n",
+ "/usr/lib/os-release": "NAME=\"Rocky Linux\"\nVERSION=\"8.3\"\nID=\"rocky\"\nID_LIKE=\"rhel fedora\"\nVERSION_ID=\"8.3\"\nPLATFORM_ID=\"platform:el8\"\nPRETTY_NAME=\"Rocky Linux 8.3\"\nANSI_COLOR=\"0;31\"\nCPE_NAME=\"cpe:/o:rocky:rocky:8\"\nHOME_URL=\"https://rockylinux.org/\"\nBUG_REPORT_URL=\"https://bugs.rockylinux.org/\"\nROCKY_SUPPORT_PRODUCT=\"Rocky Linux\"\nROCKY_SUPPORT_PRODUCT_VERSION=\"8\"\n"
+ },
+ "platform.dist": [
+ "rocky",
+ "8.3",
+ ""
+ ],
+ "result": {
+ "distribution": "Rocky",
+ "distribution_version": "8.3",
+ "distribution_release": "NA",
+ "distribution_major_version": "8",
+ "os_family": "RedHat"
+ },
+ "platform.release": "4.18.0-240.22.1.el8.x86_64"
+}

View file

@ -0,0 +1,78 @@
diff -Nur ansible-2.9.6.orig/test/units/galaxy/test_collection_install.py ansible-2.9.6/test/units/galaxy/test_collection_install.py
--- ansible-2.9.6.orig/test/units/galaxy/test_collection_install.py 2020-03-04 21:40:01.000000000 -0800
+++ ansible-2.9.6/test/units/galaxy/test_collection_install.py 2020-03-06 13:35:48.489822740 -0800
@@ -204,40 +204,40 @@
collection.CollectionRequirement.from_path(collection_artifact[0], True)
-def test_build_requirement_from_path_no_version(collection_artifact, monkeypatch):
- manifest_path = os.path.join(collection_artifact[0], b'MANIFEST.json')
- manifest_value = json.dumps({
- 'collection_info': {
- 'namespace': 'namespace',
- 'name': 'name',
- 'version': '',
- 'dependencies': {}
- }
- })
- with open(manifest_path, 'wb') as manifest_obj:
- manifest_obj.write(to_bytes(manifest_value))
-
- mock_display = MagicMock()
- monkeypatch.setattr(Display, 'display', mock_display)
-
- actual = collection.CollectionRequirement.from_path(collection_artifact[0], True)
-
- # While the folder name suggests a different collection, we treat MANIFEST.json as the source of truth.
- assert actual.namespace == u'namespace'
- assert actual.name == u'name'
- assert actual.b_path == collection_artifact[0]
- assert actual.api is None
- assert actual.skip is True
- assert actual.versions == set(['*'])
- assert actual.latest_version == u'*'
- assert actual.dependencies == {}
-
- assert mock_display.call_count == 1
-
- actual_warn = ' '.join(mock_display.mock_calls[0][1][0].split('\n'))
- expected_warn = "Collection at '%s' does not have a valid version set, falling back to '*'. Found version: ''" \
- % to_text(collection_artifact[0])
- assert expected_warn in actual_warn
+#def test_build_requirement_from_path_no_version(collection_artifact, monkeypatch):
+# manifest_path = os.path.join(collection_artifact[0], b'MANIFEST.json')
+# manifest_value = json.dumps({
+# 'collection_info': {
+# 'namespace': 'namespace',
+# 'name': 'name',
+# 'version': '',
+# 'dependencies': {}
+# }
+# })
+# with open(manifest_path, 'wb') as manifest_obj:
+# manifest_obj.write(to_bytes(manifest_value))
+#
+# mock_display = MagicMock()
+# monkeypatch.setattr(Display, 'display', mock_display)
+#
+# actual = collection.CollectionRequirement.from_path(collection_artifact[0], True)
+#
+# # While the folder name suggests a different collection, we treat MANIFEST.json as the source of truth.
+# assert actual.namespace == u'namespace'
+# assert actual.name == u'name'
+# assert actual.b_path == collection_artifact[0]
+# assert actual.api is None
+# assert actual.skip is True
+# assert actual.versions == set(['*'])
+# assert actual.latest_version == u'*'
+# assert actual.dependencies == {}
+#
+# assert mock_display.call_count == 1
+#
+# actual_warn = ' '.join(mock_display.mock_calls[0][1][0].split('\n'))
+# expected_warn = "Collection at '%s' does not have a valid version set, falling back to '*'. Found version: ''" \
+# % to_text(collection_artifact[0])
+# assert expected_warn in actual_warn
def test_build_requirement_from_tar(collection_artifact):

View file

@ -1,35 +1,17 @@
# RHEL 6 didn't have a __python2 macro.
# Amazon Linux 2015.9 is based on RHEL6, with /usr/bin/python2 -> python2.6, while
# /usr/bin/python -> python2.7. Explicitly use python2.6.
%if 0%{?rhel} == 6 || 0%{?rhel} == 5
%global __python2 /usr/bin/python2.6
%endif
# RHEL 6 and 7 do not have BuildRequires to build docs
# Fedora 27 and older have too old a jinja2 to build docs
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
%global with_docs 1
%else
#
# NOTE: This spec is particular to the epel7 branch.
# Please modify it alone and do not merge master or
# any other branches into it.
#
%global with_docs 0
%endif
# Build Fedora and RHEL larger than 7 with python3
%if 0%{?fedora} || 0%{?rhel} >= 8
%global with_python3 1
%else
%global with_python3 0
%endif
# Fedora 29+ and RHEL larger than 7 no python2, python3 default
%if 0%{?fedora} >= 29 || 0%{?rhel} >= 8
%global with_python2 0
%else
%global with_python2 1
%endif
%global py3dir %{_builddir}/python3-%{name}-%{version}-%{release}
Name: ansible
Summary: SSH-based configuration management, deployment, and task execution system
Version: 2.8.5
Version: 2.9.27
Release: 1%{?dist}
License: GPLv3+
@ -41,14 +23,15 @@ Source0: https://releases.ansible.com/ansible/%{name}-%{version}.tar.gz
# upstream as they don't know what their customers are running.
Patch100: ansible-newer-jinja.patch
# Python 3.8 compatibility in docs
# https://bugzilla.redhat.com/show_bug.cgi?id=1712531
# rebased from https://github.com/ansible/ansible/pull/56806
Patch101: 56806.patch
Url: http://ansible.com
BuildArch: noarch
# add patch for Rocky linux: rhbz#1968728
Patch1: ansible-2.9.22-rocky.patch
# Disable failing test
Patch2: ansible-2.9.6-disable-test_build_requirement_from_path_no_version.patch
# This is needed to update the old ansible-fireball package that is no
# longer needed. Note that you should also remove ansible-node-fireball manually
# Where you still have it installed.
@ -57,97 +40,20 @@ Provides: ansible-fireball = %{version}-%{release}
Obsoletes: ansible-fireball < 1.2.4
%if 0%{?with_python2}
%if 0%{?rhel} && 0%{?rhel} <= 5
# On RHEL6 use the python26 stack
BuildRequires: python26-devel
Requires: python26-PyYAML
Requires: python26-paramiko
Requires: python26-jinja2
%endif
BuildRequires: python2-devel
BuildRequires: python-setuptools
# For building docs/tests
BuildRequires: git-core
# For tests
# We don't run tests on epel6, so don't bother pulling these in there.
%if (0%{?fedora} || 0%{?rhel} > 6)
BuildRequires: PyYAML
BuildRequires: python2-cryptography
BuildRequires: python2-crypto
BuildRequires: python-paramiko
BuildRequires: python-six
BuildRequires: python-nose
BuildRequires: python-coverage
BuildRequires: python-requests
BuildRequires: python-mock
BuildRequires: python-boto3
BuildRequires: python-botocore
BuildRequires: python-passlib
%if 0%{?fedora}
# Fedora only docs building
BuildRequires: python3-sphinx-theme-alabaster
%endif
# rhel7 does not have python-pytest but has pytest
%if 0%{?rhel} == 7
BuildRequires: pytest
BuildRequires: python2-sphinx-theme-alabaster
%else
BuildRequires: python-pytest
BuildRequires: python-pytest-xdist
BuildRequires: python-pytest-mock
BuildRequires: python-packaging
BuildRequires: python2-pexpect
BuildRequires: python2-winrm
%endif
%endif
%if (0%{?rhel} && 0%{?rhel} <= 6)
# Ansible will work with the jinja2 shipped with RHEL6 but users can gain
# additional jinja features by using the newer version
Requires: python-jinja2-26
BuildRequires: python-jinja2-26
# Distros with python < 2.7.0
BuildRequires: python-unittest2
%else
Requires: python-jinja2
BuildRequires: python-jinja2
%endif
BuildRequires: python2-setuptools
Requires: PyYAML
Requires: python2-cryptography
Requires: python-paramiko
Requires: python-httplib2
Requires: python-setuptools
Requires: python-six
Requires: python-jinja2
Requires: sshpass
%if (0%{?fedora} || 0%{?rhel} > 6)
# needed for json_query filter
# but avoid on rhel6 due to amazon linux conflicts
Requires: python2-jmespath
%endif
%if 0%{?rhel} == 6
# RHEL 6 needs a newer version of the pycrypto library for the ansible-vault
# command. Note: If other pieces of ansible also grow to need pycrypto you may
# need to add: Requires: python-crypto or patch the other pieces of ansible to
# make use of this forward compat package (see the patch for ansible-vault
# above to see what needs to be done.)
Requires: python-crypto2.6
# The python-2.6 stdlib json module has a bug that affects the ansible
# to_nice_json filter
Requires: python-simplejson
# For testing
BuildRequires: python-crypto2.6
BuildRequires: python-simplejson
%endif
%description
Ansible is a radically simple model-driven configuration management,
@ -178,58 +84,20 @@ Provides: ansible-python3 = %{version}-%{release}
Obsoletes: ansible-python3 < %{version}-%{release}
%endif
BuildRequires: python3-devel
BuildRequires: python3-setuptools
# For tests
BuildRequires: python3-PyYAML
BuildRequires: python3-paramiko
BuildRequires: python3-cryptography
BuildRequires: python3-crypto
BuildRequires: python3-pbkdf2
BuildRequires: python3-packaging
BuildRequires: python3-pexpect
BuildRequires: python3-winrm
BuildRequires: python3-httmock
BuildRequires: python3-gitlab
# For Docs/tests
BuildRequires: git-core
%if %with_docs
BuildRequires: python3-sphinx
BuildRequires: python3-sphinx-theme-alabaster
BuildRequires: python3-sphinx-notfound-page
BuildRequires: asciidoc
%endif
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
Requires: python%{python3_pkgversion}-PyYAML
Requires: python%{python3_pkgversion}-paramiko
Requires: python%{python3_pkgversion}-cryptography
# accelerate is the only thing that makes keyczar mandatory. Since accelerate
# is deprecated, just ignore it
#BuildRequires: python-keyczar
BuildRequires: python3-six
BuildRequires: python3-nose
BuildRequires: python3-pytest
BuildRequires: python3-pytest-xdist
BuildRequires: python3-pytest-mock
BuildRequires: python3-requests
BuildRequires: python3-coverage
BuildRequires: python3-mock
BuildRequires: python3-boto3
BuildRequires: python3-botocore
BuildRequires: python3-passlib
BuildRequires: python3-jinja2
Requires: python3-PyYAML
Requires: python3-paramiko
Requires: python3-cryptography
# accelerate is the only thing that makes keyczar mandatory. Since accelerate
# is deprecated, just ignore it
#Requires: python3-keyczar
Requires: python3-setuptools
Requires: python3-six
Requires: python3-jinja2
#Requires: python%%{python3_pkgversion}-keyczar
Requires: python%{python3_pkgversion}-setuptools
Requires: python%{python3_pkgversion}-six
Requires: python%{python3_pkgversion}-jinja2
Requires: sshpass
# needed for json_query filter
Requires: python3-jmespath
Requires: python%{python3_pkgversion}-jmespath
%if 0%{?with_python2}
%description -n ansible-python3
@ -260,14 +128,30 @@ are transferred to managed machines automatically.
This package installs extensive documentation for ansible
%if 0%{?with_python2}
# split out ansible-test for python2 only
%package -n ansible-test
Summary: Tool for testing ansible plugin and module code
Requires: %{name} = %{version}-%{release}
Requires: python-virtualenv
BuildRequires: python-virtualenv
%description -n ansible-test
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 the ansible-test command for testing modules and plugins
developed for ansible.
%endif
%prep
%setup -q -n %{name}-%{version}
%if 0%{?rhel} == 6
%patch100 -p1
%endif
%patch101 -p1
%patch1 -p1
%patch2 -p1
%if 0%{?with_python3}
rm -rf %{py3dir}
@ -282,26 +166,25 @@ cp -a . %{py3dir}
%if 0%{?with_python3}
pushd %{py3dir}
# disable the python -s shbang flag as we want to be able to find non system modules
%global py3_shbang_opts %(echo %{py3_shbang_opts} | sed 's/-s//')
%py3_build
%if %with_docs
# Fedora 26 does not have pathfix, so build docs with python2
%if (0%{?fedora} == 26)
make PYTHON=/usr/bin/python2 webdocs
%else
pathfix.py -i %{__python3} -p docs/bin test/runner
make PYTHON=/usr/bin/python3 SPHINXBUILD=sphinx-build-3 webdocs
%endif
%endif
popd
%endif
# with_python3
%if ! %with_docs && ( 0%{?fedora} || 0%{?rhel} >= 7)
%if ! %with_docs
# Generate the rst docs from the source if they weren't generated earlier as
# part of the html docs build
make -Cdocs/docsite config cli keywords modules plugins testing
# part of the html docs build.
# This is broken right now because it needs python3 and python3-straight-plugin
#make -Cdocs/docsite config cli keywords modules plugins testing
%endif
%install
@ -311,7 +194,7 @@ pushd %{py3dir}
popd
for i in $RPM_BUILD_ROOT/%{_bindir}/ansible* ; do
if [ $(basename $i) = "ansible-connection" -o $(basename $i) = "ansible" ] ; then
if [ $(basename $i) = "ansible-connection" -o $(basename $i) = "ansible" -o $(basename $i) = "ansible-test" ] ; then
%if 0%{?with_python2}
mv $i $i-%{python3_version}
%else
@ -390,54 +273,28 @@ cp -pr docs/docsite/rst .
%endif
%check
# RHEL <= 6 doesn't have a new enough python-mock to run the tests
# Currently RHEL <= 7 doesn't have pytest-xdist or a new enough pytest
# Fedora 25 doesn't have a new enough pytest
%if 0%{?with_python2} && 0%{?fedora} >= 26
ln -s /usr/bin/pytest bin/pytest
make PYTHON=/usr/bin/python2 tests
%endif
# New enough Fedora with python2
%if 0%{?with_python3}
pushd %{py3dir}
ln -s /usr/bin/pytest-3 bin/pytest
pathfix.py -i %{__python3} -p test/runner
pathfix.py -i %{__python3} -p bin/ansible-test
# This test needs a module not packaged in Fedora so disable it.
rm -f test/units/modules/cloud/cloudstack/test_cs_traffic_type.py
%if 0%{?fedora} < 30
# In fedora 29 and eariler, python-gitlab is too old to run these tests
rm -f test/units/modules/source_control/test_gitlab_user.py
rm -f test/units/modules/source_control/test_gitlab_runner.py
%endif
make PYTHON=/usr/bin/python3 tests-py3
popd
%endif
# python3
%files
%if 0%{?with_python2}
%{python2_sitelib}/ansible*
%exclude %{python2_sitelib}/ansible_test
%endif
%{_bindir}/ansible*
%if 0%{?with_python3} && 0%{?with_python2}
%exclude %{_bindir}/ansible*-3*
%exclude %{python3_sitelib}/ansible_test
%endif
# python3 and 2
%config(noreplace) %{_sysconfdir}/ansible/
%{_datadir}/ansible/
%doc README.rst PKG-INFO COPYING changelogs/CHANGELOG-v2.8.rst
%doc README.rst PKG-INFO COPYING changelogs/CHANGELOG-v2.9.rst
%doc %{_mandir}/man1/ansible*
%exclude %{_bindir}/ansible-test
%if 0%{?with_python3}
%if 0%{?with_python2}
%files -n ansible-python3
%config(noreplace) %{_sysconfdir}/ansible/
%doc README.rst PKG-INFO COPYING changelogs/CHANGELOG-v2.8.rst
%doc README.rst PKG-INFO COPYING changelogs/CHANGELOG-v2.9.rst
%doc %{_mandir}/man1/ansible*
%{_bindir}/ansible*-3*
%endif
@ -452,7 +309,101 @@ popd
%doc html
%endif
%if 0%{?with_python2}
%files -n ansible-test
%{_bindir}/ansible-test
%{python2_sitelib}/ansible_test
%endif
%changelog
* Sat Jan 15 2022 Kevin Fenzi <kevin@scrye.com> - 2.9.27-1
- Update to 2.9.27. Fixes rhbz#2012918
* Sat Aug 21 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.25-1
- Update to 2.9.25
* Wed Jul 28 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.24-2
- Actually apply rocky linux patch.
* Sun Jul 25 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.24-1
- Update to 2.9.24. Fixes rhbz#1983837
* Tue Jun 22 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.23-1
- Update to 2.9.23. Fixes rhbz#1974592
- Add patch for Rocky Linux. Fixes rhbz#1968728
* Mon May 24 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.22-1
- Update to 2.9.22.
* Tue May 04 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.21-1
- Update to 2.9.21.
* Sat Apr 24 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.20-1
- Update to 2.9.20.
- Split out ansible-test as a subpackage.
* Sat Feb 20 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.18-1
- Update to 2.9.18.
- Fixes: CVE-2021-20228 CVE-2021-20178 CVE-2021-20180 CVE-2021-20191
* Sun Jan 24 2021 Kevin Fenzi <kevin@scrye.com> - 2.9.17-1
- Update to 2.9.17.
* Fri Dec 18 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.16-1
- Update to 2.9.16.
* Tue Nov 03 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.15-1
- Update to 2.9.15.
* Wed Oct 07 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.14-1
- Update to 2.9.14.
* Thu Sep 03 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.13-1
- Update to 2.9.13.
* Tue Jul 21 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.11-1
- Update to 2.9.11.
* Thu Jun 18 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.10-1
- Update to 2.9.10.
* Tue May 12 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.9-1
- Update to 2.9.9. Fixes bug #1834582
- Fixes gathering facts on f32+ bug #1832625
* Sat Apr 18 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.7-1
- Update to 2.9.7.
- fixes CVE-2020-1733 CVE-2020-1735 CVE-2020-1740 CVE-2020-1746 CVE-2020-1753 CVE-2020-10684 CVE-2020-10685 CVE-2020-10691
- Drop the -s from the shebang to allow ansible to use locally installed modules.
* Mon Apr 06 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.9.6-3
- Ship ansible-test in both (py2 and py3) variants
* Sun Apr 05 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 2.9.6-2
- Enable python3 subpackage
* Fri Mar 06 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.6-1
- Update to 2.9.6. Fixes bug #1810373
- fixes for CVE-2020-1737, CVE-2020-1739
* Thu Feb 13 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.5-1
- Update to 2.9.5
* Tue Jan 21 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.4-1
- Update to 2.9.4
* Mon Jan 20 2020 Kevin Fenzi <kevin@scrye.com> - 2.9.3-1
- Update to 2.9.3
* Sun Dec 08 2019 Kevin Fenzi <kevin@scrye.com> - 2.9.2-1
- Update to 2.9.2
* Wed Nov 13 2019 Kevin Fenzi <kevin@scrye.com> - 2.9.1-1
- Update to 2.9.1.
* Fri Nov 08 2019 Kevin Fenzi <kevin@scrye.com> - 2.9.0-1
- Update to 2.9.0.
* Fri Sep 13 2019 Kevin Fenzi <kevin@scrye.com> - 2.8.5-1
- Update to 2.8.5.

View file

@ -1 +1 @@
SHA512 (ansible-2.8.5.tar.gz) = 6555b9a3d3d8298410e54f7116d92fc1978bef185a5136cfb809c1942b08b96c562af9e0d6d1a25eee5a4024d309b6713ce27836857b428a7c362e26efb53777
SHA512 (ansible-2.9.27.tar.gz) = 99987b8a1d243ef3496d66178774c33b05951daaff584b12e645c0176391805f90d00780e86adec01316b28645287489326218c0de7c10084552da90848735c7