2010-09-20 37 views
0

J'ai réussi à mettre en place un script post-commit qui peut envoyer des e-mails et autres. Je l'ai étendu à, lors de la validation, checkout le repo nouvellement engagé localement et exécutez doxygen dessus. J'ai cependant un problème avec les autorisations. Lorsque je fais un commit (qui est mappé via HTTP), mon journal post-commit indique que l'autorisation est refusée pour l'extraction et l'exécution de doxygen. J'ai défini la propriété du fichier de la copie de travail locale sur le même que le script de hook post-commit, donc j'aurais pensé que lorsque SVN pourrait exécuter le script post-commit, il serait capable de le manipuler de la même manière.SVN Hook n'a pas les permissions d'écriture

Comment accorder un accès en écriture pour subversion, afin que mon post-commit puisse faire des choses comme générer de la documentation?

Merci.

Répondre

0

Vous devez vous rappeler ce qui est en cours d'exécution du programme svn. Si vous exécutez ceci via votre HTTP, alors quel que soit l'utilisateur de votre serveur web, vous lancerez le svn. Cela signifie que www-data, apache ou un autre utilisateur de serveur Web doit disposer des autorisations d'écriture sur les répertoires auxquels vous voulez écrire.

Habituellement, je crée un répertoire temporaire nommé d'après le pid ($$ dans le script bash post-commit), puis je fais tout mon travail là-dedans.