2011-01-07 11 views
5

Lo que trato de hacer aquí es realizar algún tipo de acción SVN utilizando las credenciales que Hudson ha almacenado en ella.Usar credenciales SVN en Hudson para realizar acciones de SVN personalizadas

E.g.

  1. Iniciar una acumulación de Foo proyecto
  2. Proyecto Foo inicia una secuencia de comandos shell
  3. Shell script realiza una etiqueta de la fuente de corriente para el proyecto de Foo utilizando las credenciales establecidas en Hudson
  4. Construir continúa

Ahora sé que hay varios plugins de etiquetado, pero estos no son exactamente lo que yo quiero ya que el etiquetado depende de las opciones para la construcción en lugar de sobre el éxito de construcción. Puedo guiar el asunto muy bien, pero todo se cae cuando se ejecuta bajo Hudson, ya que la copia de svn no funcionará sin las credenciales requeridas, de ahí la necesidad de acceder a la que Hudson ya ha utilizado para realizar el proyecto.

+0

Impar. Tengo un script de compilación que hace exactamente esto, y no tengo que hacer nada especial para ejecutar comandos svn desde el directorio de trabajo que Hudson comprobó. ¿Tal vez está ejecutando su copia desde la raíz del espacio de trabajo, en lugar del directorio de trabajo real? –

+0

@Dave Bacher: ¿su servidor svn requiere autenticación? –

+0

@Arthur Ulfeldt: sí, lo hace (y las credenciales svn almacenadas en Hudson tienen acceso de lectura-escritura). Es posible que haya hecho alguna configuración inicial (como el usuario que ejecuta el proceso de Hudson) para configurar svn para que los comandos svn CLI funcionen para el usuario de Hudson, p. 'sudo -u hudson svn info $ repo_url' y dejar que svn almacene las credenciales. –

Respuesta

1

This El artículo menciona que las secuencias de comandos pueden acceder a las credenciales de Hudson SVN desde el sistema de archivos, ya que están almacenadas en un archivo en texto sin formato. El artículo trae a colación otros temas también, así que pise con cuidado.

+0

Parece que está en la dirección correcta, pero ¿cómo hago uso del archivo subversion.credentials en sí? – cyborg

+0

En realidad no se guardan en texto claro, al menos no para mí. Pero recuerdo hace mucho tiempo que no estaban encriptados. Pero creo que la solución viene en 2008 o 2009. Ya no recuerdo. –

+0

El artículo que mencioné se escribió en octubre de 2010. No especifica qué versión de Hudson están usando. – Bernard

0

no inventamos la rueda de nuevo. Consulte el Subversion Tagging PLugin. Según su descripción para 3. este complemento debería ser suficiente para usted.

+0

No, no quiero etiquetar construcciones exitosas, es un poco más complicado. Esto es para la creación de las ramas candidatas de lanzamiento y debe ser una combinación de iniciado por el usuario y en una compilación exitosa. También necesita realizar otras acciones. – cyborg

+0

no creo que tengas mucha suerte con la reutilización de Hudson almacenado credenciales .--- pero si se utiliza Maven o al menos tener Maven disponibles, usted debe ser capaz de utilizar el plugin m2release. http://wiki.hudson-ci.org/display/HUDSON/M2+Release+Plugin –

Cuestiones relacionadas