2010-04-07 25 views

Respuesta

20

Usamos Hudson :), que funciona muy bien con Delphi.

Aquí tiene una configuración completa para uno de mis proyectos: objetivo delphi-7

<?xml version='1.0' encoding='UTF-8'?> 
<project> 
    <actions/> 
    <description></description> 
    <keepDependencies>false</keepDependencies> 
    <properties/> 
    <scm class="hudson.scm.CVSSCM"> 
    <cvsroot>:sspi:cvsonly:[email protected]:/baz</cvsroot> 
    <module>SIP</module> 
    <canUseUpdate>false</canUseUpdate> 
    <flatten>true</flatten> 
    <isTag>false</isTag> 
    <excludedRegions></excludedRegions> 
    </scm> 
    <canRoam>true</canRoam> 
    <disabled>false</disabled> 
    <triggers class="vector"/> 
    <builders> 
    <hudson.tasks.BatchFile> 
     <command>&quot;C:\Program Files\Nant\bin\nant&quot; -buildfile:etc\sip.build build-d7 test</command> 
    </hudson.tasks.BatchFile> 
    </builders> 
    <publishers> 
    <hudson.tasks.BuildTrigger> 
     <childProjects>quux, foozle, wibble</childProjects> 
     <threshold> 
     <name>SUCCESS</name> 
     <ordinal>0</ordinal> 
     <color>BLUE</color> 
     </threshold> 
    </hudson.tasks.BuildTrigger> 
    </publishers> 
    <buildWrappers/> 
</project> 

de sip.build construye conjunto de pruebas del proyecto (de DUnit TextTestRunner) y por lo que la salida del trabajo es simplemente el recuento del fallido/error tests gracias a:

var 
    R: TTestResult; 

begin 
    R := TextTestRunner.RunRegisteredTests; 
    ExitCode := R.ErrorCount + R.FailureCount; 
end; 
+6

+1 por Hudson - puede obtener más si explica cómo, por supuesto :-) – Mawg

+2

+1 para Hudson Utilizamos hudson + pasdoc + DUnit + InnoSetup + SourceMonitor –

+2

Estoy familiarizado con Hudson, así que lo intento. La combinación hudson + pasdoc + DUnit + InnoSetup + SourceMonitor suena genial @Daniele –

16
+1

Utilizamos esto sin ningún problema. FinalBuilder siempre está actualizado con las últimas versiones de Delphi. (Está escrito parcialmente en Delphi) –

+0

Pruébalo –

0

Hudson es fácil de usar, con algunos asistentes basados ​​en web, ya que los proyectos Delphi se crean con MSBuild.

Si necesita más personalización e integración de herramientas de terceros (por ejemplo, integrar herramientas de métricas), CruiseControl.NET es la solución ideal.

Eche un vistazo a mi CC.NET Dashboard page for DelphiCodeToDoc (y puede echarle un vistazo al archivo de configuración también). Estoy haciendo comprobación + compilación de gui y versión de línea de comando y unidad de prueba + ejecución de prueba de unidad e informe + ftp carga entrega de compilación.

5

Hudson es genial, también está disponible como MSI setup. Los usuarios de versiones anteriores de Delphi (antes de MSBuild) pueden crear scripts de compilación con los populares entornos de script de compilación Apat Ant y NAnt. Las compilaciones simples de línea de comandos (secuencia de comandos por lotes) son posibles también, por supuesto.

Uno de los aspectos más destacados de esta instalador es que viene con un JRE, ser totalmente autónomo. Esto es porque los usuarios de Windows normalmente no saben qué hacer con el archivo * .war, y generalmente no les gusta ir al el símbolo del sistema y ejecutar manualmente el comando Java .

Por lo tanto, es fácil de probar sin tener que pasar por demasiados instaladores y líneas de comando primero.

Y después de la instalación, asegúrese de visitar la página de plug-ins en la aplicación de administración, hay muchas extensiones disponibles que también son útiles para los desarrolladores de Delphi. Una descripción general del complemento está en línea here.

Herramientas Hudson para Delphi: también hay una herramienta Code Coverage para Delphi con soporte Hudson here.

TeamCity es otro sistema CI muy agradable.Es un producto comercial, pero ofrece una licencia gratuita para hasta 20 usuarios y 20 configuraciones de compilación en 3 agentes de compilación.

Bamboo es un sistema de CI para cualquier idioma. Está disponible desde Atlassian. Su precio comienza en $ 10, esto incluye todas las características y usuarios ilimitados, pero se limita a 10 planes, ejecutando compilaciones solo en el servidor donde está instalado. Puede utilizar las instancias de Amazon Elastic Compute Cloud como agentes remotos.

Automated Build Studio de SmartBear. Con Automated Build Studio Server, introdujo CI algún tiempo antes de FinalBuilder.

0

Solo para brindar mi apoyo a CruiseControl.NET, ya que Delphi 2007 y posteriores se basan en MSBuild, entonces no debería haber problemas con las compilaciones a través de CC.NET. Hay un parche en alguna parte para DUNit, de modo que muestra los resultados en un archivo XML, y esto luego puede integrarse en los gráficos de resultados de las construcciones.

0

errrm, ¿puedes definir lo que estás buscando en realidad?

Utiliza la frase continuous integration, pero ¿se refiere a continuous build para asegurarse de que compila y le gusta, o realmente quiere decir continuous integration en el sentido de que también ejecuta pruebas de regresión?

Sería curioso cómo hacerlo (¿Automático?).

No es que realmente importa demasiado, porque el maravilloso Hudson (que es decididamente no sólo para Java) tiene numerosos plug-ins, sino que también le permitirá ejecutar un archivo por lotes DOS - cualquier secuencia de comandos que se preocupa escribir, construir, probar, informar resultados, etc.

+0

la prueba de regresión sería genial, pero no estoy seguro de cómo hacerlas. Sabía que Hudson es muy flexible, pero realmente no quiero escribir scripts por lotes personalizados. Una solución lista para usar estaría bien. –

0

Otra opción (aunque no gratuita, $ 10 para el número limitado de usuarios) es Atlassian Bamboo. Y JetBrains TeamCity es otro que es gratis (con un número limitado de usuarios). Lo intenté con Delphi 2009/2010 y funcionan bastante bien. Ambos permitieron la integración con Perforce entre otros SCM.

1

Añadir nuestra Parabuild a la lista de herramientas para extraer - se construye prácticamente nada que puede ser construido a partir de la línea de comandos - que incluye Delphi, y proporciona integración con Perforce y otros sistemas de control de versiones como Git y Bazar.

0

Utilizamos el sistema Jenkins CI con la herramienta Owly CI como el sistema de compilación y el manejador de dependencias.

miren en este tutorial

configuración inicial tarda menos de 5 minutos

Cuestiones relacionadas