commit rubygem-puppet for openSUSE:Factory
Hello community, here is the log from the commit of package rubygem-puppet for openSUSE:Factory checked in at 2015-05-29 10:41:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-puppet (Old) and /work/SRC/openSUSE:Factory/.rubygem-puppet.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "rubygem-puppet" Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-puppet/rubygem-puppet.changes 2015-01-22 21:49:03.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.rubygem-puppet.new/rubygem-puppet.changes 2015-05-29 10:41:36.000000000 +0200 @@ -1,0 +2,30 @@ +Thu May 28 07:49:27 UTC 2015 - dgutu@suse.com + +- Updated the change file + +------------------------------------------------------------------- +Thu May 14 19:31:57 UTC 2015 - tampakrap@opensuse.org + +- Add puppet-ruby-2_2.patch that fixes the ruby 2.2 support + +------------------------------------------------------------------- +Tue May 12 10:51:13 UTC 2015 - tampakrap@opensuse.org + +- Re-run g2r +- Fix the systemd patch to actually apply +- Remove the ext/{debian,gentoo} dirs for all ruby versions + +------------------------------------------------------------------- +Mon May 11 12:51:28 UTC 2015 - tampakrap@opensuse.org + +- Update to 3.7.5 + * https://docs.puppetlabs.com/puppet/3.7/reference/release_notes.html#puppet-3... + * https://docs.puppetlabs.com/puppet/3.7/reference/release_notes.html#puppet-3... +- Add upstream patch puppet-zypper-lu.patch to cache the output of zypper list-updates + https://tickets.puppetlabs.com/browse/PUP-3968 +- Add upstream patch puppet-systemd-default.patch to make systemd default on SLE12 and openSUSE >12.x + https://tickets.puppetlabs.com/browse/PUP-3338 +- Add runtime dependency on tar, needed by the "puppet module" command to + unpack tarballs that it fetches from the forge + +------------------------------------------------------------------- Old: ---- puppet-3.7.3.gem New: ---- puppet-3.7.5.gem puppet-ruby-2_2.patch puppet-systemd-default.patch puppet-zypper-lu.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-puppet.spec ++++++ --- /var/tmp/diff_new_pack.y8U6cK/_old 2015-05-29 10:41:37.000000000 +0200 +++ /var/tmp/diff_new_pack.y8U6cK/_new 2015-05-29 10:41:37.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package rubygem-puppet # -# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,7 +24,7 @@ # Name: rubygem-puppet -Version: 3.7.3 +Version: 3.7.5 Release: 0 %define mod_name puppet %define mod_full_name %{mod_name}-%{version} @@ -43,6 +43,7 @@ BuildRequires: fdupes Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd +Requires: tar %if 0%{?suse_version} >= 1210 BuildRequires: systemd %{?systemd_requires} @@ -62,6 +63,11 @@ Source1: puppetmaster.fw Source2: puppet.fw Source3: gem2rpm.yml +# MANUAL +Patch0: %{mod_name}-zypper-lu.patch +Patch1: %{mod_name}-systemd-default.patch +Patch2: %{mod_name}-ruby-2_2.patch +# /MANUAL Summary: A network tool for managing many disparate systems License: Apache-2.0 Group: Development/Languages/Ruby @@ -74,6 +80,11 @@ cron jobs, and hosts, along with obviously discrete elements like packages, services, and files. %prep +%gem_unpack +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%gem_build %build @@ -132,7 +143,10 @@ install -Dp -m0644 $gemdir/ext/emacs/puppet-mode-init.el $emacsdir/site-start.d/puppet-mode-init.el # Remove those dirs as they cause strange runtime dependencies -rm -rf $gemdir/ext/{debian,gentoo} +for gem in $(/usr/bin/ruby-find-versioned gem) ; do + gemdir="%{buildroot}$($gem env gemdir)/gems/%{mod_full_name}" + rm -rf $gemdir/ext/{debian,gentoo} +done # /MANUAL @@ -198,7 +212,7 @@ %{?systemd_requires} %endif -# Requires: rubygem-puppet = 3.7.3 +# Requires: rubygem-puppet = 3.7.5 %description master Puppet lets you centrally manage every important aspect of your system using a cross-platform specification language that manages all the @@ -282,7 +296,7 @@ Provides: puppet-vim = %{version}-%{release} Obsoletes: puppet-vim < %{version}-%{release} -# Requires: rubygem-puppet = 3.7.3 +# Requires: rubygem-puppet = 3.7.5 %description vim Vim ftdetect and syntax files for Puppet manifests @@ -305,7 +319,7 @@ Supplements: packageand(emacs:%{name}) Provides: puppet-emacs = %{version}-%{release} -# Requires: rubygem-puppet = 3.7.3 +# Requires: rubygem-puppet = 3.7.5 %description emacs Emacs syntax files for Puppet manifests ++++++ gem2rpm.yml ++++++ --- /var/tmp/diff_new_pack.y8U6cK/_old 2015-05-29 10:41:37.000000000 +0200 +++ /var/tmp/diff_new_pack.y8U6cK/_new 2015-05-29 10:41:37.000000000 +0200 @@ -9,6 +9,10 @@ separate elements normally aggregated in different files, like users, cron jobs, and hosts, along with obviously discrete elements like packages, services, and files. +:patches: + '%{mod_name}-zypper-lu.patch': -p1 + '%{mod_name}-systemd-default.patch': -p1 + '%{mod_name}-ruby-2_2.patch': -p1 :main: :preamble: |- Provides: %{mod_name} = %{version}-%{release} @@ -34,6 +38,7 @@ BuildRequires: fdupes Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd + Requires: tar %if 0%{?suse_version} >= 1210 BuildRequires: systemd %{?systemd_requires} @@ -91,7 +96,10 @@ install -Dp -m0644 $gemdir/ext/emacs/puppet-mode-init.el $emacsdir/site-start.d/puppet-mode-init.el # Remove those dirs as they cause strange runtime dependencies - rm -rf $gemdir/ext/{debian,gentoo} + for gem in $(/usr/bin/ruby-find-versioned gem) ; do + gemdir="%{buildroot}$($gem env gemdir)/gems/%{mod_full_name}" + rm -rf $gemdir/ext/{debian,gentoo} + done :scripts: :pre: |- getent group puppet >/dev/null || /usr/sbin/groupadd -r puppet ++++++ puppet-3.7.3.gem -> puppet-3.7.5.gem ++++++ ++++ 16331 lines of diff (skipped) ++++++ puppet-ruby-2_2.patch ++++++ --- a/lib/puppet/vendor/safe_yaml/lib/safe_yaml/syck_node_monkeypatch.rb 2015-05-12 20:28:38.540000000 +0200 +++ b/lib/puppet/vendor/safe_yaml/lib/safe_yaml/syck_node_monkeypatch.rb 2015-05-12 20:28:54.708000000 +0200 @@ -39,5 +39,7 @@ if defined?(YAML::Syck::Node) YAML::Syck.module_eval monkeypatch else - Syck.module_eval monkeypatch + if defined?(Syck) + Syck.module_eval monkeypatch + end end ++++++ puppet-systemd-default.patch ++++++
From bdd0dfdda47032a269b42a53c864fe91856eaedd Mon Sep 17 00:00:00 2001 From: Rob Braden <bradejr@puppetlabs.com> Date: Wed, 24 Sep 2014 11:41:51 -0700 Subject: [PATCH] (pup-3338) Make systemd the default service provider for SLES 12
OpenSuSE >= 12 and SLES 12 use systemd as the default service management framework. This updates puppet to use the systemd provider by default on OpenSuSE 12 and 13 and SLES 12 --- lib/puppet/provider/service/systemd.rb | 1 + spec/unit/provider/service/systemd_spec.rb | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/lib/puppet/provider/service/systemd.rb b/lib/puppet/provider/service/systemd.rb index eb6df29..e717049 100644 --- a/lib/puppet/provider/service/systemd.rb +++ b/lib/puppet/provider/service/systemd.rb @@ -8,6 +8,7 @@ defaultfor :osfamily => [:archlinux] defaultfor :osfamily => :redhat, :operatingsystemmajrelease => "7" defaultfor :osfamily => :redhat, :operatingsystem => :fedora, :operatingsystemmajrelease => ["17", "18", "19", "20", "21"] + defaultfor :osfamily => :suse, :operatingsystemmajrelease => ["12", "13"] def self.instances i = [] ++++++ puppet-zypper-lu.patch ++++++
From 358cabca903e019b863d654a74711581bc14b331 Mon Sep 17 00:00:00 2001 From: Theo Chatzimichos <tampakrap@gmail.com> Date: Thu, 5 Feb 2015 22:06:08 +0100 Subject: [PATCH] (PUP-3968) Cache the `zypper list-updates` output
The zypper provider calls `zypper list-updates` in order to get a list of the packages that have newer versions. Then it checks if the resource name matches any of the items in the list, and then applies the newer version. The problem with the above though is that it runs list-updates for every single package instance, while it should be run only once, as it provides all the packages that have newer versions available. This commit caches the list-updates output and puts its contents in a hash, so that each package resource will query this instead of zypper directly Signed-off-by: Adrien Thebo <adrienthebo@somethigsinistral.net> --- lib/puppet/provider/package/zypper.rb | 34 +++++++++++++++++++++++-------- spec/unit/provider/package/zypper_spec.rb | 2 +- 2 files changed, 27 insertions(+), 9 deletions(-) diff --git a/lib/puppet/provider/package/zypper.rb b/lib/puppet/provider/package/zypper.rb index 2fe6cdf..c74358c 100644 --- a/lib/puppet/provider/package/zypper.rb +++ b/lib/puppet/provider/package/zypper.rb @@ -12,6 +12,30 @@ confine :operatingsystem => [:suse, :sles, :sled, :opensuse] + def self.latest_package_version(package) + if @latest_versions.nil? + @latest_versions = list_updates + end + + @latest_versions[package] + end + + def self.list_updates + output = zypper 'list-updates' + + avail_updates = {} + + # split up columns + output.lines.each do |line| + pkg_ver = line.split(/\s*\|\s*/) + # ignore zypper headers + next unless pkg_ver[0] == 'v' + avail_updates[pkg_ver[2]] = pkg_ver[4] + end + + avail_updates + end + #on zypper versions <1.0, the version option returns 1 #some versions of zypper output on stderr def zypper_version @@ -72,16 +96,10 @@ def install # What's the latest package version available? def latest - #zypper can only get a list of *all* available packages? - output = zypper "list-updates" - - if output =~ /#{Regexp.escape @resource[:name]}\s*\|.*?\|\s*([^\s\|]+)/ - return $1 - else + return self.class.latest_package_version(@resource[:name]) || # zypper didn't find updates, pretend the current # version is the latest - return @property_hash[:ensure] - end + @property_hash[:ensure] end def update diff --git a/spec/unit/provider/package/zypper_spec.rb b/spec/unit/provider/package/zypper_spec.rb index 3265858..73389fe 100755 --- a/spec/unit/provider/package/zypper_spec.rb +++ b/spec/unit/provider/package/zypper_spec.rb @@ -119,7 +119,7 @@ fake_data = File.read(my_fixture('zypper-list-updates-SLES11sp1.out')) @resource.stubs(:[]).with(:name).returns "at" - @provider.expects(:zypper).with("list-updates").returns fake_data + described_class.expects(:zypper).with("list-updates").returns fake_data @provider.latest.should == "3.1.8-1069.18.2" end end
participants (1)
-
root@hilbert.suse.de