Jenkins: Jak używać zmiennej z przedkonstruowanej powłoki w Maven „Cele i opcje”

Mam pracę w Maven w Jenkins. Przed rzeczywistym krokiem kompilacji mam krok „Wykonaj powłokę” przed budowaniem. W tej powłoce ustawiłem zmienną:

REVISION=$(cat .build_revision)

Chciałbym użyć tej zmiennej w zadaniu budowania Maven w „Celach i opcjach”:

clean install -Drevision=${REVISION}

Ale to nie działa! „Drevision” jest ustawione na „$ {REVISION}”, a nie na rzeczywistą wartość $ {REVISION}. Wydajność:

Executing Maven:  -B -f /home/gerrit/.jenkins/jobs/<job_name>/workspace/pom.xml clean install -Drevision=${REVISION}

Działa ze zmiennymi środowiskowymi Jenkins:

clean install -Dbuild=${BUILD_NUMBER}

Ustawia „Dbuild” na rzeczywisty numer kompilacji. Wydajność:

Executing Maven:  -B -f /home/gerrit/.jenkins/jobs/<job_name>/workspace/pom.xml clean install -Dbuild=54

Moje pytanie: Jak używać zmiennej powłoki w Maven „Cele i opcje”?

EDYTOWAĆ:

Próbowałem użyćWtyczka Jenkins EnvInject „Wstaw zmienne środowiskowe” po powłoce przed budowaniem, a moja zmienna jest teraz dostępna np. powłoki post-build, ale nadal nie są dostępne w Maven „Cele i opcje”.

Następnie można ustawić „Wstaw zmienne środowiskowe do procesu budowania” za pomocą wtyczki EnvInject, która faktycznie udostępnia te zmienne w Maven „Cele i opcje”, ale są one ustawiane zaraz po wyewidencjonowaniu SCM, tj. Przed krokami przed budowaniem, i nie obsługują ewaluacji wyrażeń.

questionAnswers(5)

yourAnswerToTheQuestion