13

Estoy intentando configurar un activador de compilación para TeamCity utilizando Mercurial como VCS. Ahora el disparador se ve así:Cómo configurar un activador de compilación de Mercurial VCS para TeamCity que ignora las operaciones de etiqueta

+:/** 

Este disparador se activa cuando se comprometen los conjuntos de cambios. Sin embargo, tengo la configuración de TeamCity para etiquetar cada compilación en el VCS. El proceso de etiquetado está activando el desencadenante de compilación anterior, por lo que la compilación queda atrapada en un bucle.

¿Alguien puede sugerir un disparador de compilación VCS que filtrará el proceso de etiquetado?

Respuesta

24

Añadiendo el patrón de disparo:

-:/.hgtags 

filtra el archivo .hgtags del gatillo de construcción. Este es el archivo que se modifica cuando TeamCity marca la fuente. Cuando se excluye este archivo, las operaciones de etiquetado no dispararán el desencadenador de compilación.

+0

He intentado diferentes opciones/patrones para deshacerme de este problema. ¡De hecho, esta fue la mejor solución! Thx – Chris

+0

¡Realmente esto no funciona! Como dice el cuadro de diálogo de etiqueta. Nota: las reglas de verificación solo se pueden establecer en directorios, los archivos no son compatibles – AlSki

+0

Y realmente me gustaría una respuesta sobre esto también – AlSki

1

TeamCity y la sintaxis anterior son extraños para mí, pero si usted tiene las capacidades de scripting se puede comprobar si un conjunto de cambios es una etiqueta de sólo conjunto de cambios por hacer algo como esto:

if [ "$(hg log -r tip --template '{files}')" = '.hgtags' ]; then 
    echo tag only 
else 
    echo other stuff too 
fi 

Sólo intercambiar tip para cualquier cambio en el que esté a punto de actuar, y cambie las instrucciones de eco a exit, make, o hg tag según sea apropiado para omitir la compilación o simplemente omita la creación de una nueva etiqueta si el último conjunto de cambios fue solo un etiqueta.

+0

Gracias Ry4an. El script que mira el archivo .hgtags me lleva a la solución de filtrar este archivo con un disparador de compilación. –

Cuestiones relacionadas