| Server IP : 77.68.64.21 / Your IP : 216.73.217.105 Web Server : Apache System : Linux hp3-wp-1011378.hostingp3.local 3.10.0-1160.144.1.el7.tuxcare.els9.x86_64 #1 SMP Fri Jul 10 17:06:31 UTC 2026 x86_64 User : csh2668128 ( 2112425) PHP Version : 8.1.34 Disable Function : shell_exec,exec,system,popen,set_time_limit MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/ruby/vendor_ruby/puppet/util/ |
Upload File : |
require 'etc'
module Puppet
module Util
class RunMode
def initialize(name)
@name = name.to_sym
end
attr :name
def self.[](name)
@run_modes ||= {}
if Puppet.features.microsoft_windows?
@run_modes[name] ||= WindowsRunMode.new(name)
else
@run_modes[name] ||= UnixRunMode.new(name)
end
end
def master?
name == :master
end
def agent?
name == :agent
end
def user?
name == :user
end
def run_dir
"$vardir/run"
end
def log_dir
"$vardir/log"
end
private
##
# select the system or the user directory depending on the context of
# this process. The most common use is determining filesystem path
# values for confdir and vardir. The intended semantics are:
# {http://projects.puppetlabs.com/issues/16637 #16637} for Puppet 3.x
#
# @todo this code duplicates {Puppet::Settings#which\_configuration\_file}
# as described in {http://projects.puppetlabs.com/issues/16637 #16637}
def which_dir( system, user )
File.expand_path(if Puppet.features.root? then system else user end)
end
end
class UnixRunMode < RunMode
def conf_dir
which_dir("/etc/puppet", "~/.puppet")
end
def var_dir
which_dir("/var/lib/puppet", "~/.puppet/var")
end
end
class WindowsRunMode < RunMode
def conf_dir
which_dir(File.join(windows_common_base("etc")), "~/.puppet")
end
def var_dir
which_dir(File.join(windows_common_base("var")), "~/.puppet/var")
end
private
def windows_common_base(*extra)
[Dir::COMMON_APPDATA, "PuppetLabs", "puppet"] + extra
end
end
end
end