Don't forget that subversion hooks run without an environment... For security reasons, the Subversion repository executes hook scripts with an empty environment---that is, no environment variables are set at all, not even $PATH or %PATH%. Because of this, a lot of administrators are baffled when their hook script runs fine by hand, but doesn't work when run by Subversion. Be sure to explicitly set environment variables in your hook and/or use absolute paths to programs.
Does it work if you fully qualify the paths to the executables in your hook script? On 29/04/2010 17:29, Brad Lhotsky wrote: > Also remember puppet is running at the user puppet, so you have to > have execute for the user or group puppet on your pre-commit hook. > > On Thu, Apr 29, 2010 at 8:30 AM, Maxim Ianoglo <dot...@gmail.com > <mailto:dot...@gmail.com>> wrote: > > Here is the history :) > > After I setup pre-commit hook, I tried to commit some changes and got > the error I mentioned in first post. > > I thought that could be the issue with puppet itself, so I tried to > run this command from console: > /usr/bin/puppet --color=false --confdir=/tmp --vardir=/tmp --parseonly > --ignoreimport shell.pp > > And it worked fine. > > Then i read ( and thought ) that the cause could be PATH variable. I > set it - but no luck. > > On Apr 29, 11:18 am, Patrick <kc7...@gmail.com > <mailto:kc7...@gmail.com>> wrote: > > On Apr 29, 2010, at 12:54 AM, Maxim Ianoglo wrote: > > > > > > > > > > > > > Hello, > > > > > I tried to add a pre-commit hook using this tutorial: > > > > projects.puppetlabs.com/projects/puppet/wiki/Puppet_Version_Control > <http://projects.puppetlabs.com/projects/puppet/wiki/Puppet_Version_Control> > > > > > But I get this error. > > > > > =========================================================================== > == > > > > [im(1000)@tech04:~/puppet2/trunk/clients/puppet/modules/main/inetd/ > > > manifests] > svn commit > > > Sending manifests/init.pp > > > Transmitting file data .svn: Commit failed (details follow): > > > svn: 'pre-commit' hook failed with error output: > > > /usr/lib/ruby/site_ruby/1.8/facter/util/loader.rb:73: command not > > > found: hostname > > > /usr/lib/ruby/site_ruby/1.8/facter/util/loader.rb:73: command not > > > found: hostname > > > /usr/lib/ruby/site_ruby/1.8/facter/util/loader.rb:73: command not > > > found: dnsdomainname > > > /usr/lib/ruby/site_ruby/1.8/facter/util/loader.rb:73: command not > > > found: domainname > > > /usr/lib/ruby/site_ruby/1.8/puppet/defaults.rb:216: undefined > method > > > `downcase' for nil:NilClass (NoMethodError) > > > from > /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in > > > `gem_original_require' > > > from > /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in > > > `require' > > > from /usr/lib/ruby/site_ruby/1.8/puppet.rb:110 > > > from > /usr/lib/ruby/site_ruby/1.8/puppet/application/puppet.rb:1:in > > > `require' > > > from /usr/lib/ruby/site_ruby/1.8/puppet/application/puppet.rb:1 > > > from /usr/bin/puppet:70:in `require' > > > from /usr/bin/puppet:70 > > > Puppet syntax error in trunk/clients/puppet/modules/main/inetd/ > > > manifests/init.pp. > > > > > svn: Your commit message was left in a temporary file: > > > svn: > '/home/im/puppet2/trunk/clients/puppet/modules/main/inetd/svn- > > > commit.2.tmp' > > > > > =========================================================================== > == > > > > > If I run this from console - everything is ok. > > > > > I tried to add PATH variable, but no luck. > > > > > Did anyone faced this issue before ? > > > > Sorry but I got a bit lost. What's working from the console and > where is it failing from? Is it the verify script failing when > called from the hook or does "svn commit" work only if it's run on > the console? > > > > -- > > You received this message because you are subscribed to the > Google Groups "Puppet Users" group. > > To post to this group, send email to > puppet-users@googlegroups.com <mailto:puppet-users@googlegroups.com>. > > To unsubscribe from this group, send email to > puppet-users+unsubscr...@googlegroups.com > <mailto:puppet-users%2bunsubscr...@googlegroups.com>. > > For more options, visit this group > athttp://groups.google.com/group/puppet-users?hl=en > <http://groups.google.com/group/puppet-users?hl=en>. > > -- > You received this message because you are subscribed to the Google > Groups "Puppet Users" group. > To post to this group, send email to puppet-users@googlegroups.com > <mailto:puppet-users@googlegroups.com>. > To unsubscribe from this group, send email to > puppet-users+unsubscr...@googlegroups.com > <mailto:puppet-users%2bunsubscr...@googlegroups.com>. > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > > > > > -- > Brad Lhotsky > -- > You received this message because you are subscribed to the Google > Groups "Puppet Users" group. > To post to this group, send email to puppet-us...@googlegroups.com. > To unsubscribe from this group, send email to > puppet-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. -- Trevor Hemsley Infrastructure Engineer ................................................. * C A L Y P S O * Brighton, UK OFFICE +44 (0) 1273 666 350 FAX +44 (0) 1273 666 351 ................................................. www.calypso.com This electronic-mail might contain confidential information intended only for the use by the entity named. If the reader of this message is not the intended recipient, the reader is hereby notified that any dissemination, distribution or copying is strictly prohibited. * P * /*/ Please consider the environment before printing this e-mail /*/ -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-us...@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.