[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: post-commit question/issue

From: Jeff Lanzarotta <delux256-subversion_at_yahoo.com>
Date: 2007-05-02 15:41:03 CEST

That was it. I had to path in the python interpretor...

Thanks.

--- david x callaway <dxc@pobox.com> wrote:

> why not set up the env python needs before calling it rather than
> messing with the python scripts? I don't know python, but in ruby
> you
> might want to do
> export RUBYLIB=/home/you/ruby/lib
> or similar, to pick up your local libs. for python itself you can
> either do
> export PATH=/usr/bin
> or
> PYTHON=/usr/bin/python
> ...
> $PYTHON /path/to/script.py
> ... etc
>
> since the hook is called with an empty env it is up to you to set
> anything that isn't compiled in or found without the env, for example
>
> ruby will pick up the system libs but not your local ones.
>
> dxc
>
> Jeff Lanzarotta wrote:
> > Not quite sure how to do that since it is a python script, but I
> will
> > take a look at it...
> >
> > --- Matt Sickler <crazyfordynamite@gmail.com> wrote:
> >
> >> Make sure that mailer.py also has absolute paths in it - it
> inherits
> >> the
> >> empty environment from the hook too.
> >>
> >> On 5/1/07, Jeff Lanzarotta <delux256-subversion@yahoo.com> wrote:
> >>> I went ahead and added the absolute paths, but unfortunately that
> >> did
> >>> not work... Is there a log somewhere where I can tell what is
> going
> >> on?
> >>> --- Jeff Lanzarotta <delux256-subversion@yahoo.com> wrote:
> >>>
> >>>> I am starting to agree with you. As Andrew R Feller, stated also
> >>>> about
> >>>> the security reasons Subversion uses an empty environment...
> >>>>
> >>>> I will give that a try... Thanks...
> >>>>
> >>>> --- David Ferguson <ferguson.david@gmail.com> wrote:
> >>>>
> >>>>> Try using absolute paths to mailer.py and mailer.conf. I don't
> >>>> think
> >>>>> you
> >>>>> can be guaranteed in which path Subversion will execute your
> >>>>> post-commit
> >>>>> script. So if you put mailer.py and mailer.conf in your
> >>>> repository's
> >>>>> hooks
> >>>>> directory, the following should work:
> >>>>>
> >>>>> $REPOS/hooks/mailer.py commit "$REPOS" "$REV"
> >>>>> $REPOS/hooks/mailer.conf
> >>>>>
> >>>>> On 5/1/07, Jeff Lanzarotta <delux256-subversion@yahoo.com>
> >> wrote:
> >>>>>> Here is is...
> >>>>>>
> >>>>>> ----------8<----------
> >>>>>>
> >>>>>> #!/bin/sh
> >>>>>> # POST-COMMIT HOOK
> >>>>>> #
> >>>>>> # The post-commit hook is invoked after a commit.
> >> Subversion
> >>>>> runs
> >>>>>> # this hook by invoking a program (script, executable,
> >> binary,
> >>>>> etc.)
> >>>>>> # named 'post-commit' (for which this file is a template)
> >> with
> >>>>> the
> >>>>>> # following ordered arguments:
> >>>>>> #
> >>>>>> # [1] REPOS-PATH (the path to this repository)
> >>>>>> # [2] REV (the number of the revision just
> >>>> committed)
> >>>>>> #
> >>>>>> # The default working directory for the invocation is
> >>>> undefined,
> >>>>> so
> >>>>>> # the program should set one explicitly if it cares.
> >>>>>> #
> >>>>>> # Because the commit has already completed and cannot be
> >>>> undone,
> >>>>>> # the exit code of the hook program is ignored. The hook
> >>>> program
> >>>>>> # can use the 'svnlook' utility to help it examine the
> >>>>>> # newly-committed tree.
> >>>>>> #
> >>>>>> # On a Unix system, the normal procedure is to have
> >>>> 'post-commit'
> >>>>>> # invoke other programs to do the real work, though it may
> >> do
> >>>> the
> >>>>>> # work itself too.
> >>>>>> #
> >>>>>> # Note that 'post-commit' must be executable by the user(s)
> >> who
> >>>>> will
> >>>>>> # invoke it (typically the user httpd runs as), and that
> >> user
> >>>>> must
> >>>>>> # have filesystem-level permission to access the
> >> repository.
> >>>>>> #
> >>>>>> # On a Windows system, you should name the hook program
> >>>>>> # 'post-commit.bat' or 'post-commit.exe',
> >>>>>> # but the basic idea is the same.
> >>>>>> #
> >>>>>> # The hook program typically does not inherit the
> >> environment
> >>>> of
> >>>>>> # its parent process. For example, a common problem is for
> >> the
> >>>>>> # PATH environment variable to not be set to its usual
> >> value,
> >>>> so
> >>>>>> # that subprograms fail to launch unless invoked via
> >> absolute
> >>>>> path.
> >>>>>> # If you're having unexpected problems with a hook program,
> >> the
> >>>>>> # culprit may be unusual (or missing) environment
> >> variables.
> >>>>>> #
> >>>>>> # Here is an example hook script, for a Unix /bin/sh
> >>>> interpreter.
> >>>>>> # For more examples and pre-written hooks, see those in
> >>>>>> # the Subversion repository at
> >>>>>> # http://svn.collab.net/repos/svn/trunk/tools/hook-scripts/
> >> and
> >>>>>> #
> >> http://svn.collab.net/repos/svn/trunk/contrib/hook-scripts/
> >>>>>> REPOS="$1"
> >>>>>> REV="$2"
> >>>>>>
> >>>>>> ./mailer.py commit "$REPOS" "$REV" mailer.conf
> >>>>>>
> >>>>>> ----------8<----------
> >>>>>>
> >>>>>> I am running Subversion 1.4.3 under openSUSE 10.1
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> --- Andrew R Feller <afelle1@lsu.edu> wrote:
> >>>>>>
> >>>>>>> Hello Jeff,
> >>>>>>>
> >>>>>>> Could you post your post-commit script please? Also,
> >> please
> >>>> note
> >>>>> the
> >>>>>>> following from the Subversion book:
> >>>>>>>
> >>>>>>>
> >
>
========================================================================
> >>>>>>> ====
> >>>>>>> For security reasons, the Subversion repository executes
> >> hook
> >>>>>>> programs
> >>>>>>> with an empty environment-that is, no environment variables
> >> are
> >>>>> set
> >>>>>>> at
> >>>>>>> all, not even $PATH (or %PATH%, under Windows). Because of
> >>>> this,
> >>>>> many
> >>>>>>> administrators are baffled when their hook program runs
> >> fine by
> >>>>> hand,
> >>>>>>> but doesn't work when run by Subversion. Be sure to
> >> explicitly
> >>>>> set
> >>>>>>> any
> >>>>>>> necessary environment variables in your hook program and/or
> >> use
> >>>>>>> absolute
> >>>>>>> paths to programs.
> >>>>>>>
> >
>
========================================================================
> >>>>>>> ====
> >>>>>>>
> >>>>>>> Trust me; this gets a lot of us! (v_v;)
> >>>>>>>
> >>>>>>> Thanks,
> >>>>>>> A-
> >>>>>>>
> >>>>>>> Andrew R Feller, Analyst
> >>>>>>> University Information Systems
>
=== message truncated ===

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed May 2 15:43:40 2007

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.