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.

Reply via email to