Per impostazione predefinita viene eseguita solo una singola compilazione di
un progetto per volta — qualunque altra richiesta di avvio della
compilazione di tale progetto rimarrà in coda finché la prima compilazione
non sarà stata completata.
Questa è un'impostazione predefinita sicura, in quanto i progetti spesso
possono chiedere accesso esclusivo a determinate risorse, come un database o
una periferica hardware.
Con quest'opzione abilitata, tuttavia, se sono disponibili abbastanza esecutori compilazione in grado di gestire questo progetto, allora verranno eseguite più compilazioni di questo progetto in parallelo. Se in un dato momento non è disponibile un numero sufficiente di esecutori, tutte le ulteriori richieste di compilazione verranno mantenute nella coda di compilazione come al solito.
Abilitare le compilazioni concorrenti è utile per i progetti che eseguono
suite di test lunghe, in quanto consente a ogni compilazione di contenere un
numero minore di modifiche, riducendo al contempo il tempo totale di
esecuzione in quanto le compilazioni seguenti non avranno la necessità di
attendere che le precedenti esecuzioni dei test giungano a termine.
Questa funzionalità è utile anche per i progetti parametrizzati, le cui
esecuzioni di compilazione individuali — a seconda dei parametri
utilizzati — possono essere completamente indipendenti l'una
dall'altra.
Ogni compilazione eseguita concorrentemente viene eseguita nel proprio
spazio di lavoro, isolata da tutte le altre compilazioni. Per impostazione
predefinita, Jenkins aggiunge "
@<numero>
" alla fine del nome della directory dello spazio di lavoro, ad es. "
@2
".
Il separatore "
@
" può essere modificato impostando la proprietà di sistema Java
hudson.slaves.WorkspaceList
all'avvio di Jenkins. Ad esempio, "
hudson.slaves.WorkspaceList=-
" modificherebbe il separatore in un trattino.
Per ulteriori informazioni sull'impostazione delle proprietà di sistema, si
veda la
pagina wiki
.
Ciò nonostante, se si abilita l'opzione Utilizza spazio di lavoro personalizzato , tutte le compilazioni saranno eseguite nello stesso spazio di lavoro. Pertanto è richiesta attenzione in quanto più compilazioni potrebbero modificare la stessa directory nello stesso momento.