Alkampfer's Place

Il blog di Gian Maria Ricci
posts - 600, comments - 1063, trackbacks - 84

My Links

News

Gian Maria Ricci
Mvp Logo
CCSVI in Multiple Sclerosis

English Blog

Tag Cloud

Article Categories

Archives

Post Categories

Image Galleries

I miei siti

Siti utili

Cruise control, prime impressioni

Dopo l'intervento di Simone nel nostro secondo workshop mi sono deciso a spendere un po di tempo per configurare il Cruise Control .NET.

Ho immediatamente consultato il blog di simone ed ho trovato quì un piccolo vademecum. Purtroppo questi post sono sicuramente vecchiotti e penso che Simone visto il suo imminente trasferimento in nuova Zelanda difficilmente avrà il tempo per rimetterci mano.

A questo punto ho iniziato a leggere la doucmentazione e passerò una mezzoretta al giorno cercando di configurare il server e vorrei riportare nel blog passo dopo passo le mie esperienze, sperando che siano di aiuto agli altri.

Il primo passo è scaricare ed installare l'ultima versione di CC.NET ed installarla, a questo punto avremo una cartella con gli eseguibili del CC.NET più un sito configurato per accedere al server (Web Dashboard). Il primo passo che ho fatto è stato editare il file ccnet.config (C:\Program Files\CruiseControl.NET\server)in modo da ottenere un primo risultato, collegarmi ad un subversion e mantenere aggiornato un repository. Per esperienza ho capito che per lavorare correttamente con CC.NEt bisogna procedere per piccoli passi.

Il primo consiglio è che nella cartella server trovate il file ccnet.exe che null'altro è che il server a linea di comando. Mentre state provando ad editare il file di configurazione ccnet.config consiglio di tenere un programma come ultraedit32 puntato sul file ccnet.log e poi procedere facendo piccole modifiche al ccnet.config e poi lanciare il ccnet.exe per vedere se il file di configurazione è a posto. In questo modo si trovano subito gli errori perchè se avete scritto qualche cosa che lui non capisce il server non parte e nel log potete vedere cosa è successo. Il primo file di configurazione che ho generato è il seguente.

<cruisecontrol>
    <project 
name="CCNetTest">
        <webURL>
http://localhost/ccnet</webURL>
        <workingDirectory>
F:\Dati\Tutorials\Tutorials\CCNET\projects\CCNetTest\WorkingFolder</workingDirectory>
        <artifactDirectory>
F:\Dati\Tutorials\Tutorials\CCNET\projects\CCNetTest\Artifacts</artifactDirectory>
        <modificationDelaySeconds>
60</modificationDelaySeconds>
        <category>
TestProjects</category>

        <triggers>
            <intervalTrigger 
name="continuous" seconds="30"/>
        <
/triggers>

        <sourcecontrol 
type="svn">
            <workingDirectory>
F:\Dati\Tutorials\Tutorials\CCNET\projects\CCNetTest\WorkingFolder</workingDirectory>
            <trunkUrl>
svn://10.8.0.1/CCNETTest/trunk</trunkUrl>
            <username>
CCNET</username>
            <password>
ccnetserver18</password>
            <autoGetSource>
true</autoGetSource>
        <
/sourcecontrol>
    <
/project>
<
/cruisecontrol>

Inizialmente viene specificato il nome del progetto, la url web dove si accederà all'interfaccia web (per ora non ce ne preoccupiamo) e poi le directory, una per gli artefatti, ed una per i sorgenti. L'elemento modificationDelaySeconds indica al CC.NET di non effettuare un build se ci sono due modifiche entro i 60 secondi, un parametro che per ora non ci interessa molto. Successivamente troviamo la sezione triggers che contiene un intervalTrigger il cui scopo è impostare l'intervallo in secondi utilizzato dal CC.NET per controllare se è stato fatto check in di qualche file.

Successivamente viene la sezione sourcecontrol in cui si specifica la working directory dove mettere i sorgenti, la url dove troviamo il trunk del nostro progetto, le credenziali utente ed infine un elemento importante chiamato autoGetSource che indica al CC.NET di effettuare un update del repository in maniera automatica.

Una nota particolare va fatta sull'uso di subversion. CC.NET non è in grado di effettuare il checkout iniziale, per questa ragione il primo checkout sulla cartella deve essere fatto manualmente, poi CC.NET va da solo. Ora se viene fatto un checkin del repository controllato da CC.NET ad intervalli di 30 secondi la working folder viene automaticamente aggiornata. Ecco cosa mostra il CC.NET quando aggiungo un file al mio repository.

2006-12-19 18:16:56,062 [CCNetTest:INFO] 1 modification detected.
2006-12-19 18:16:56,125 [CCNetTest:INFO] The most recent modification at 19/12/2006 18.16.49 is within in the modification delay.  Waiting for 55,1 seconds until 19/12/2006 18.17.49 before checking again.

Alk.

powered by IMHO 1.3

Print | posted on martedì 19 dicembre 2006 18.37 | Filed Under [ CruiseControl.NET ]

Feedback

Gravatar

# Cruise Control .NET - La prima build

20/12/2006 9.42 | Alkampfer's Place
Gravatar

# re: Cruise control, prime impressioni

> "...CC.NET non è in grado di effettuare il checkout
> iniziale..."

Ciao GianMaria, con l'ultima versione di CC.Net (1.2.1) questo problema è stato risolto...
08/02/2007 15.17 | Alessandro Melchiori
Gravatar

# re: Cruise control, prime impressioni

Si lo sapevo, purtroppo nonho tempo di aggiornare i post che in questo periodo sono molto incasinato, appena ho tempo li raccolgo e faccio un documentino unico aggiornando il tutot, comunque grazie per la segnalazione. :D

Alk.
08/02/2007 16.43 | Gian Maria
Comments have been closed on this topic.

Powered by: