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