Как я могу узнать, как сборка была запущена в Jenkins - PullRequest
7 голосов
/ 10 августа 2011

Я пытаюсь обновить Jelly-скрипты в моей настройке Jenkins, чтобы отправить по электронной почте причину сборки (триггер сборки), но я не могу найти никакой документации по этому вопросу.

Я знаю, что она должна быть доступна, поскольку на странице сборки будет отображаться информация, но я хочу, чтобы она отображалась в распространяемой электронной почте.

Кто-нибудь знает, есть ли переменная, которую я могу запросить, или вызов Jenkins API, который я могу вызвать, чтобы получить это?

1 Ответ

8 голосов
/ 10 августа 2011

Вы можете сделать это, позвонив по этому API .

Более удобно: в env var, установленном перед сборкой, вы найдете BUILD_URL:

BUILD_URL=https://jenkins-server.tld/job/JOBNAME/BUILD_NUMBER

Так что вам просто нужно добавить / api / json. Вы также можете получить его в XML:

<freeStyleBuild>
<action>
<cause>
<shortDescription>Started by user kenji</shortDescription>
<userName>kenji</userName>
</cause>
</action>
<action/>
<action/>
<action>
<failCount>0</failCount>
<skipCount>0</skipCount>
<totalCount>1</totalCount>
<urlName>testReport</urlName>
</action>
<building>false</building>
<duration>9772</duration>
<fullDisplayName>JOBNAME #4</fullDisplayName>
<id>2011-08-10_11-19-42</id>
<keepLog>false</keepLog>
<number>4</number>
<result>SUCCESS</result>
<timestamp>1312967982296</timestamp>
<url>https://jenkins-server.tld/job/JOBNAME/4/</url>
<builtOn>macboo</builtOn>
<changeSet>
<kind>svn</kind>
<revision>
<module>https://svn-server.tld/JOBNAME/trunk</module>
<revision>7</revision>
</revision>
</changeSet>
</freeStyleBuild>
...