ansible-core 2.15.3

Use docs and examples from the ansible-documentation project since those
aren't included anymore in the ansible repository.
Manpages aren't included anymore in the sdist on pypi so we have to
build them during the RPM build.
This also adds docutils as source and install it only during the RPM
build to be able to build the manpages. There's no python3.11-docutils
RPM package existing.

Resolves: #2232431

Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
This commit is contained in:
Dimitri Savineau 2023-08-16 11:27:05 -04:00
parent 50314153bf
commit 789d29dee3
No known key found for this signature in database
GPG Key ID: E00798C446FD75DE
3 changed files with 36 additions and 14 deletions

3
.gitignore vendored
View File

@ -17,3 +17,6 @@ SOURCES/resolvelib-0.5.4.tar.gz
/resolvelib-1.0.1.tar.gz
/ansible-core-2.15.1.tar.gz
/ansible-core-2.15.2.tar.gz
/ansible-core-2.15.3.tar.gz
/ansible-documentation-2.15.3.tar.gz
/docutils-0.20.1.tar.gz

View File

@ -8,7 +8,7 @@
# 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 __brp_mangle_shebangs_exclude_from_file %{SOURCE2}
# NOTE(pabelanger): Don't auto add pwsh as Requires for ansible-test. We do
# not wish to package it.
@ -27,6 +27,7 @@
%define vendor_pip %{__python3} -m pip install --no-deps -v --no-build-isolation --no-binary :all: -t %{vendor_path}
# These control which bundled dep versions we pin against
%global docutils_version 0.20.1
%global jinja2_version 3.1.2
%global markupsafe_version 2.1.2
%global packaging_version 21.3
@ -36,21 +37,25 @@
Name: ansible-core
Summary: SSH-based configuration management, deployment, and task execution system
Version: 2.15.2
Version: 2.15.3
Release: 1%{?dist}
ExcludeArch: i686
Group: Development/Libraries
License: GPLv3+
Source0: https://files.pythonhosted.org/packages/source/a/ansible-core/ansible-core-%{version}.tar.gz
Source1: ansible-test-data-files.txt
Source1: https://github.com/ansible/ansible-documentation/archive/v%{version}/ansible-documentation-%{version}.tar.gz
Source2: ansible-test-data-files.txt
# And bundled deps
Source2: https://files.pythonhosted.org/packages/source/J/Jinja2/Jinja2-%{jinja2_version}.tar.gz
Source3: https://files.pythonhosted.org/packages/source/M/MarkupSafe/MarkupSafe-%{markupsafe_version}.tar.gz
Source4: https://files.pythonhosted.org/packages/source/p/packaging/packaging-%{packaging_version}.tar.gz
Source5: https://files.pythonhosted.org/packages/source/p/pyparsing/pyparsing-%{pyparsing_version}.tar.gz
Source6: https://files.pythonhosted.org/packages/source/r/resolvelib/resolvelib-%{resolvelib_version}.tar.gz
Source3: https://files.pythonhosted.org/packages/source/J/Jinja2/Jinja2-%{jinja2_version}.tar.gz
Source4: https://files.pythonhosted.org/packages/source/M/MarkupSafe/MarkupSafe-%{markupsafe_version}.tar.gz
Source5: https://files.pythonhosted.org/packages/source/p/packaging/packaging-%{packaging_version}.tar.gz
Source6: https://files.pythonhosted.org/packages/source/p/pyparsing/pyparsing-%{pyparsing_version}.tar.gz
Source7: https://files.pythonhosted.org/packages/source/r/resolvelib/resolvelib-%{resolvelib_version}.tar.gz
# Deps to build manpages
Source8: https://sourceforge.net/projects/docutils/files/docutils/%{docutils_version}/docutils-%{docutils_version}.tar.gz
Patch0: remove-bundled-deps-from-requirements.patch
@ -112,7 +117,7 @@ This package installs the ansible-test command for testing modules and plugins
developed for ansible.
%prep
%setup -q -b2 -b3 -b4 -b5 -b6 -n ansible-core-%{version}
%setup -q -b1 -b3 -b4 -b5 -b6 -b7 -b8 -n ansible-core-%{version}
%patch0 -p1
# Fix all Python shebangs recursively in ansible-test
@ -169,13 +174,20 @@ done
mkdir -p %{buildroot}%{_sysconfdir}/ansible/
mkdir -p %{buildroot}%{_sysconfdir}/ansible/roles/
cp examples/hosts %{buildroot}%{_sysconfdir}/ansible/
cp examples/ansible.cfg %{buildroot}%{_sysconfdir}/ansible/
cp ../ansible-documentation-%{version}/examples/hosts %{buildroot}%{_sysconfdir}/ansible/
cp ../ansible-documentation-%{version}/examples/ansible.cfg %{buildroot}%{_sysconfdir}/ansible/
mkdir -p %{buildroot}/%{_mandir}/man1/
mkdir -p docs/man/man1
mkdir -p /tmp/_docutils
%{__python3} -m pip install ../docutils-%{docutils_version} -t /tmp/_docutils --no-build-isolation
PYTHONPATH=%{vendor_path}:/tmp/_docutils %{__python3} packaging/cli-doc/build.py man --output-dir docs/man/man1
rm -rf /tmp/_docutils
cp -v docs/man/man1/*.1 %{buildroot}/%{_mandir}/man1/
cp -pr docs/docsite/rst .
cp -pr ../ansible-documentation-%{version}/docs/docsite/rst .
cp -p lib/ansible_core.egg-info/PKG-INFO .
strip --strip-unneeded %{vendor_path}/markupsafe/_speedups%{python3_ext_suffix}
@ -185,7 +197,7 @@ strip --strip-unneeded %{vendor_path}/markupsafe/_speedups%{python3_ext_suffix}
%{_bindir}/ansible*
%exclude %{_bindir}/ansible-test
%config(noreplace) %{_sysconfdir}/ansible/
%doc README.rst PKG-INFO COPYING
%doc README.md PKG-INFO COPYING
%doc changelogs/CHANGELOG-v2.*.rst
%doc %{_mandir}/man1/ansible*
%{_datadir}/ansible/
@ -198,6 +210,11 @@ strip --strip-unneeded %{vendor_path}/markupsafe/_speedups%{python3_ext_suffix}
%{python3_sitelib}/ansible_test
%changelog
* Wed Aug 16 2023 Dimitri Savineau <dsavinea@redhat.com> - 2.15.3-1
- ansible-core 2.15.3 release (rhbz#2232431)
- Use docs and examples from ansible-documentation project.
- Build the manpages.
* Mon Aug 14 2023 Dimitri Savineau <dsavinea@redhat.com> - 2.15.2-1
- ansible-core 2.15.2 release (rhbz#2231891)

View File

@ -1,4 +1,6 @@
SHA512 (ansible-core-2.15.2.tar.gz) = 75cfc9a5f104d15a83ea464e34b9b2d351fcddc23b7bc4e86a1975d2aef22a336c865a4bd25cee58ba64b67eebfc2553ca55ea581ffcfc4e5261af46fbdf7e55
SHA512 (ansible-core-2.15.3.tar.gz) = ba91faef7ace83adf8c6f98ee8eb0186c1fef03657e595857f2255b697e91bfa2df716e9b733d23567f78228281a57940c9a0243d94b54bc7a1d2c0845f19d26
SHA512 (ansible-documentation-2.15.3.tar.gz) = c6c034b639fed1e6fac4e0dd217a6746006e67499cc66e476f3a00bf2f2bdf530085d1d9a95bba6a4ecb180366645e3379a1de1ab11e978b7793a7b5fbbb18a6
SHA512 (docutils-0.20.1.tar.gz) = a0ddca315d03677003036d6a8052ac96fbd3fcc4508564938ea684d79bedb4d322d83449c7b26e55b19b0aadd6e46ca9ac409bb16279a20f06c70e9c15ef5eb0
SHA512 (Jinja2-3.1.2.tar.gz) = 5dfe122c1beef5305b34d25f22f96607bd3a6cba098b03091850ea36fefe62b645a7218d7584b35bea252393ac922c9bb3654a9e90f23bcfb273e811fcf2f2c1
SHA512 (MarkupSafe-2.1.2.tar.gz) = 84dbeddaf2df713b3cce94eb64876fea8f80c608e25130c18e4691be2b1dea56df8b772d26c0caca88231ef795125eb9678210c33bf20518c18e3047912ddb4b
SHA512 (packaging-21.3.tar.gz) = 2e3aa276a4229ac7dc0654d586799473ced9761a83aa4159660d37ae1a2a8f30e987248dd0e260e2834106b589f259a57ce9936eef0dcc3c430a99ac6b663e05