Как да използвате стойности на Hudson Parameterized Build в имейл

Изпълняваме вътрешно сървър за изграждане на Hudson по проект. Ние изпращаме имейл всеки път, когато сървърът инсталира нова версия.

Бих искал този имейл да съдържа повече информация, включително потребителско име и причина за изграждането.

От документацията на Hudsons на Параметризирани компилации, са добавили текстови параметри към компилацията. Опитвам тук с два различни (за да видя какво работи):

В конфигурация на задание This build is parameterized добавих следните две променливи

Name:          USER 
Default value: userCAPITALIZED

Name:          user
Default value: userstandard

Вижте екранна снимка на параметризирани настройки
(източник: justaddwater.dk)
.

Сега, долу в долния раздел „Известие по имейл с възможност за редактиране“, опитах ВСИЧКО, за да извлека тези стойности.

Какво работи: Всички стандартни променливи за изграждане на Hudson работят. Като $CHANGES, $SVN_REVISION и т.н.

Но аз се опитах да осъществя достъп до променливите user и USER без никакъв късмет. Ето списък на това, което не работи:

subject: test of parametrized mail 1user:${env.user}, 2USER:${USER}, 3$USER, 4${ENV, USER}, 5%USER%,stop

more tests
${env, user}
${env, USER}
${ENV, user}
${ENV, USER}
${user}
${USER}
${env.user}
${ENV.user}
${env.USER}
${ENV.USER}
$user
$USER
%user%
%USER%

changes $CHANGES
changes ${CHANGES}
subversion revision: $SVN_REVISION
subversion revision: ${SVN_REVISION}

Екранна снимка на имейл конфигурация
(източник: justaddwater.dk)

Това просто води до имейл със следното съдържание:

test of parametrized mail 1user:${env.user}, 2USER:${USER}, 3$USER, 4${ENV, USER}, 5%USER%,stop

more tests
${env, user}
${env, USER}
${ENV, user}
${ENV, USER}
${user}
${USER}
${env.user}
${ENV.user}
${env.USER}
${ENV.USER}
$user
$USER
%user%
%USER%

changes
changes
subversion revision: 400
subversion revision: 400

Както можете да видите, само ревизията на subversion се разширява правилно. Промените са празни за тази конкретна работа, така че игнорирайте това.

Как ВИЕ дефинирате параметри в имейл? Някакви предположения? Използвам Hudson версия 1.395


person Jesper Rønn-Jensen    schedule 03.03.2011    source източник
comment
Този въпрос току-що спечели значката Tumbleweed за липса на гласове и отговори. Затова сега започвам награда, за да науча повече за възможностите за конфигурация на имейл на Hudon   -  person Jesper Rønn-Jensen    schedule 10.03.2011


Отговори (3)


Трябва да използвате параметър като този: ${ENV, var="USER"}

И "ПОТРЕБИТЕЛ" е същото като "потребител" - тогава трябва да дадете различни имена.

person Rene Larsen    schedule 11.03.2011
comment
Благодаря много за това. Очаквам с нетърпение да опитам това на работа следващата седмица. - person Jesper Rønn-Jensen; 12.03.2011

В допълнение към това, което предлага Рене (т.е. да използвате ${ENV, var="USER"}), смятам, че трябва да инсталирате още един добавка, наречена „email-ext“. Намерих тази информация в някакъв друг въпрос (има все пак няма приет отговор).

person Grzegorz Oledzki    schedule 11.03.2011
comment
Благодаря за напомнянето. Забравих да напиша, че плъгинът е необходим (все пак се позовавам на настройките му за конфигурация). - person Jesper Rønn-Jensen; 12.03.2011

Знам, че това е стар въпрос, но искането на потребителя да въведе своето потребителско име е донякъде излишно и може да бъде подправено.

Хъдсън вече знае кой е задействал компилацията (можете да го видите на страницата на компилацията), но не излага това в променлива. Има Job-Exporter плъгин, който експортира тази информация (и повече) във файл в работното пространство. Ще бъде под build.user.name собственост.

Оттам можете да използвате приставката EnvInject, снабдете я с този експортиран файл със свойства (hudsonBuild.properties) и ще имате налична променлива на средата, наречена build.user.name, която да бъде използвана в имейла като ${ENV, var="build.user.name"}

person Slav    schedule 21.01.2013