[Pkg-puppet-devel] [SCM] Puppet packaging for Debian branch, upstream, updated. 0.25.5-639-g8f94f35

Markus Roberts Markus at reality.com
Wed Jul 14 10:37:48 UTC 2010


The following commit has been merged in the upstream branch:
commit 27d5a4782c442908c71bb9abac9f78654581eacf
Author: Matt Robinson <matt at puppetlabs.com>
Date:   Mon Jul 12 16:57:35 2010 -0700

    [#4215] Have rundir depend on vardir
    
    This came up because if you ran puppetd with a specific vardir, then
    when rundir got set to a hardcoded value its parent directory might not
    exist and the whole thing would fail.
    
    This change came about with the concept of run_mode, and this fix is
    restoring the behaviour that was in 0.25.x
    
    Reviewed-by: Jesse Wolfe
    Signed-off-by: Matt Robinson <matt at puppetlabs.com>

diff --git a/lib/puppet/util/run_mode.rb b/lib/puppet/util/run_mode.rb
index eb9c511..450cbf1 100644
--- a/lib/puppet/util/run_mode.rb
+++ b/lib/puppet/util/run_mode.rb
@@ -40,17 +40,17 @@ module Puppet
       end
 
       def run_dir
-        which_dir("/var/run/puppet", "~/.puppet/var")
+        "$vardir/run"
       end
 
       def logopts
-        if name == :master
+        if master?
           {
             :default => "$vardir/log",
-            :mode => 0750,
-            :owner => "service",
-            :group => "service",
-            :desc => "The Puppet log directory."
+            :mode    => 0750,
+            :owner   => "service",
+            :group   => "service",
+            :desc    => "The Puppet log directory."
           }
         else
           ["$vardir/log", "The Puppet log directory."]
@@ -64,9 +64,9 @@ module Puppet
         #       there's a comment that suggests that we do that
         #       and we currently don't.
         expand_path case
-        when name == :master; global
-        when Puppet.features.root?; global
-        else user
+          when name == :master; global
+          when Puppet.features.root?; global
+          else user
         end
       end
 
diff --git a/spec/unit/util/run_mode_spec.rb b/spec/unit/util/run_mode_spec.rb
new file mode 100644
index 0000000..d6ab08a
--- /dev/null
+++ b/spec/unit/util/run_mode_spec.rb
@@ -0,0 +1,51 @@
+#!/usr/bin/env ruby
+
+require File.dirname(__FILE__) + '/../../spec_helper'
+
+describe Puppet::Util::RunMode do
+  before do
+    @run_mode = Puppet::Util::RunMode.new('fake')
+  end
+
+  it "should have confdir /etc/puppet when run as root" do
+    Puppet.features.stubs(:root?).returns(true)
+    @run_mode.conf_dir.should == '/etc/puppet'
+  end
+
+  it "should have confdir ~/.puppet when run as non-root" do
+    Puppet.features.stubs(:root?).returns(false)
+    @run_mode.expects(:expand_path).with("~/.puppet").returns("~/.puppet")
+    @run_mode.conf_dir.should == "~/.puppet"
+  end
+
+  it "should have vardir /var/lib/puppet when run as root" do
+    Puppet.features.stubs(:root?).returns(true)
+    @run_mode.var_dir.should == '/var/lib/puppet'
+  end
+
+  it "should have vardir ~/.puppet/var when run as non-root" do
+    Puppet.features.stubs(:root?).returns(false)
+    @run_mode.expects(:expand_path).with("~/.puppet/var").returns("~/.puppet/var")
+    @run_mode.var_dir.should == "~/.puppet/var"
+  end
+
+  it "should have rundir depend on vardir" do
+    @run_mode.run_dir.should == '$vardir/run'
+  end
+
+  it "should have logopts return an array with $vardir/log if runmode is not master" do
+    @run_mode.expects(:master?).returns false
+    @run_mode.logopts.should == ["$vardir/log", "The Puppet log directory."]
+  end
+
+  it "should have logopts return a hash with $vardir/log and other metadata if runmode is master" do
+    @run_mode.expects(:master?).returns true
+    @run_mode.logopts.should == {
+      :default => "$vardir/log",
+      :mode    => 0750,
+      :owner   => "service",
+      :group   => "service",
+      :desc    => "The Puppet log directory.",
+    }
+  end
+end

-- 
Puppet packaging for Debian



More information about the Pkg-puppet-devel mailing list