commit salt for openSUSE:Factory
Hello community,
here is the log from the commit of package salt for openSUSE:Factory checked in at 2016-09-30 15:34:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/salt (Old)
and /work/SRC/openSUSE:Factory/.salt.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "salt"
Changes:
--------
--- /work/SRC/openSUSE:Factory/salt/salt.changes 2016-05-13 09:24:15.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.salt.new/salt.changes 2016-09-30 15:35:01.000000000 +0200
@@ -1,0 +2,288 @@
+Wed Sep 28 12:35:32 UTC 2016 - tampakrap@opensuse.org
+
+- Rename susemanager plugin to zyppnotify, as it is not SUSE Manager specific
+- Remove the subpackage and put the plugin back to the main package
+ according to upstream
+ Add:
+ * 0007-Add-zypp-notify-plugin.patch
+ Remove:
+ * 0007-Add-SUSE-Manager-plugin.patch
+
+-------------------------------------------------------------------
+Wed Sep 28 11:40:36 UTC 2016 - tampakrap@opensuse.org
+
+- Add upstream patch to fix pkg.upgrade for zypper
+ Add:
+ * 0021-Fix-pkg.upgrade-for-zypper.patch
+
+-------------------------------------------------------------------
+Tue Sep 27 23:55:03 UTC 2016 - mrueckert@suse.de
+
+- splitting out the susemanager integration plugins into their own
+ subpackages. ATM this only contains the zypp plugin to tell
+ susemanager about manually installed packages.
+
+-------------------------------------------------------------------
+Tue Sep 13 15:07:44 UTC 2016 - pablo.suarezhernandez@suse.com
+
+- Unit and integration tests fixes for 2016.3.2
+ Add:
+ * 0018-Unit-tests-fixes-for-2016.3.2.patch
+ * 0019-Fix-snapper_test-for-python26.patch
+ * 0020-Integration-tests-fixes-for-2016.3.2.patch
+
+-------------------------------------------------------------------
+Fri Sep 2 09:50:57 UTC 2016 - pablo.suarezhernandez@suse.com
+
+- Prevent pkg.install failure for expired keys (bsc#996455)
+ Add:
+ * 0017-Check-for-single-quote-before-splitting-on-single-qu.patch
+
+-------------------------------------------------------------------
+Tue Aug 30 12:24:45 UTC 2016 - bmaryniuk@suse.com
+
+- Required D-Bus and generating machine ID where it is missing
+
+-------------------------------------------------------------------
+Fri Aug 26 13:11:58 UTC 2016 - bmaryniuk@suse.com
+
+- Fix sphinx crashes when documentation is being generated
+ Add script for documentation update.
+
+ Add:
+ * 0016-Improve-Mock-to-be-flexible-and-able-to-mock-methods.patch
+ * update-documentation.sh
+
+-------------------------------------------------------------------
+Tue Aug 16 12:01:59 UTC 2016 - bmaryniuk@suse.com
+
+- Fix pkg.installed refresh repo failure (bsc#993549)
+ Fix salt.states.pkgrepo.management no change failure (bsc#990440)
+ Add:
+ * 0014-Add-ignore_repo_failure-option-to-suppress-zypper-s-.patch
+ * 0015-Remove-zypper-s-raise-exception-if-mod_repo-has-no-a.patch
+
+-------------------------------------------------------------------
+Tue Aug 9 13:40:37 UTC 2016 - bmaryniuk@suse.com
+
+- Deprecate status.uptime one version later
+ Add:
+ * 0013-Deprecate-status.uptime-one-version-later.patch
+
+-------------------------------------------------------------------
+Mon Aug 8 16:25:04 UTC 2016 - pablo.suarezhernandez@suse.com
+
+- Fix for 0008-checksum-validation-when-zypper-pkg.download.patch
+ after upstream merging conflict. Prevent zypper test failure.
+ Update:
+ * 0008-checksum-validation-when-zypper-pkg.download.patch
+
+-------------------------------------------------------------------
+Thu Aug 4 14:56:42 UTC 2016 - mihai.dinca@suse.com
+
+- Update to v2016.3.2
+ see https://docs.saltstack.com/en/latest/topics/releases/2016.3.2.html
+- Removed Patches, applied upstream
+ * 0010-Getting-the-os-grain-from-CPE_NAME-inside-etc-os-rel.patch
+ * 0011-snapper-execution-module.patch
+ * 0012-Force-minion-exit-on-mis-configuration-read.patch
+ * 0013-fix-salt-summary-to-count-not-responding-minions-cor.patch
+ * 0014-Move-log-message-from-INFO-to-DEBUG.patch
+ * 0016-Run-salt-api-as-user-salt-bsc-990029.patch
+ * 0017-fix-beacon-list-to-include-all-beacons-being-process.patch
+- Added Patches back
+ * 0010-snapper-execution-module.patch
+ * 0011-fix-salt-summary-to-count-not-responding-minions-cor.patch
+ * 0012-Run-salt-api-as-user-salt-bsc-990029.patch
+
+-------------------------------------------------------------------
+Wed Aug 3 14:50:35 UTC 2016 - pablo.suarezhernandez@suse.com
+
+- Fix beacon list to include all beacons being process
+ Add:
+ * 0017-fix-beacon-list-to-include-all-beacons-being-process.patch
+
+-------------------------------------------------------------------
+Fri Jul 29 11:48:37 UTC 2016 - kkaempf@suse.com
+
+- Redo patches, sync with github.com/openSUSE/salt
+
+- Renamed patches
+ * 0016-Getting-the-os-grain-from-CPE_NAME-inside-etc-os-rel.patch
+ -> 0010-Getting-the-os-grain-from-CPE_NAME-inside-etc-os-rel.patch
+ * 0017-snapper-execution-module.patch
+ -> 0011-snapper-execution-module.patch
+ * 0018-Force-minion-exit-on-mis-configuration-read.patch
+ -> 0012-Force-minion-exit-on-mis-configuration-read.patch
+
+- Added back (fix upstream merge problems):
+ * 0008-checksum-validation-when-zypper-pkg.download.patch
+ * 0009-unit-tests-for-rpm.checksum-and-zypper.download.patch
+
+- fix salt --summary to count not responding minions correctly
+ (bsc#972311)
+ * 0013-fix-salt-summary-to-count-not-responding-minions-cor.patch
+
+- Move log message from INFO to DEBUG (bsc#985661)
+ * 0014-Move-log-message-from-INFO-to-DEBUG.patch
+
+- pkg.list_products on "registerrelease" and "productline"
+ returns boolean.False if empty (bsc#989193)
+ * 0015-Bugfix-return-boolean-only-for-isbase-and-installed-.patch
+
+- Run salt-api as user salt like the master (bsc#990029)
+ * 0016-Run-salt-api-as-user-salt-bsc-990029.patch
+
+-------------------------------------------------------------------
+Fri Jul 22 15:16:16 UTC 2016 - darin@darins.net
+
+- Update to v2016.3.1
+ see https://docs.saltstack.com/en/latest/topics/releases/2016.3.1.html
+- Removed Patches, applied upstream
+ * 0008-Prevent-several-minion-processes-on-the-same-machine.patch
+ * 0009-checksum-validation-when-zypper-pkg.download.patch
+ * 0010-unit-tests-for-rpm.checksum-and-zypper.download.patch
+ * 0011-jobs.exit_success-allow-to-check-if-a-job-has-execut.patch
+ * 0012-Fix-pkgrepo.managed-gpgkey-argument-bsc-979448.patch
+ * 0013-fix-groupadd-module-for-sles11-systems.patch
+ * 0014-Fix-crashing-Maintenence-process.patch
+ * 0015-Insert-no-refresh-before-install-in-Zypper.patch
+
+-------------------------------------------------------------------
+Tue Jul 19 15:03:10 UTC 2016 - bmaryniuk@suse.com
+
+- Bugfix: Exit on configuration read (bsc#985667)
+ Add:
+ * 0018-Force-minion-exit-on-mis-configuration-read.patch
+
+-------------------------------------------------------------------
+Mon Jul 18 08:32:04 UTC 2016 - pablo.suarezhernandez@suse.com
+
+- Backport: Snapper module for Salt.
+ Add:
+ * 0017-snapper-execution-module.patch
+
+-------------------------------------------------------------------
+Wed Jun 22 07:56:44 UTC 2016 - pablo.suarezhernandez@suse.com
+
+- Bugfix: Fixed behavior for SUSE OS grains (bsc#970669)
+ Bugfix: Salt os_family does not detect SLES for SAP (bsc#983017)
+ Add:
+ * 0016-Getting-the-os-grain-from-CPE_NAME-inside-etc-os-rel.patch
+
+-------------------------------------------------------------------
+Mon Jun 20 11:26:29 UTC 2016 - thipp@suse.com
+
+- Insert --no-refresh before install in Zypper
+ Add:
+ * 0015-Insert-no-refresh-before-install-in-Zypper.patch
+
+-------------------------------------------------------------------
+Wed Jun 15 11:38:26 UTC 2016 - kkaempf@suse.com
+
+- Update to v2016.3.0
+ see https://docs.saltstack.com/en/latest/topics/releases/2016.3.0.html
+
+ * backwards-incompatible changes:
+ - The default path for the extension_modules master config option
+ has been changed.
+
+- add 0014-Fix-crashing-Maintenence-process.patch
+ see release notes
+
+-------------------------------------------------------------------
+Wed Jun 1 09:52:40 UTC 2016 - mihai.dinca@suse.com
+
+- Fix pkgrepo.managed gpgkey argument doesn't work (bsc#979448)
+ Add:
++++ 91 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/salt/salt.changes
++++ and /work/SRC/openSUSE:Factory/.salt.new/salt.changes
Old:
----
0006-Update-to-2015.8.8.2.patch
0007-Force-sort-the-RPM-output-to-ensure-latest-version-o.patch
0008-Cleaner-deprecation-process-with-decorators.patch
0009-fix-sorting-by-latest-version-when-called-with-an-at.patch
0010-Prevent-metadata-download-when-getting-installed-pro.patch
0011-Check-if-EOL-is-available-in-a-particular-product-bs.patch
0012-Bugfix-salt-key-crashes-if-tries-to-generate-keys-to.patch
0013-Prevent-crash-if-pygit2-package-is-requesting-re-com.patch
0014-align-OS-grains-from-older-SLES-with-current-one-326.patch
0015-Unblock-Zypper.-Modify-environment.patch
0016-Bugfix-Restore-boolean-values-from-the-repo-configur.patch
0017-Add-SUSE-Manager-plugin.patch
salt-2015.8.8.tar.gz
New:
----
0006-Create-salt-proxy-instantiated-service-file.patch
0007-Add-zypp-notify-plugin.patch
0008-checksum-validation-when-zypper-pkg.download.patch
0009-unit-tests-for-rpm.checksum-and-zypper.download.patch
0010-snapper-execution-module.patch
0011-fix-salt-summary-to-count-not-responding-minions-cor.patch
0012-Run-salt-api-as-user-salt-bsc-990029.patch
0013-Deprecate-status.uptime-one-version-later.patch
0014-Add-ignore_repo_failure-option-to-suppress-zypper-s-.patch
0015-Remove-zypper-s-raise-exception-if-mod_repo-has-no-a.patch
0016-Improve-Mock-to-be-flexible-and-able-to-mock-methods.patch
0017-Check-for-single-quote-before-splitting-on-single-qu.patch
0018-Unit-tests-fixes-for-2016.3.2.patch
0019-Fix-snapper_test-for-python26.patch
0020-Integration-tests-fixes-for-2016.3.2.patch
0021-Fix-pkg.upgrade-for-zypper.patch
html.tar.bz2
salt-2016.3.2.tar.gz
update-documentation.sh
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ salt.spec ++++++
--- /var/tmp/diff_new_pack.7y20QC/_old 2016-09-30 15:35:06.000000000 +0200
+++ /var/tmp/diff_new_pack.7y20QC/_new 2016-09-30 15:35:06.000000000 +0200
@@ -34,54 +34,83 @@
%bcond_with test
%bcond_with raet
%bcond_without docs
+%bcond_with builddocs
Name: salt
-Version: 2015.8.8
+Version: 2016.3.2
Release: 0
Summary: A parallel remote execution system
License: Apache-2.0
Group: System/Monitoring
Url: http://saltstack.org/
# Git: https://github.com/openSUSE/salt.git
-Source0: http://pypi.python.org/packages/source/s/%{name}/%{name}-%{version}.tar.gz
+Source0: https://pypi.io/packages/source/s/%{name}/%{name}-%{version}.tar.gz
Source1: README.SUSE
Source2: salt-tmpfiles.d
+Source3: html.tar.bz2
+Source4: update-documentation.sh
# PATCH-FIX-OPENSUSE use-forking-daemon.patch tserong@suse.com -- We don't have python-systemd, so notify can't work
+# We do not upstream this patch because this is something that we have to fix on our side
Patch1: 0001-tserong-suse.com-We-don-t-have-python-systemd-so-not.patch
# PATCH-FIX-OPENSUSE use-salt-user-for-master.patch -- Run salt master as dedicated salt user
+# We do not upstream this patch because this is suse custom configuration
Patch2: 0002-Run-salt-master-as-dedicated-salt-user.patch
# PATCH-FIX-OPENSUSE https://github.com/saltstack/salt/pull/30424
+# We do not upstream this patch because it has been fixed upstream
+# (see: https://trello.com/c/wh96lCD4/1528-get-rid-of-0003-check-if-byte-strings-are...)
Patch3: 0003-Check-if-byte-strings-are-properly-encoded-in-UTF-8.patch
# PATCH-FIX-OPENSUSE prevent rebuilds in OBS
+# We do not upstream this patch because the issue is on our side
Patch4: 0004-do-not-generate-a-date-in-a-comment-to-prevent-rebui.patch
# PATCH-FIX-OPENSUSE - Upstream default hash type is set to MD5, while we require SHA256 (bsc#955373)
+# PR https://github.com/saltstack/salt/pull/35341 (15.08.2016 - not merged yet)
Patch5: 0005-Use-SHA256-hash-type-by-default.patch
-# PATCH-FIX-UPSTREAM https://docs.saltstack.com/en/latest/topics/releases/2015.8.8.html#salt-2015...
-Patch6: 0006-Update-to-2015.8.8.2.patch
-# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/32243
-Patch7: 0007-Force-sort-the-RPM-output-to-ensure-latest-version-o.patch
-# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/32068
-Patch8: 0008-Cleaner-deprecation-process-with-decorators.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/32323
-Patch9: 0009-fix-sorting-by-latest-version-when-called-with-an-at.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/32353
-Patch10: 0010-Prevent-metadata-download-when-getting-installed-pro.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/32505
-Patch11: 0011-Check-if-EOL-is-available-in-a-particular-product-bs.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/32436
-Patch12: 0012-Bugfix-salt-key-crashes-if-tries-to-generate-keys-to.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/32652
-Patch13: 0013-Prevent-crash-if-pygit2-package-is-requesting-re-com.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/32649
-Patch14: 0014-align-OS-grains-from-older-SLES-with-current-one-326.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/32892
-Patch15: 0015-Unblock-Zypper.-Modify-environment.patch
-# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/33088
-Patch16: 0016-Bugfix-Restore-boolean-values-from-the-repo-configur.patch
+# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/31798
+# PR already merged. This will be gone in the next version
+Patch6: 0006-Create-salt-proxy-instantiated-service-file.patch
# PATCH-FIX-OPENSUSE Generate events from the Salt minion,
# if Zypper has been used outside the Salt infrastructure
-Patch17: 0017-Add-SUSE-Manager-plugin.patch
+# We do not upstream this because this is for SUSE only (15.08.2016)
+Patch7: 0007-Add-zypp-notify-plugin.patch
+# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/33469
+# PR already merged. This will be gone in the next version
+Patch8: 0008-checksum-validation-when-zypper-pkg.download.patch
+# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/33501
+# PR already merged. This will be gone in the next version
+Patch9: 0009-unit-tests-for-rpm.checksum-and-zypper.download.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/34599 (backport from dev)
+# PR already merged. This will be gone in the next version
+Patch10: 0010-snapper-execution-module.patch
+# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/34165
+Patch11: 0011-fix-salt-summary-to-count-not-responding-minions-cor.patch
+# PATCH-FIX-OPENSUSE
+# We do not upstream this patch because this is suse custom configuration
+Patch12: 0012-Run-salt-api-as-user-salt-bsc-990029.patch
+# PATCH-FIX_UPSTREAM https://github.com/saltstack/salt/pull/35196
+# PR already merged. This will be gone in the next version
+Patch13: 0013-Deprecate-status.uptime-one-version-later.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/35448
+Patch14: 0014-Add-ignore_repo_failure-option-to-suppress-zypper-s-.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/35451
+Patch15: 0015-Remove-zypper-s-raise-exception-if-mod_repo-has-no-a.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/35763
+Patch16: 0016-Improve-Mock-to-be-flexible-and-able-to-mock-methods.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/36000
+Patch17: 0017-Check-for-single-quote-before-splitting-on-single-qu.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/36139
+# https://github.com/saltstack/salt/pull/36158
+# https://github.com/saltstack/salt/pull/36227
+Patch18: 0018-Unit-tests-fixes-for-2016.3.2.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/35715
+# https://github.com/saltstack/salt/pull/35983
+# https://github.com/saltstack/salt/pull/34826
+Patch19: 0019-Fix-snapper_test-for-python26.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/36263
+Patch20: 0020-Integration-tests-fixes-for-2016.3.2.patch
+# PATCH-FIX-UPSTREAM https://github.com/saltstack/salt/pull/36495
+Patch21: 0021-Fix-pkg.upgrade-for-zypper.patch
+
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: logrotate
@@ -120,17 +149,27 @@
BuildRequires: python-unittest2
BuildRequires: python-xml
%endif
-%if %{with docs}
-#for docs
+%if %{with builddocs}
BuildRequires: python-sphinx
%endif
+%if 0%{?suse_version} > 1010
+BuildRequires: fdupes
+%endif
Requires(pre): %{_sbindir}/groupadd
Requires(pre): %{_sbindir}/useradd
+
%if 0%{?suse_version}
Requires(pre): %fillup_prereq
Requires(pre): pwdutils
%endif
+
+%if 0%{?suse_version}
+Requires(pre): dbus-1
+%else
+Requires(pre): dbus
+%endif
+
Requires: logrotate
Requires: python
#
@@ -432,7 +471,11 @@
%patch4 -p1
%patch5 -p1
%patch6 -p1
+
+# This is SUSE-only patch
+%if 0%{?suse_version}
%patch7 -p1
+%endif
%patch8 -p1
%patch9 -p1
%patch10 -p1
@@ -442,16 +485,24 @@
%patch14 -p1
%patch15 -p1
%patch16 -p1
-
-# This is SUSE-only patch
-%if 0%{?suse_version}
%patch17 -p1
-%endif
+%patch18 -p1
+%patch19 -p1
+%patch20 -p1
+%patch21 -p1
%build
python setup.py --salt-transport=both build
-%if %{with docs}
+%if %{with docs} && %{without builddocs}
+# extract docs from the tarball
+mkdir -p doc/_build
+pushd doc/_build/
+tar xfv %{S:3}
+popd
+%endif
+
+%if %{with docs} && %{with builddocs}
## documentation
cd doc && make html && rm _build/html/.buildinfo && rm _build/html/_images/proxy_minions.png && cd _build/html && chmod -R -x+X *
%endif
@@ -498,7 +549,7 @@
## Install Zypper plugins only on SUSE machines
%if 0%{?suse_version}
install -Dd -m 0750 %{buildroot}%{_prefix}/lib/zypp/plugins/commit
-%{__install} scripts/zypper/plugins/commit/susemanager %{buildroot}%{_prefix}/lib/zypp/plugins/commit/susemanager
+%{__install} scripts/zypper/plugins/commit/zyppnotify %{buildroot}%{_prefix}/lib/zypp/plugins/commit/zyppnotify
%endif
## install init and systemd scripts
@@ -507,6 +558,7 @@
install -Dpm 0644 pkg/salt-minion.service %{buildroot}%{_unitdir}/salt-minion.service
install -Dpm 0644 pkg/salt-syndic.service %{buildroot}%{_unitdir}/salt-syndic.service
install -Dpm 0644 pkg/salt-api.service %{buildroot}%{_unitdir}/salt-api.service
+install -Dpm 0644 pkg/salt-proxy@.service %{buildroot}%{_unitdir}/salt-proxy@.service
ln -s service %{buildroot}%{_sbindir}/rcsalt-master
ln -s service %{buildroot}%{_sbindir}/rcsalt-syndic
ln -s service %{buildroot}%{_sbindir}/rcsalt-minion
@@ -558,6 +610,11 @@
echo "transport: raet" > %{buildroot}%{_sysconfdir}/salt/master.d/transport-raet.conf
echo "transport: raet" > %{buildroot}%{_sysconfdir}/salt/minion.d/transport-raet.conf
+%if 0%{?suse_version} > 1020
+%fdupes %{buildroot}%{_docdir}
+%fdupes %{buildroot}%{python_sitelib}
+%endif
+
%check
%if %{with test}
python setup.py test --runtests-opts=-u
@@ -567,9 +624,50 @@
getent group salt >/dev/null || %{_sbindir}/groupadd -r salt
getent passwd salt >/dev/null || %{_sbindir}/useradd -r -g salt -d /srv/salt -s /bin/false -c "salt-master daemon" salt
-%if %{with systemd}
%post
+%if %{with systemd}
systemd-tmpfiles --create /usr/lib/tmpfiles.d/salt.conf || true
+%else
+dbus-uuidgen --ensure
+%endif
+
+%preun proxy
+%if %{with systemd}
+%service_del_preun salt-proxy@.service
+%else
+%if 0%{?suse_version}
+%stop_on_removal salt-proxy
+%else
+ if [ $1 -eq 0 ] ; then
+ /sbin/service salt-proxy stop >/dev/null 2>&1
+ /sbin/chkconfig --del salt-proxy
+ fi
+%endif
+%endif
+
+%pre proxy
+%if %{with systemd}
+%service_add_pre salt-proxy@.service
+%endif
+
+%post proxy
+%if %{with systemd}
+%service_add_post salt-proxy@.service
+%fillup_only
+%else
+%if 0%{?suse_version}
+%fillup_and_insserv
+%endif
+%endif
+
+%postun proxy
+%if %{with systemd}
+%service_del_postun salt-proxy@.service
+%else
+%if 0%{?suse_version}
+%insserv_cleanup
+%restart_on_update salt-proxy
+%endif
%endif
%preun syndic
@@ -631,6 +729,20 @@
%endif
%post master
+if [ $1 -eq 2 ] ; then
+ # Upgrading from an earlier version. If this is from 2014, where daemons
+ # ran as root, we need to chown some stuff to salt in order for the new
+ # version to actually work. It seems a manual restart of salt-master may
+ # still be required, but at least this will actually work given the file
+ # ownership is correct.
+ for file in master.{pem,pub} ; do
+ [ -f /etc/salt/pki/master/$file ] && chown salt /etc/salt/pki/master/$file
+ done
+ for dir in file_lists minions jobs ; do
+ [ -d /var/cache/salt/master/$dir ] && chown -R salt:salt /var/cache/salt/master/$dir
+ done
+ true
+fi
%if %{with systemd}
%service_add_post salt-master.service
%fillup_only
@@ -779,11 +891,12 @@
%dir %attr(0750, root, root) %{_sysconfdir}/salt/minion.d/
%dir %attr(0750, root, root) %{_sysconfdir}/salt/pki/minion/
%dir %attr(0750, root, root) %{_localstatedir}/cache/salt/minion/
+#%dir %ghost %attr(0750, root, salt) %{_localstatedir}/run/salt/minion
%{_sbindir}/rcsalt-minion
# Install plugin only on SUSE machines
%if 0%{?suse_version}
-%{_prefix}/lib/zypp/plugins/commit/susemanager
+%{_prefix}/lib/zypp/plugins/commit/zyppnotify
%endif
%if %{with systemd}
@@ -796,6 +909,9 @@
%defattr(-,root,root)
%{_bindir}/salt-proxy
%{_mandir}/man1/salt-proxy.1.gz
+%if %{with systemd}
+%{_unitdir}/salt-proxy@.service
+%endif
%files master
%defattr(-,root,root)
@@ -835,6 +951,7 @@
%dir %attr(0750, salt, salt) %{_localstatedir}/cache/salt/master/roots/
%dir %attr(0750, salt, salt) %{_localstatedir}/cache/salt/master/syndics/
%dir %attr(0750, salt, salt) %{_localstatedir}/cache/salt/master/tokens/
+#%dir %ghost %attr(0750, salt, salt) %{_localstatedir}/run/salt/master/
%files raet
%defattr(-,root,root,-)
@@ -848,6 +965,7 @@
%{_bindir}/salt-unity
%{_mandir}/man1/salt-unity.1.gz
%{_mandir}/man1/salt-call.1.gz
+%{_mandir}/man1/spm.1.gz
%config(noreplace) %{_sysconfdir}/logrotate.d/salt
%{python_sitelib}/*
%exclude %{python_sitelib}/salt/cloud/deploy/*.sh
@@ -858,6 +976,7 @@
%dir %attr(0750, root, salt) %{_sysconfdir}/salt/pki
%dir %attr(0750, salt, salt) %{_localstatedir}/log/salt
%dir %attr(0750, root, salt) %{_localstatedir}/cache/salt
+#%dir %ghost %attr(0750, root, salt) %{_localstatedir}/run/salt
%dir %attr(0750, root, salt) /srv/spm
%if %{with systemd}
/usr/lib/tmpfiles.d/salt.conf
++++++ 0001-tserong-suse.com-We-don-t-have-python-systemd-so-not.patch ++++++
--- /var/tmp/diff_new_pack.7y20QC/_old 2016-09-30 15:35:07.000000000 +0200
+++ /var/tmp/diff_new_pack.7y20QC/_new 2016-09-30 15:35:07.000000000 +0200
@@ -1,7 +1,7 @@
-From f9dbfde1c3e7782d78f6b0b2b6b564f61749941f Mon Sep 17 00:00:00 2001
+From 3f8257601cb1224221e10e712c0377254714f6fc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Klaus=20K=C3=A4mpf?=
From 46476c37aa00d9cbbd0ac58e56b7e1c134d33b13 Mon Sep 17 00:00:00 2001 From: Christian McHugh
Date: Thu, 10 Mar 2016 13:25:01 -0600 Subject: [PATCH 06/13] Create salt-proxy instantiated service file
Add a systemd service file for salt-proxy. Instantiate a new proxy service with proxyid=p8000: # systemctl enable salt-proxy\@p8000.service # systemctl start salt-proxy\@p8000.service --- pkg/salt-proxy@.service | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 pkg/salt-proxy@.service diff --git a/pkg/salt-proxy@.service b/pkg/salt-proxy@.service new file mode 100644 index 000000000000..f97120a05589 --- /dev/null +++ b/pkg/salt-proxy@.service @@ -0,0 +1,12 @@ +[Unit] +Description=salt-proxy service +After=network.target + +[Service] +ExecStart=/usr/bin/salt-proxy --proxyid=%I +Type=simple +Restart=on-failure +RestartSec=5s + +[Install] +WantedBy=multi-user.target -- 2.8.3 ++++++ 0007-Add-zypp-notify-plugin.patch ++++++
From c0aacf83fa51015fb6e50ab96204a7b3c31413a8 Mon Sep 17 00:00:00 2001 From: Bo Maryniuk
Date: Mon, 9 May 2016 10:33:44 +0200 Subject: [PATCH 07/21] Add zypp-notify plugin
* Add unit test to the libzypp drift detector plugin
---
scripts/zypper/plugins/commit/README.md | 3 ++
scripts/zypper/plugins/commit/zyppnotify | 59 +++++++++++++++++++++++++++++
tests/unit/zypp_plugins_test.py | 51 +++++++++++++++++++++++++
tests/zypp_plugin.py | 64 ++++++++++++++++++++++++++++++++
4 files changed, 177 insertions(+)
create mode 100644 scripts/zypper/plugins/commit/README.md
create mode 100755 scripts/zypper/plugins/commit/zyppnotify
create mode 100644 tests/unit/zypp_plugins_test.py
create mode 100644 tests/zypp_plugin.py
diff --git a/scripts/zypper/plugins/commit/README.md b/scripts/zypper/plugins/commit/README.md
new file mode 100644
index 0000000..01c8917
--- /dev/null
+++ b/scripts/zypper/plugins/commit/README.md
@@ -0,0 +1,3 @@
+# Zypper plugins
+
+Plugins here are required to interact with SUSE Manager in conjunction of SaltStack and Zypper.
diff --git a/scripts/zypper/plugins/commit/zyppnotify b/scripts/zypper/plugins/commit/zyppnotify
new file mode 100755
index 0000000..268298b
--- /dev/null
+++ b/scripts/zypper/plugins/commit/zyppnotify
@@ -0,0 +1,59 @@
+#!/usr/bin/python
+#
+# Copyright (c) 2016 SUSE Linux LLC
+# All Rights Reserved.
+#
+# Author: Bo Maryniuk
From c80528b9aad5305b06a07cadf752a45392d4a147 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
Date: Tue, 24 May 2016 11:01:55 +0100 Subject: [PATCH 08/12] checksum validation when zypper pkg.download
check the signature of downloaded RPM files bugfix: showing errors when a package download fails using zypper pkg.download Renamed check_sig to checksum and some refactoring simpler rpm.checksum function --- salt/modules/zypper.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/salt/modules/zypper.py b/salt/modules/zypper.py index 92c604e..547d72b 100644 --- a/salt/modules/zypper.py +++ b/salt/modules/zypper.py @@ -1596,14 +1596,17 @@ def download(*packages, **kwargs): pkg_ret = {} for dld_result in __zypper__.xml.call('download', *packages).getElementsByTagName("download-result"): repo = dld_result.getElementsByTagName("repository")[0] + path = dld_result.getElementsByTagName("localfile")[0].getAttribute("path") pkg_info = { 'repository-name': repo.getAttribute('name'), 'repository-alias': repo.getAttribute('alias'), + 'path': path, } key = _get_first_aggregate_text( dld_result.getElementsByTagName('name') ) - pkg_ret[key] = pkg_info + if __salt__['lowpkg.checksum'](pkg_info['path']): + pkg_ret[key] = pkg_info if pkg_ret: failed = [pkg for pkg in packages if pkg not in pkg_ret] -- 2.8.2 ++++++ 0009-unit-tests-for-rpm.checksum-and-zypper.download.patch ++++++
From f186137c0eb7a14697037bf46ec6a12287b9e0c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
Date: Wed, 25 May 2016 17:08:16 +0100 Subject: [PATCH 09/12] unit tests for rpm.checksum() and zypper.download()
lint issue fixed --- tests/unit/modules/zypper_test.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/unit/modules/zypper_test.py b/tests/unit/modules/zypper_test.py index 308bf94..2f2b323 100644 --- a/tests/unit/modules/zypper_test.py +++ b/tests/unit/modules/zypper_test.py @@ -387,6 +387,7 @@ class ZypperTestCase(TestCase): test_out = { 'nmap': { + 'path': u'/var/cache/zypp/packages/SLE-12-x86_64-Pool/x86_64/nmap-6.46-1.72.x86_64.rpm', 'repository-alias': u'SLE-12-x86_64-Pool', 'repository-name': u'SLE-12-x86_64-Pool' } -- 2.9.2 ++++++ 0010-snapper-execution-module.patch ++++++ ++++ 1278 lines (skipped) ++++++ 0011-fix-salt-summary-to-count-not-responding-minions-cor.patch ++++++
From e3969a80bdf2d0af0c87463af859d8daf314f018 Mon Sep 17 00:00:00 2001 From: Michael Calmer
Date: Tue, 21 Jun 2016 13:12:48 +0200 Subject: [PATCH 11/12] fix salt --summary to count not responding minions correctly (bsc#972311)
In case a minion is not responding a dict is returned instead of a string. --- salt/cli/salt.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/salt/cli/salt.py b/salt/cli/salt.py index baeaf23..ec18f2e 100644 --- a/salt/cli/salt.py +++ b/salt/cli/salt.py @@ -264,7 +264,9 @@ class SaltCMD(parsers.SaltCMDOptionParser): not_connected_minions = [] failed_minions = [] for each_minion in ret: - minion_ret = ret[each_minion].get('ret') + minion_ret = ret[each_minion] + if (isinstance(minion_ret, dict) and 'ret' in minion_ret): + minion_ret = ret[each_minion].get('ret') if ( isinstance(minion_ret, string_types) and minion_ret.startswith("Minion did not return") -- 2.9.2 ++++++ 0012-Run-salt-api-as-user-salt-bsc-990029.patch ++++++
From af2ff55739187c59dc04e396b7787301a49a9dba Mon Sep 17 00:00:00 2001 From: Michael Calmer
Date: Fri, 29 Jul 2016 10:50:21 +0200 Subject: [PATCH 12/12] Run salt-api as user salt (bsc#990029)
--- pkg/salt-api.service | 1 + 1 file changed, 1 insertion(+) diff --git a/pkg/salt-api.service b/pkg/salt-api.service index 72379ba..9be2cb8 100644 --- a/pkg/salt-api.service +++ b/pkg/salt-api.service @@ -3,6 +3,7 @@ Description=The Salt API After=network.target [Service] +User=salt Type=simple LimitNOFILE=8192 ExecStart=/usr/bin/salt-api -- 2.9.2 ++++++ 0013-Deprecate-status.uptime-one-version-later.patch ++++++
From d19c9591c1dfbafec24a7d76402dcc9e2b17b047 Mon Sep 17 00:00:00 2001 From: Bo Maryniuk
Date: Thu, 4 Aug 2016 11:28:19 +0200 Subject: [PATCH 13/13] Deprecate status.uptime one version later
--- salt/modules/status.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/salt/modules/status.py b/salt/modules/status.py index 029426b..cebd57b 100644 --- a/salt/modules/status.py +++ b/salt/modules/status.py @@ -132,7 +132,7 @@ def custom(): return ret -@with_deprecated(globals(), "Boron") +@with_deprecated(globals(), "Carbon") def uptime(): ''' Return the uptime for this system. -- 2.9.2 ++++++ 0014-Add-ignore_repo_failure-option-to-suppress-zypper-s-.patch ++++++
From f860f7ccb3dba6b8f0cef61e2d9658a3116e3c3c Mon Sep 17 00:00:00 2001 From: Bo Maryniuk
Date: Mon, 15 Aug 2016 15:03:53 +0200 Subject: [PATCH 14/15] Add ignore_repo_failure option to suppress zypper's exit code 106 on unavailable repos
--- salt/modules/zypper.py | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/salt/modules/zypper.py b/salt/modules/zypper.py index 547d72b..1c60f0f 100644 --- a/salt/modules/zypper.py +++ b/salt/modules/zypper.py @@ -100,6 +100,18 @@ class _Zypper(object): self.__no_lock = False self.__no_raise = False self.__refresh = False + self.__ignore_repo_failure = False + + def __call__(self, *args, **kwargs): + ''' + :param args: + :param kwargs: + :return: + ''' + # Ignore exit code for 106 (repo is not available) + if 'no_repo_failure' in kwargs: + self.__ignore_repo_failure = kwargs['no_repo_failure'] + return self def __getattr__(self, item): ''' @@ -275,7 +287,7 @@ class _Zypper(object): __salt__['event.fire_master']({'success': not len(self.error_msg), 'info': self.error_msg or 'Zypper has been released'}, self.TAG_RELEASED) - if self.error_msg and not self.__no_raise: + if self.error_msg and not self.__no_raise and not self.__ignore_repo_failure: raise CommandExecutionError('Zypper command failure: {0}'.format(self.error_msg)) return self._is_xml_mode() and dom.parseString(self.__call_result['stdout']) or self.__call_result['stdout'] @@ -863,6 +875,7 @@ def install(name=None, downloadonly=None, skip_verify=False, version=None, + ignore_repo_failure=False, **kwargs): ''' Install the passed package(s), add refresh=True to force a 'zypper refresh' @@ -929,6 +942,10 @@ def install(name=None, salt '*' pkg.install sources='[{"foo": "salt://foo.rpm"},{"bar": "salt://bar.rpm"}]' + ignore_repo_failure + Zypper returns error code 106 if one of the repositories are not available for various reasons. + In case to set strict check, this parameter needs to be set to True. Default: False. + Returns a dict containing the new package names and versions:: @@ -1000,7 +1017,7 @@ def install(name=None, while targets: cmd = cmd_install + targets[:500] targets = targets[500:] - for line in __zypper__.call(*cmd).splitlines(): + for line in __zypper__(no_repo_failure=ignore_repo_failure).call(*cmd).splitlines(): match = re.match(r"^The selected package '([^']+)'.+has lower version", line) if match: downgrades.append(match.group(1)) @@ -1008,7 +1025,7 @@ def install(name=None, while downgrades: cmd = cmd_install + ['--force'] + downgrades[:500] downgrades = downgrades[500:] - __zypper__.call(*cmd) + __zypper__(no_repo_failure=ignore_repo_failure).call(*cmd) __context__.pop('pkg.list_pkgs', None) new = list_pkgs() -- 2.9.3 ++++++ 0015-Remove-zypper-s-raise-exception-if-mod_repo-has-no-a.patch ++++++
From 0809c60c693eb5d2e9569c24d995818097c6920d Mon Sep 17 00:00:00 2001 From: Bo Maryniuk
Date: Mon, 15 Aug 2016 17:35:01 +0200 Subject: [PATCH 15/15] Remove zypper's raise exception if mod_repo has no arguments and/or no changes
* Fix Unit test for suppressing the exception removal on non-modified repos --- salt/modules/zypper.py | 11 +++++++---- tests/unit/modules/zypper_test.py | 15 +++------------ 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/salt/modules/zypper.py b/salt/modules/zypper.py index 1c60f0f..1ec903e 100644 --- a/salt/modules/zypper.py +++ b/salt/modules/zypper.py @@ -824,6 +824,7 @@ def mod_repo(repo, **kwargs): cmd_opt = global_cmd_opt + ['mr'] + cmd_opt + [repo] __zypper__.refreshable.xml.call(*cmd_opt) + comment = None if call_refresh: # when used with "zypper ar --refresh" or "zypper mr --refresh" # --gpg-auto-import-keys is not doing anything @@ -831,11 +832,13 @@ def mod_repo(repo, **kwargs): refresh_opts = global_cmd_opt + ['refresh'] + [repo] __zypper__.xml.call(*refresh_opts) elif not added and not cmd_opt: - raise CommandExecutionError( - 'Specified arguments did not result in modification of repo' - ) + comment = 'Specified arguments did not result in modification of repo' + + repo = get_repo(repo) + if comment: + repo['comment'] = comment - return get_repo(repo) + return repo def refresh_db(): diff --git a/tests/unit/modules/zypper_test.py b/tests/unit/modules/zypper_test.py index 2f2b323..7caa707 100644 --- a/tests/unit/modules/zypper_test.py +++ b/tests/unit/modules/zypper_test.py @@ -73,7 +73,7 @@ class ZypperTestCase(TestCase): self.zypper_patcher_config = { '_get_configured_repos': Mock(side_effect=side_effect), '__zypper__': Mock(), - 'get_repo': Mock() + 'get_repo': Mock(return_value={}) } def test_list_upgrades(self): @@ -493,17 +493,8 @@ class ZypperTestCase(TestCase): 'salt.modules.zypper', **self.zypper_patcher_config) with zypper_patcher: - with self.assertRaisesRegexp( - Exception, - 'Specified arguments did not result in modification of repo' - ): - zypper.mod_repo(name, **{'url': url}) - with self.assertRaisesRegexp( - Exception, - 'Specified arguments did not result in modification of repo' - ): - zypper.mod_repo(name, **{'url': url, 'gpgautoimport': 'a'}) - + self.assertEqual(zypper.mod_repo(name, **{'url': url}), + {'comment': 'Specified arguments did not result in modification of repo'}) zypper.__zypper__.xml.call.assert_not_called() zypper.__zypper__.refreshable.xml.call.assert_not_called() -- 2.9.3 ++++++ 0016-Improve-Mock-to-be-flexible-and-able-to-mock-methods.patch ++++++
From 50865e300e6e90c5cc80c8878949a2f3bcaaeeec Mon Sep 17 00:00:00 2001 From: Bo Maryniuk
Date: Thu, 25 Aug 2016 16:47:08 +0200 Subject: [PATCH 16/16] Improve Mock to be flexible and able to mock methods from the mocked modules
* Configure importing Mock to handle 'total' method from psutils properly --- doc/conf.py | 37 +++++++++++++++++++++++++------------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/doc/conf.py b/doc/conf.py index 9cefed8..b73ca2a 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -15,31 +15,40 @@ from sphinx.directives import TocTree # pylint: disable=R0903 class Mock(object): ''' - Mock out specified imports + Mock out specified imports. This allows autodoc to do its thing without having oodles of req'd installed libs. This doesn't work with ``import *`` imports. + This Mock class can be configured to return a specific values at specific names, if required. + http://read-the-docs.readthedocs.org/en/latest/faq.html#i-get-import-errors-... ''' - def __init__(self, *args, **kwargs): - pass + def __init__(self, mapping=None, *args, **kwargs): + """ + Mapping allows to bypass the Mock object, but actually assign + a specific value, expected by a specific attribute returned. + """ + self.__mapping = mapping or {} __all__ = [] def __call__(self, *args, **kwargs): - ret = Mock() # If mocked function is used as a decorator, expose decorated function. # if args and callable(args[-1]): # functools.update_wrapper(ret, args[0]) - return ret - - @classmethod - def __getattr__(cls, name): - if name in ('__file__', '__path__'): - return '/dev/null' + return Mock(mapping=self.__mapping) + + def __getattr__(self, name): + #__mapping = {'total': 0} + data = None + if name in self.__mapping: + data = self.__mapping.get(name) + elif name in ('__file__', '__path__'): + data = '/dev/null' else: - return Mock() + data = Mock(mapping=self.__mapping) + return data # pylint: enable=R0903 MOCK_MODULES = [ @@ -133,7 +142,11 @@ MOCK_MODULES = [ ] for mod_name in MOCK_MODULES: - sys.modules[mod_name] = Mock() + if mod_name == 'psutil': + mock = Mock(mapping={'total': 0}) # Otherwise it will crash Sphinx + else: + mock = Mock() + sys.modules[mod_name] = mock def mock_decorator_with_params(*oargs, **okwargs): ''' -- 2.9.3 ++++++ 0017-Check-for-single-quote-before-splitting-on-single-qu.patch ++++++
From e9b4a199f48abc94be71082c56b6b059c6694dc0 Mon Sep 17 00:00:00 2001 From: Eric Jackson
Date: Tue, 30 Aug 2016 15:47:07 -0400 Subject: [PATCH 17/17] Check for single quote before splitting on single quote
Signed-off-by: Eric Jackson
From df1f88c51a40e69935830d1664a46dadf514dc69 Mon Sep 17 00:00:00 2001 From: Justin Anderson
Date: Tue, 23 Aug 2016 15:02:31 -0600 Subject: [PATCH 19/19] Fix snapper_test for python26
* Use assertCountEqual instead of assertItemsEqual for Python 3
* Skip one Snapper test on 2.6
There's a slight difference in the diff comparison but we should be
able to catch true failures here with 2.7.
---
tests/unit/modules/snapper_test.py | 41 ++++++++++++++++++++++++++++++--------
1 file changed, 33 insertions(+), 8 deletions(-)
diff --git a/tests/unit/modules/snapper_test.py b/tests/unit/modules/snapper_test.py
index f27b2ba..43f8898 100644
--- a/tests/unit/modules/snapper_test.py
+++ b/tests/unit/modules/snapper_test.py
@@ -6,19 +6,26 @@ Unit tests for the Snapper module
:codeauthor: Pablo Suárez Hernández
From 65dba3e9ab088087943f67367dc27fce00e4cd92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?=
Date: Tue, 13 Sep 2016 11:05:35 +0100 Subject: [PATCH 20/20] Integration tests fixes for 2016.3.2
* Fix PillarModuleTest::test_pillar_items: 'info' does not exist in pillar * Fixing integration tests if azure is not present * Fixing integration tests failures if 'git' command is missing Skip git state integration tests if 'git' does not exists Prevent OSError if 'git' command not found during _git_version() --- tests/integration/cloud/providers/msazure.py | 17 +++++++++-------- tests/integration/modules/git.py | 15 +++++++++------ tests/integration/modules/pillar.py | 1 - tests/integration/states/git.py | 2 +- 4 files changed, 19 insertions(+), 16 deletions(-) diff --git a/tests/integration/cloud/providers/msazure.py b/tests/integration/cloud/providers/msazure.py index c4934e4..4e53add 100644 --- a/tests/integration/cloud/providers/msazure.py +++ b/tests/integration/cloud/providers/msazure.py @@ -53,14 +53,15 @@ def __has_required_azure(): ''' Returns True/False if the required version of the Azure SDK is installed. ''' - if hasattr(azure, '__version__'): - version = LooseVersion(azure.__version__) - else: - version = LooseVersion(azure.common.__version__) - if HAS_AZURE is True and REQUIRED_AZURE <= version: - return True - else: - return False + if HAS_AZURE: + if hasattr(azure, '__version__'): + version = LooseVersion(azure.__version__) + else: + version = LooseVersion(azure.common.__version__) + + if REQUIRED_AZURE <= version: + return True + return False @skipIf(HAS_AZURE is False, 'These tests require the Azure Python SDK to be installed.') diff --git a/tests/integration/modules/git.py b/tests/integration/modules/git.py index 7c40664..f5c15f3 100644 --- a/tests/integration/modules/git.py +++ b/tests/integration/modules/git.py @@ -36,12 +36,15 @@ log = logging.getLogger(__name__) def _git_version(): - git_version = subprocess.Popen( - ['git', '--version'], - shell=False, - close_fds=True, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE).communicate()[0] + try: + git_version = subprocess.Popen( + ['git', '--version'], + shell=False, + close_fds=True, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE).communicate()[0] + except OSError: + return False if not git_version: log.debug('Git not installed') return False diff --git a/tests/integration/modules/pillar.py b/tests/integration/modules/pillar.py index b081f76..3d55b4c 100644 --- a/tests/integration/modules/pillar.py +++ b/tests/integration/modules/pillar.py @@ -119,7 +119,6 @@ class PillarModuleTest(integration.ModuleCase): from pillar.items ''' get_items = self.run_function('pillar.items') - self.assertDictContainsSubset({'info': 'bar'}, get_items) self.assertDictContainsSubset({'monty': 'python'}, get_items) self.assertDictContainsSubset( {'knights': ['Lancelot', 'Galahad', 'Bedevere', 'Robin']}, diff --git a/tests/integration/states/git.py b/tests/integration/states/git.py index a78b271..87681ba 100644 --- a/tests/integration/states/git.py +++ b/tests/integration/states/git.py @@ -20,6 +20,7 @@ import integration import salt.utils +@skip_if_binaries_missing('git') class GitTest(integration.ModuleCase, integration.SaltReturnAssertsMixIn): ''' Validate the git state @@ -254,7 +255,6 @@ class GitTest(integration.ModuleCase, integration.SaltReturnAssertsMixIn): finally: shutil.rmtree(name, ignore_errors=True) - @skip_if_binaries_missing('git') def test_config_set_value_with_space_character(self): ''' git.config -- 2.8.2 ++++++ 0021-Fix-pkg.upgrade-for-zypper.patch ++++++
From 2cac0c3839af12b0a474f4cb0c0854995cd8dc2a Mon Sep 17 00:00:00 2001 From: "C. R. Oldham"
Date: Wed, 21 Sep 2016 20:05:33 -0600 Subject: [PATCH 21/21] Fix pkg.upgrade for zypper
---
salt/modules/zypper.py | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/salt/modules/zypper.py b/salt/modules/zypper.py
index 4bb9a09..21b87b0 100644
--- a/salt/modules/zypper.py
+++ b/salt/modules/zypper.py
@@ -1079,10 +1079,11 @@ def upgrade(refresh=True, skip_verify=False):
refresh_db()
old = list_pkgs()
- to_append = ''
if skip_verify:
- to_append = '--no-gpg-checks'
- __zypper__.noraise.call('update', '--auto-agree-with-licenses', to_append)
+ __zypper__.noraise.call('update', '--auto-agree-with-licenses', '--no-gpg-checks')
+ else:
+ __zypper__.noraise.call('update', '--auto-agree-with-licenses')
+
if __zypper__.exit_code not in __zypper__.SUCCESS_EXIT_CODES:
ret['result'] = False
ret['comment'] = (__zypper__.stdout() + os.linesep + __zypper__.stderr()).strip()
--
2.10.0
++++++ salt-2015.8.8.tar.gz -> salt-2016.3.2.tar.gz ++++++
/work/SRC/openSUSE:Factory/salt/salt-2015.8.8.tar.gz /work/SRC/openSUSE:Factory/.salt.new/salt-2016.3.2.tar.gz differ: char 5, line 1
++++++ update-documentation.sh ++++++
#!/bin/bash
#
# Update html.tar.bz2 documentation tarball
# Author: Bo Maryniuk
participants (1)
-
root@hilbert.suse.de