2011-03-25 11 views
16

Realicé una compilación en TeamCity que implementa código en el servidor activo. Como medida de precaución quiero deshabilitar ese botón "ejecutar" se puede hacer clic por error. Así que quiero tener un nivel adicional de comprobación "si estoy seguro" quiero hacer clic en el botón "ejecutar". ¿Es posible lograrlo? ¡Gracias de antemano!Cómo bloquear el botón "Ejecutar" en TeamCity

Respuesta

0

No creo que haya un botón de deshabilitar para ejecutar. Puede pausar la compilación y ejecutarla cuando desee implementar en el servidor activo.

0

No es que yo sepa. Si tiene una empresa, puede configurarla para que haya una cuenta especial que tenga permisos para ejecutar esa compilación. Otra solución consistiría en hacer que la construcción vea una sucursal específica en su repositorio de SCM con permisos restringidos, etc. Por lo general, fusionarse con una sucursal requiere un poco de esfuerzo, por lo que no es tan fácil como golpearlo por accidente. También asegura que alguien que golpee la ejecución no necesariamente agarrará la última copia inestable del tronco o algo así.

15

No creo que haya una forma de deshabilitar el botón Ejecutar.

Un enfoque que he utilizado es tener una propiedad que se pasa al script de construcción que debe ser verdadero para que se ejecute el script, es falso o no se establece, entonces el script de construcción arroja un error. Luego, en la configuración de compilación en la página de Variables de entorno de Properties & establezco la propiedad en false. Ahora cada vez que necesito ejecutar el script tengo que usar el botón "Ejecutar compilación personalizada" (el bit "| ..." junto al botón Ejecutar), luego establezco el valor en verdadero antes de presionar el botón de compilación.

4

No puede deshabilitar el botón de ejecución, pero puede establecer permisos para que las personas aún puedan ver el proyecto sin la posibilidad de ejecutarlo (específicamente la función Ejecutar compilación).

En cuanto a la confirmación, no hay nada integrado en TeamCity para lograr esto, pero creo que sería posible escribir un pequeño complemento para obtener este tipo de funcionalidad.

información Plugin:

http://confluence.jetbrains.net/display/TCD6/Developing+TeamCity+Plugins

5

Otra opción más fácil, es agregar un requisito agente para su construcción tal que sólo el agente del servidor de producción puede cumplir con él (por ejemplo env.COMPUTERNAME es igual a MyProductionServer01), y luego desactive el agente con una nota sobre "bloquear" la compilación de producción. Esto evitará que la compilación se ejecute realmente si hace clic accidentalmente en el botón Ejecutar.

3

De hecho, no hay ninguna posibilidad de ocultar botón Ejecutar a menos que la configuración de construcción se coloca en un proyecto diferente, que usuario no tiene permiso para ejecutar construye en.

Hay una relacionada feature request de seguimiento de incidencias TeamCity.

En cuanto a solicitar la confirmación, todavía no hay direct support, pero desde TeamCity 7.0 uno puede agregar un parámetro con modo "prompt" y esto dará como resultado la ejecución del diálogo de compilación personalizada al hacer clic en Ejecutar.

1

Hemos resuelto esto proporcionando doble inicio de sesión para nuestros usuarios. El usuario normal no tiene permiso para ejecutar proyectos peligrosos, pero si el registro como usuario.relevante también tiene acceso al botón de ejecución para estos proyectos.

Por lo tanto, en situaciones normales, no hay riesgo de que se ejecute por accidente.

+1

El segundo beneficio aquí es que también tenemos la posibilidad de permitir que solo los usuarios mayores puedan ejecutar estos proyectos críticos. –

Cuestiones relacionadas