Please review pull request #219: (maint) Add correct path separator for Windows hosts opened by (djm68)

Description:

Windows hosts require a ';' vs a ':'. Added a new entry
'pathseparator' to host/unix.rb host/windows.rb

  • Opened: Tue May 15 19:33:23 UTC 2012
  • Based on: puppetlabs:master (6f6068799c25c8e28d6f6660ad77b03c3ccb5a6b)
  • Requested merge: djm68:add_host_based_path_separator (4ae58ba7e0d7b4355e22c985da30ce4a0687f510)

Diff follows:

diff --git a/lib/command.rb b/lib/command.rb
index 22ae433..ec605f5 100644
--- a/lib/command.rb
+++ b/lib/command.rb
@@ -40,8 +40,8 @@ def exec(host, options={})
   # [environment] an optional Hash containing key-value pairs to be treated as environment variables that should be
   #     set for the duration of the puppet command.
   def puppet_env_command(host_info, environment = {})
-    rubylib = [host_info['hieralibdir'], host_info['pluginlibpath'], host_info['puppetlibdir'], host_info['facterlibdir'],'$RUBYLIB'].compact.join(':')
-    path    = [host_info['puppetbindir'], host_info['facterbindir'],'$PATH'   ].compact.join(':')
+    rubylib = [host_info['hieralibdir'], host_info['pluginlibpath'], host_info['puppetlibdir'], host_info['facterlibdir'],'$RUBYLIB'].compact.join(host_info['pathseparator'])
+    path    = [host_info['puppetbindir'], host_info['facterbindir'],'$PATH'   ].compact.join(host_info['pathseparator'])
     cmd     = host_info['platform'] =~ /windows/ ? 'cmd.exe /c' : ''
 
     # if the caller passed in an "environment" hash, we need to build up a string of the form " KEY1=VAL1 KEY2=VAL2"
diff --git a/lib/host/unix.rb b/lib/host/unix.rb
index 550397e..288aa1c 100644
--- a/lib/host/unix.rb
+++ b/lib/host/unix.rb
@@ -14,19 +14,21 @@ class Host < Host
     include Unix::Exec
 
     PE_DEFAULTS = {
-      'user'         => 'root',
-      'puppetpath'   => '/etc/puppetlabs/puppet',
-      'puppetbin'    => '/opt/puppet/bin/puppet',
-      'puppetbindir' => '/opt/puppet/bin'
+      'user'          => 'root',
+      'puppetpath'    => '/etc/puppetlabs/puppet',
+      'puppetbin'     => '/opt/puppet/bin/puppet',
+      'puppetbindir'  => '/opt/puppet/bin',
+      'pathseparator' => ':',
     }
 
     DEFAULTS = {
-      'user'         => 'root',
-      'puppetpath'   => '/etc/puppet',
-      'puppetvardir' => '/var/lib/puppet',
-      'puppetbin'    => '/usr/bin/puppet',
-      'puppetbindir' => '/usr/bin',
-      'hieralibdir'  => '/opt/puppet-git-repos/hiera/lib'
+      'user'          => 'root',
+      'puppetpath'    => '/etc/puppet',
+      'puppetvardir'  => '/var/lib/puppet',
+      'puppetbin'     => '/usr/bin/puppet',
+      'puppetbindir'  => '/usr/bin',
+      'hieralibdir'   => '/opt/puppet-git-repos/hiera/lib',
+      'pathseparator' => ':',
     }
 
     def initialize(name, overrides, defaults)
diff --git a/lib/host/windows.rb b/lib/host/windows.rb
index 36f298b..2236dc3 100644
--- a/lib/host/windows.rb
+++ b/lib/host/windows.rb
@@ -14,19 +14,21 @@ class Host < Host
     include Windows::Exec
 
     PE_DEFAULTS = {
-      'user'         => 'Administrator',
-      'group'        => 'Administrators',
-      'puppetpath'   => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
-      'puppetvardir' => '`cygpath -smF 35`/PuppetLabs/puppet/var',
-      'puppetbindir' => '`cygpath -F 38`/Puppet Labs/Puppet Enterprise/bin',
+      'user'          => 'Administrator',
+      'group'         => 'Administrators',
+      'puppetpath'    => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
+      'puppetvardir'  => '`cygpath -smF 35`/PuppetLabs/puppet/var',
+      'puppetbindir'  => '`cygpath -F 38`/Puppet Labs/Puppet Enterprise/bin',
+      'pathseparator' => ';',
     }
 
     DEFAULTS = {
-      'user'         => 'Administrator',
-      'group'        => 'Administrators',
-      'puppetpath'   => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
-      'puppetvardir' => '`cygpath -smF 35`/PuppetLabs/puppet/var',
-      'hieralibdir'  => '/opt/puppet-git-repos/hiera/lib',
+      'user'          => 'Administrator',
+      'group'         => 'Administrators',
+      'puppetpath'    => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
+      'puppetvardir'  => '`cygpath -smF 35`/PuppetLabs/puppet/var',
+      'hieralibdir'   => '`cygpath -w /opt/puppet-git-repos/hiera/lib`',
+      'pathseparator' => ';',
     }
 
     def initialize(name, overrides, defaults)

    

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to [email protected].
For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to