diff --git a/_lastrevision b/_lastrevision
index 24c3dc8..f92ab07 100644
--- a/_lastrevision
+++ b/_lastrevision
@@ -1 +1 @@
-d302875a0b75720b541027bbba6ec8561afa686d
\ No newline at end of file
+1a0e1dc92bb4b1504388ea927a0a10e8137bb29d
\ No newline at end of file
diff --git a/_multibuild b/_multibuild
index 1736cec..a0cd1a3 100644
--- a/_multibuild
+++ b/_multibuild
@@ -1,3 +1,3 @@
- testsuite_included
+ testsuite
diff --git a/salt.changes b/salt.changes
index 083045f..21bb42a 100644
--- a/salt.changes
+++ b/salt.changes
@@ -1,3 +1,9 @@
+-------------------------------------------------------------------
+Tue Feb 20 12:58:58 UTC 2024 - Pablo Suárez Hernández
+
+- Extend dependencies for python3-salt-testsuite and python3-salt packages
+- Improve Salt and testsuite packages multibuild
+
-------------------------------------------------------------------
Thu Feb 8 12:17:39 UTC 2024 - Yeray Gutiérrez Cedrés
diff --git a/salt.spec b/salt.spec
index 111ac76..11dd642 100644
--- a/salt.spec
+++ b/salt.spec
@@ -15,7 +15,13 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global debug_package %{nil}
+
%global flavor @BUILD_FLAVOR@%{nil}
+%if "%{flavor}" == "testsuite"
+%define psuffix -test
+%else
+%define psuffix %{nil}
+%endif
%if 0%{?suse_version} > 1210 || 0%{?rhel} >= 7 || 0%{?fedora} >=28
%bcond_without systemd
@@ -32,11 +38,10 @@
%bcond_with fish_completion
%bcond_with zsh_completion
%endif
-%bcond_with test
%bcond_without docs
%bcond_with builddocs
-Name: salt
+Name: salt%{psuffix}
Version: 3006.0
Release: 0
Summary: A parallel remote execution system
@@ -425,6 +430,8 @@ malleable. Salt accomplishes this via its ability to handle larger loads of
information, and not just dozens, but hundreds or even thousands of individual
servers, handle them quickly and through a simple and manageable interface.
+%if "%{flavor}" != "testsuite"
+
%package -n python3-salt
Summary: python3 library for salt
Group: System/Management
@@ -534,6 +541,12 @@ Recommends: python3-netaddr
Recommends: python3-pyinotify
%endif
+# Required by Salt modules
+Requires: iputils
+Requires: sudo
+Requires: file
+Requires: man
+
Provides: bundled(python3-tornado) = 4.5.3
%description -n python3-salt
@@ -702,35 +715,6 @@ Requires(pre): %fillup_prereq
Salt ssh is a master running without zmq.
it enables the management of minions over a ssh connection.
-%if "%{flavor}" == "testsuite_included"
-%package -n python3-salt-testsuite
-Summary: Unit and integration tests for Salt
-Requires: %{name} = %{version}-%{release}
-Requires: python3-CherryPy
-Requires: python3-Genshi
-Requires: python3-Mako
-%if !0%{?suse_version} > 1600 || 0%{?centos}
-Requires: python3-boto
-%endif
-Requires: python3-boto3
-Requires: python3-docker
-%if 0%{?suse_version} < 1600
-Requires: python3-mock
-%endif
-Requires: python3-pygit2
-Requires: python3-pytest >= 7.0.1
-Requires: python3-pytest-httpserver
-Requires: python3-pytest-salt-factories >= 1.0.0~rc21
-Requires: python3-pytest-subtests
-Requires: python3-testinfra
-Requires: python3-yamllint
-
-Obsoletes: %{name}-tests
-
-%description -n python3-salt-testsuite
-Collection of unit, functional, and integration tests for %{name}.
-%endif
-
%if %{with bash_completion}
%package bash-completion
Summary: Bash Completion for %{name}
@@ -797,6 +781,51 @@ For transactional systems, like MicroOS, Salt can operate
transparently if the executor "transactional-update" is registered in
list of active executors. This package add the configuration file.
+%endif
+
+%if "%{flavor}" == "testsuite"
+
+%package -n python3-salt-testsuite
+Summary: Unit and integration tests for Salt
+
+%if 0%{?rhel} == 8
+BuildRequires: platform-python
+%else
+BuildRequires: python3
+%endif
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+
+Requires: %{name} = %{version}-%{release}
+Requires: python3-CherryPy
+Requires: python3-Genshi
+Requires: python3-Mako
+%if !0%{?suse_version} > 1600 || 0%{?centos}
+Requires: python3-boto
+%endif
+Requires: python3-boto3
+Requires: python3-docker
+%if 0%{?suse_version} < 1600
+Requires: python3-mock
+%endif
+Requires: python3-pygit2
+Requires: python3-pytest >= 7.0.1
+Requires: python3-pytest-httpserver
+Requires: python3-pytest-salt-factories >= 1.0.0~rc21
+Requires: python3-pytest-subtests
+Requires: python3-testinfra
+Requires: python3-yamllint
+Requires: python3-pip
+Requires: docker
+Requires: openssh
+Requires: git
+
+Obsoletes: %{name}-tests
+
+%description -n python3-salt-testsuite
+Collection of unit, functional, and integration tests for %{name}.
+
+%endif
%prep
%setup -q -n salt-%{version}-suse
@@ -806,6 +835,8 @@ cp %{S:6} .
%autopatch -p1
%build
+%if "%{flavor}" != "testsuite"
+
# Putting /usr/bin at the front of $PATH is needed for RHEL/RES 7. Without this
# change, the RPM will require /bin/python, which is not provided by any package
# on RHEL/RES 7.
@@ -828,7 +859,11 @@ popd
cd doc && make html && rm _build/html/.buildinfo && rm _build/html/_images/proxy_minions.png && cd _build/html && chmod -R -x+X *
%endif
+%endif
+
%install
+%if "%{flavor}" != "testsuite"
+
mv _build.python3 build
python3 setup.py --salt-transport=both install --prefix=%{_prefix} --root=%{buildroot}
mv build _build.python3
@@ -876,7 +911,9 @@ install -Dd -m 0755 %{buildroot}%{_sysconfdir}/logrotate.d/
# Install salt-support profiles
install -Dpm 0644 salt/cli/support/profiles/* %{buildroot}%{python3_sitelib}/salt/cli/support/profiles
-%if "%{flavor}" == "testsuite_included"
+%endif
+
+%if "%{flavor}" == "testsuite"
# Install Salt tests
install -Dd %{buildroot}%{python3_sitelib}/salt-testsuite
cp -a tests %{buildroot}%{python3_sitelib}/salt-testsuite/
@@ -886,6 +923,8 @@ rm %{buildroot}%{python3_sitelib}/salt-testsuite/tests/runtests.py
cp -a conf %{buildroot}%{python3_sitelib}/salt-testsuite/
%endif
+%if "%{flavor}" != "testsuite"
+
## Install Zypper plugins only on SUSE machines
%if 0%{?suse_version}
install -Dd -m 0750 %{buildroot}%{_prefix}/lib/zypp/plugins/commit
@@ -995,11 +1034,10 @@ install -Dpm 0640 conf/suse/standalone-formulas-configuration.conf %{buildroot}%
%fdupes %{buildroot}%{python3_sitelib}
%endif
-%check
-%if %{with test}
-python3 setup.py test --runtests-opts=-u
%endif
+%if "%{flavor}" != "testsuite"
+
%pre
S_HOME="/var/lib/salt"
S_PHOME="/srv/salt"
@@ -1473,11 +1511,6 @@ rm -f %{_localstatedir}/cache/salt/minion/thin/version
%doc doc/_build/html
%endif
-%if "%{flavor}" == "testsuite_included"
-%files -n python3-salt-testsuite
-%{python3_sitelib}/salt-testsuite
-%endif
-
%if %{with bash_completion}
%files bash-completion
%defattr(-,root,root)
@@ -1514,6 +1547,12 @@ rm -f %{_localstatedir}/cache/salt/minion/thin/version
%defattr(-,root,root)
%config(noreplace) %attr(0640, root, root) %{_sysconfdir}/salt/minion.d/transactional_update.conf
+%endif
+
+%if "%{flavor}" == "testsuite"
+%files -n python3-salt-testsuite
+%{python3_sitelib}/salt-testsuite
+%endif
%changelog