acabo encontrado con este problema con Hudson v2.2.1 (sí, sé que es una versión antigua). No estoy seguro de qué desencadenó las compilaciones fuera de control, ya que no parece que los cambios de configuración se alineen con el inicio de la fuga. Sin embargo, he encontrado una solución alternativa (adicional).
En la página de configuración del trabajo, hay una opción (casilla de verificación) para "Restringir dónde se puede ejecutar este proyecto", con dos opciones (botón de opción) para seleccionar los medios de restricción: "Menú de nodo y etiqueta" o "Expresiones avanzadas de nodo y etiqueta", una de las cuales debe seleccionarse.
Cuando se selecciona la segunda de esas opciones, "expresiones de nodo avanzada y Label", un campo de texto de forma libre parece que le permite introducir una expresión lógica que combina términos de
- el conjunto de nombres de nodos esclavos ("BUILDDEV3" en la respuesta de @Camy), unión
- el conjunto de todos los valores esclavos de las etiquetas ("constructores principales" en la respuesta de @Camy).
Por ejemplo, major-builders && !BUILDDEV3
.
Cuando la primera de estas opciones, se selecciona "Nodo y el menú de etiquetas", una lista de selección parece que le permite elegir un valor de una lista que contenga los términos de:
- el conjunto de esclavos nombres de nodo, unión
- la lista de todos los valores de la etiqueta de esclavos, unión
- el conjunto de todas las expresiones definidas actualmente en cualquier trabajo del mecanismo de "nodo avanzada y expresiones de etiqueta".
Observe que el conjunto de nombres de los nodos esclavos se tratan inherentemente como etiquetas esclavas. @ Sugerencia de Campey es no meterse con el mecanismo de selección, pero para agregar explícitamente el nombre del nodo esclavo a la lista de etiquetas para cada esclavo. Esto funcionará, pero tiene posibles efectos secundarios, por ejemplo, si cambia el nombre de un nodo. No lo he intentado pero puede incluso provocar que aparezcan duplicados en la lista de términos de selección para el selector de envío. Prefiero evitar la captura de información redundante.
Mi solución alternativa es no siempre seleccionar los nombres de nodo esclavo implícitas, pero sólo usar etiquetas o expresiones que contienen sólo las etiquetas en el mecanismo de selección, independientemente o la que elijas. Esto nunca será redundante.
Por ejemplo, para expresar el ejemplo anterior: major-builders && !BUILDDEV3
, donde "major-builders" es una etiqueta y "BUILDDEV3" es un nombre de nodo, uno debería agregar una etiqueta de nodo única al nodo "BUILDDEV3" tal como "NOTHERE", y luego usa la expresión, major-builders && !NOTHERE
.
¿Es posible que el esclavo específico tiene un tiempo diferente de la máquina que mantiene el repositorio GIT? He visto problemas como que esto ocurra con un repositorio SVN debido al hecho de que el esclavo y la máquina repositorio fueron ligeramente fuera de sincronización (en alrededor de 2 minutos o así). No estoy seguro si GIT es susceptible al problema fuera de sincronización, pero podría valer la pena verificarlo. – Petrik