2 votes

hook post-commit exécuté en tant que quel utilisateur dans svn

Apache sur une machine Windows fonctionnant en tant que SYSTEM.
Quel utilisateur et quel mot de passe doivent être utilisés pour un post-commit.bat ?

J'essaie de copier le contenu d'un répertoire pour le tester sur une version de développement sur le serveur Web et je ne semble pas réussir à le faire fonctionner.

2voto

RedGlyph Points 6046

Le hook scripts sera lancé par le serveur, donc vous devez seulement vous assurer que l'utilisateur correspondant (SYSTEM pour vous) a

  • accès en lecture/écriture aux référentiels (ce qui devrait déjà être le cas)
  • Accès en lecture/exécution au crochet script.

Selon ce que fait votre script, vous pouvez avoir besoin de plus, par exemple s'il crée un journal - s'il accède à d'autres ressources en général. C'est probablement le problème que vous avez rencontré.

De plus, si le crochet script est un .bat, la fonction COMSPEC est nécessaire pour trouver le shell (j'ai eu ce problème avec Windows XP, c'était principalement dû à une mauvaise configuration). Cette variable est typiquement définie comme C:\Windows\system32\cmd.exe . PATH est également très importante, bien sûr.

Notez que cela pourrait être trompeur, lorsque vous testez le script avec un autre login utilisateur, vous pouvez avoir un autre accès que votre identité serveur ne pourra pas avoir.


Edit : Il est possible de définir ou d'étendre des variables d'environnement importantes telles que PATH y COMSPEC au début du lot script, si vous n'êtes pas sûr de ce qu'ils contiennent avec le compte du serveur. Par exemple,

SET ComSpec=%SystemRoot%\system32\cmd.exe
SET PATH=%PATH%;C:\Tools\SVN\svn-win32-1.4.6\bin

C'est parfois plus facile que de rester dans le noir et d'essayer de modifier le compte du serveur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X