File puppet-systemd-default-on-new-suse.patch of Package rubygem-puppet

From 2532e38589fc0b3b6c02e72071d5cc8b1e92558d Mon Sep 17 00:00:00 2001
From: Kylo Ginsberg <kylo@puppetlabs.com>
Date: Tue, 1 Sep 2015 11:24:08 -0700
Subject: [PATCH] (PUP-4697) Make systemd the default service provider for all
 suse's *except* 10 and 11

Previously, the default service provider for suse was 'redhat' with
an override of 'systemd' for suse 12 and 13. However this doesn't work for the rolling
release of suse (tumbleweed) or the next (leap), which are both systemd
based.

This reverses the logic so the default service provider is 'systemd'
with overrides for suse 10 and suse 11.

Thanks to Robert Monteanu for researching what suse versions are using what
init systems.

I also updated some unrelated spec tests in provider/service/systemd_spec.rb
to use 'stubs' rather than 'expects' - the latter made the tests unnecessarily
brittle and was testing implementation rather than behavior.
---
 lib/puppet/provider/service/redhat.rb      |  3 +-
 lib/puppet/provider/service/systemd.rb     |  2 +-
 spec/unit/provider/service/redhat_spec.rb  |  9 ++++-
 spec/unit/provider/service/systemd_spec.rb | 64 ++++++++++++++++--------------
 4 files changed, 46 insertions(+), 32 deletions(-)

diff --git a/lib/puppet/provider/service/redhat.rb b/lib/puppet/provider/service/redhat.rb
index 6e49a8f..4f3f9b8 100644
--- a/lib/puppet/provider/service/redhat.rb
+++ b/lib/puppet/provider/service/redhat.rb
@@ -8,7 +8,8 @@
 
   commands :chkconfig => "/sbin/chkconfig", :service => "/sbin/service"
 
-  defaultfor :osfamily => [:redhat, :suse]
+  defaultfor :osfamily => :redhat
+  defaultfor :osfamily => :suse, :operatingsystemmajrelease => ["10", "11"]
 
   # Remove the symlinks
   def disable
diff --git a/lib/puppet/provider/service/systemd.rb b/lib/puppet/provider/service/systemd.rb
index 17766e2..94a4f61 100644
--- a/lib/puppet/provider/service/systemd.rb
+++ b/lib/puppet/provider/service/systemd.rb
@@ -8,7 +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"]
+  defaultfor :osfamily => :suse

   def self.instances
     i = []
 
openSUSE Build Service is sponsored by