Stiamo eseguendo build notturni su un server Jenkins e utilizziamo ClearCase come gestione del controllo del codice sorgente.È possibile l'integrazione continua con ClearCase?
Poiché ClearCase è incentrato sui file, i file di controllo funzionano uno per uno. Contrariamente a SVN o Git (che sono incentrati sul repository), le modifiche degli sviluppatori non vengono commesse atomically.
Questo non è problematico durante la notte, perché gli sviluppatori non sono più attivi e il server ClearCase ha un blocco all'1 del mattino.
Ma qui è un esempio di quello che potrebbe essere un motivo di preoccupazione quando gli sviluppatori sono attivi di giorno (diciamo che costruisce eseguito ogni mezz'ora):
10:55 AM - Developer1 checks in element1
10:55 AM - Developer1 checks in element2
10:56 AM - Developer1 checks in element3
11:00 AM - ### Jenkins runs BUILD #1 ### <-- succeeds
11:29 AM - Developer2 checks in element1
11:29 AM - Developer2 checks in element2
11:30 AM - ### Jenkins runs BUILD #2 ### <-- fails (element3 is missing)
11:29 AM - Developer2 checks in element3
Così, sono Costruisce rilascio (alias "ASAP Builds" o letteralmente "Continuous Integration") che vale la pena considerare con ClearCase o siamo condannati a contentarci per sempre di build notturne?
Grazie per la risposta. Avrei dovuto indicarlo; non usiamo UCM ma basiamo solo ClearCase. Quale potrebbe essere una risposta senza l'uso di UCM, quindi? –
@ StéphaneBruckert Ho modificato la mia risposta: l'idea è di attivare la compilazione basata su un'etichetta, non solo su un nuovo file archiviato. – VonC