2012-11-27 13 views
7

Sto cercando di creare un lavoro jenkins che utilizza una matrice di configurazione per creare più versioni della mia applicazione utilizzando diversi profili maven. La mia idea iniziale era quella di creare un gruppo di configurazioni con il pretesto di un profilo come:Lavoro matrice Jenkins con virgole

XXX, YYY, ZZZ

XXX, YYY, AAA

poi come l'uso dei comandi di compilazione: mvn - P $ profilo

Per ottenere tutte le diverse build.

Purtroppo questo non sembra funzionare, Jenkins viene confuso apparentemente dall'uso di virgole nella matrice di configuarzione. Ho provato a vedere se la codifica url ha funzionato (è andata oltre, ma il vero comando maven ha avuto esito negativo perché conteneva la versione codificata dell'URL delle virgole che confondeva Maven).

Mi rendo conto che potrei inserire un personaggio inutile che è consentito e quindi in uno script sostituirlo con una virgola, ma ciò non sembra corretto. Ci deve essere un modo migliore. Qualche idea?

+0

vostro diritto, questo appare come un bug. Sono anche in grado di utilizzare un valore con una virgola. Potresti provare a impostare un parametro jvm (-D) per attivare uno o l'altro profilo? – poussma

+2

puoi votarlo se vuoi che venga risolto rapidamente: https://issues.jenkins-ci.org/browse/JENKINS-16055 – poussma

risposta

0

Hai provato spazi anziché virgole?

Il collegamento Guida dice Values assigned to variables. Multiple values are separated by whitespace or newlines. Use shell quoting syntax for a value that contains whitespace.

Screenshot from Jenkins matrix configuration

+0

maven richiede che i profili siano separati da virgola. –

+0

e devi aver già esplorato le opzioni di 'sequenza di escape', sto indovinando –

+0

Ho provato le sequenze di escape come da quello che ho detto nella mia domanda ... –

1

È possibile specificare più profili Maven senza usare le virgole con -Pprofile1 -Pprofile2 e l'uso virgolette per sfuggire gli spazi.

La mia matrice di configurazione è simile al seguente:

enter image description here

Il comando Maven è

Maven Command

Problemi correlati