Integración de TeamCity e IBM Rational Team Concert (RTC)

¿Alguien ha usado TeamCity con Rational Team Concert (RTC)? ¿Hay alguna otra continuous integration para RTC?

Como IBM que trabaja con Team Concert, puedo decir que RTC count con una continuous integration construida de fábrica. Es posible que desee consultar las definiciones de construcción – pestaña de progtwigción – para habilitarlo.

No he usado TeamCity con RTC, pero tenemos un artículo sobre la integración de sistemas de compilation externos como Hudson con RTC Build: http://jazz.net/library/article/350/ Básicamente, el enfoque es permitir que Hudson siga impulsando las comstackciones. , pero use las tareas RTC Build Ant para crear y completar un resultado de compilation de RTC correspondiente al trabajo de Hudson.

Sí, Team City trabajará con RTC, solo necesita usar una Definición de construcción iniciada por la CLI en RTC o llamar a la scm de RTC desde el lado de TeamCity.

No existe una integración específica, por lo que si desea contribuir de nuevo a RTC con el estado y los resultados, tendrá que acceder a las librerías buildtoolkit de ant.

He utilizado Team City, Hudson, Jazz Build Engine, Cruise Control y Build Forge con RTC con éxito y estoy seguro de que hay muchos otros, ya que es muy fácil conectarlos en un acoplamiento flexible.

Actualmente estamos evaluando Team Concert, y eso incluye intentar implementar nuestra propia integración entre RTC y TeamCity.

El ejercicio básico consiste en aprovechar las dos API de Java para crear un complemento de control de Versión . Hay un pequeño puñado de funciones que debe implementar para la ciudad del equipo; nuestro prototipo es de aproximadamente 1000 líneas de fuente, total.

El mayor problema parece ser este: que TeamCity espera que la pregunta getCurrentVersion () tenga una respuesta coherente y estable, y que no parezca ser cierta para los flujos y las áreas de trabajo. Por el momento, estamos tratando de evitar esto permitiendo que vcs root cree líneas de base cuando sea necesario, pero esto tiene algunos efectos secundarios no deseados cuando intenta trabajar con un espacio de trabajo de repository (en particular, colocar una línea base también se cierra completa) cualquier set de cambio abierto ….

Además, el model RTC le permite realizar saltos discontinuos en el sistema fuente: un espacio de trabajo sincronizado actualmente con la línea de base 20 puede reasignarse a la línea base 25 o línea de base 15, ninguno de los cuales forma parte del historial anterior de ese componente en ese espacio de trabajo Entonces, ¿qué deberíamos decirle a la ciudad de equipo la respuesta a "parchear esto en la versión actual" debería ser?

Hay una página wiki para aprender la API RTC de Java.

Un aspecto que está documentado, pero se las arregló para atraparme por sorpresa de todos modos, es que la lógica para get una connection con el repository le dará, de manera pnetworkingeterminada, una connection compartida. Esto crea un lío cuando los desarrolladores intentan crear raíces de VCS para su propio espacio de trabajo. Hay banderas disponibles para evitar el intercambio.