Hello,

Here it is:
#!/bin/sh

REPOS="$1"
TXN="$2"

# synthax check of commited sources
PATH='/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/bin:/sbin:/
usr/bin:/usr/sbin:'
tmpfile=`mktemp`
export HOME=/
SVNLOOK=/usr/bin/svnlook
$SVNLOOK changed -t "$TXN" "$REPOS" | awk '{print $2}' | grep '\.pp$'
| while read line
do
    $SVNLOOK cat -t "$TXN" "$REPOS" "$line" > $tmpfile
    if [ $? -ne 0 ]
    then
        echo "Warning: Failed to checkout $line" >&2
    fi
    /usr/bin/puppet --color=false --confdir=/tmp --vardir=/tmp --
parseonly --ignoreimport $tmpfile >&2
    if [ $? -ne 0 ]
    then
        echo "Puppet syntax error in $line." >&2
        exit 2
    fi
done
res=$?
rm -f $tmpfile
if [ $res -ne 0 ]
then
    exit $res
fi


Thank you.
--
Maxim Ianoglo

On Apr 29, 10:26 pm, Joe McDonagh <joseph.e.mcdon...@gmail.com> wrote:
> Maxim Ianoglo wrote:
> > Hello,
>
> > I tried to add a pre-commit hook using this tutorial:
> > 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 ?
>
> > Puppet Version: puppet-0.25.4-1
> > OS Version: CentOS release 5.4 (Final)
> > Ruby Version: 1.8.6
>
> > Thakn you.
> > --
> > Maxim Ianoglo
>
> Please paste the code from the pre-commit.
>
> --
> Joe McDonagh
> AIM: YoosingYoonickz
> IRC: joe-mac on freenode
> "When the going gets weird, the weird turn pro."
>
> --
> 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 
> athttp://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-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