Subversion hook no acepta el certificate de forma permanente

Espero que alguien pueda responder mi pregunta.

Tengo la configuration de Subversion, servida por Apache2 + SSL, haciendo desarrollo web.

Quiero un enlace posterior a la confirmación que ejecute svn update en mi server de testing, de modo que cuando alguien se comprometa, actualice automáticamente el sitio de testing. El gancho no funciona porque el certificate es autogenerado y no es confiable.

Intenté aceptar (p) de forma errada, pero no es así.

¿Algunas ideas?

root poseía la carpeta .subversion en my $ HOME, así que la eliminé y ejecuté 'svn up' nuevamente. Todo está bien ahora.

En Linux:

Aquí arreglé el problema cambiando los files en $ HOME / .subversion / auth / svn.ssl.server a -rw-r – r–. Aparentemente, si un server obtiene un certificate nuevo o actualizado, Escribe el nuevo file, pero no agrega derechos de escritura para sí mismo. con -r – r – r– derechos el progtwig svn funciona, pero no puede escribir el indicador "Aceptar permanentemente" en el file … 🙂

No dijo qué plataforma está ejecutando su server de testing, pero si es una caja de Windows, entonces necesita agregar el certificate al almacén de certificates de su server de testing. Los siguientes artículos de TechNet pueden ser de alguna utilidad:

  • Tiendas de certificates: Clave pública
  • Una guía paso a paso para la administración avanzada de certificates

Es posible que la subversión se ejecute como un usuario diferente a aquel con el que aceptaste el certificate cuando lo llamó el enganche. Intenta descubrir quién es el usuario (p. Ej., Pon "echo $ USER> / tmp / svn-hook-user" en la secuencia de commands post-commit hook) y utiliza sudo para aceptar el certificate como ese usuario.

Alternativamente, consulte el libro de Subversion sobre cómo configurar su configuration para que se acepten certificates autofirmados: gestión de certificates SSL .

¿Estás usando sudo o algo en el guión? Sudo generalmente limpia las variables de entorno, por lo que HOME no existe. Debe tener un directory personal de escritura donde Subversion pueda almacenar la información sobre el certificate aceptado permanentemente. Así que configura la variable HOME al comienzo del script y debería funcionar.

Tenía el mismo problema al configurar esto en el Servidor de Windows con Apache. El enganche post commit fallará. No estoy seguro de que SVN sea independiente, pero utilizo el Servidor VisualSVN que se ejecuta como un Servicio de Windows. La count de usuario pnetworkingeterminada para este service era Servicio de networking, así que simplemente cambié la count a mi propia count de administrador y todo funcionó.

Cuando su sitio de testing está en el mismo server, use el file: /// para verificar el repository y evitar la verificación de cert.

svn co file:///path_to/your/repo