2016-11-10 19 views
0

Я пытаюсь запустить jenkins с помощью сервиса TFS, я хочу использовать jenkin для извлечения информации о проверке для создания журнала с использованием сценария powershell. Я настроил его, чтобы запустить jenkins при регистрации. Но я не могу найти способ разобрать информацию о сообщении, отправленную с помощью сервиса TFS. Глядя на https://github.com/jenkinsci/tfs-plugin/blob/master/README.md Я вижу, что на триггере есть несколько переменных среды, но я хочу извлечь часть информации для проверки, как в имени пользователя, которое зарегистрировалось, и tfs-идентификатор, в котором он был отмечен, и т. Д. TFS_USERNAME записывает только имя пользователя учетной записи, сконфигурирован для доступа к tfs в JekinsМогу ли я извлечь сообщение триггера сервиса TFS Service в Jenkins

+0

Что вы говорили о "tfs id"? –

+0

Пользовательская история/Номер ошибки в tfs item – FurqanRauf

ответ

0

Вы можете использовать TFS REST API, чтобы получить смену на стороне Джекина. API выглядит следующим образом:

GET http://({server:port})/DefaultCollection/_apis/tfvc/changesets/{id}?api-version=1.0 
+0

Что будет установлено в Дженкинсе? Могу ли я не использовать тело сообщения запроса запроса TFS в Jenkins? У него уже есть информация, в которой я нуждаюсь. – FurqanRauf

+0

TFS предоставляет API REST, вы можете получить информацию, связанную с TFS, из API. Информация о регистрации доступна только в TFS. –

+0

Спасибо! получил работу :) – FurqanRauf

0

Невозможно извлечь крючки, полученные Дженкинсом в триггере сборки. Однако, если задание Jenkins загружает последний исходный код на локальный после запуска задания, информация, которую вы хотите, как пользователь, который проверяет изменения, уже находится в локальной сети. Вы можете просто запустить tf changeset /latest /noprompt, чтобы получить эту информацию. И вы также можете установить TFS Power Tools, а затем создать сценарий powershell, чтобы получить эту информацию через TFS Powershell Command. Например:

add-pssnapin Microsoft.TeamFoundation.PowerShell 
$cs = Get-TfsChangeset -Latest 
Write-Host $cs.CommitterDisplayName 
Write-Host $cs.Committer