Jean-Baptiste Quenot <j...@caraldi.com> writes:

> 2009/4/23 Mark Plaksin <ha...@usg.edu>:
>
>>
>> We want to switch our Puppet config repository from SVN to Git.  Our SVN
>> repository has a pre-commit hook that does a syntax check.  If the check
>> fails, the commit fails.  With SVN that hook runs on the server so it's
>> easy to have (the correct version of) the puppet binary there for the
>> hook to use.
>>
>> With Git it looks like the pre-commit hook has to run wherever a person
>> happens to have checked out the Git repository.  That could be a
>> desktop, laptop...just about anywhere.  It's harder to make sure the
>> correct version of Puppet is in all of those places.
>>
>> Is there a pretty way to solve this problem?  How do you do it?
>
> I would do this in the "update" hook of the central repository, so
> that it is invoked before changesets are pushed.

Wow, thanks for the pointer!

Are there nice examples of this sort of thing somewhere?  I see how we
can use 'git show --pretty=format:"%b" $newrev' to get a diff of what's
being pushed.  But once we have that, it seems like we have to apply the
diff to an up-to-date checkout of the repo, figure out which files were
added and changed and then run --parseonly against those files.  All
possible but it seems like there might be an easier way :)


--~--~---------~--~----~------------~-------~--~----~
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
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