Дженкинс исполнит триггерную сборку на windows? - PullRequest
0 голосов
/ 05 июня 2018

Я чувствую себя полностью в темноте и надеюсь, что вы, ребята, можете помочь.

Итак, у меня есть настройка сервера jenkins, подключенная к p4v, и все работает без сбоев.Я могу запускать сборки на jenkins вручную без каких-либо проблем.

Теперь, однако, я хотел бы настроить так, чтобы Jenkins (используя плагин Perforce) фактически опрашивал перформанс каждый раз, когда я отправляю что-то новое в определенную папку.

Кажется, что это довольно просто запустить на linux, просто добавив файл сценария в Perforce и триггер Perforce для запуска этого файла с помощью curl, чтобы отправить сообщение jenkins, чтобы начать сборку.

Однако я работаю с Windows, и я не нахожу никакой информации о том, как решить эту конкретную проблему на Windows.Кто-нибудь, чтобы помочь?

Основная проблема, кажется, состоит в том, что все учебники, которые я нахожу по этому вопросу, используют сценарий .sh, который не запускается в Windows. Интересно, есть ли какой-нибудь другой способ сделать это в Windows?

1 Ответ

0 голосов
/ 08 июня 2018

Мне удалось решить эту проблему с помощью следующего плагина Jenkins: https://wiki.jenkins.io/display/JENKINS/Build+Token+Trigger+Plugin

и curl: https://curl.haxx.se/

Если кто-тоеще есть та же проблема, вот пошаговый процесс, который я прошел, чтобы установить его в Windows.

  1. В вашем проекте Jenkins включите: Триггер строит удаленно (например, из скриптов)
  2. Введите токен аутентификации, может быть любым, например: buildCode
  3. В командной строке от имени администратора p4 введите: p4 triggers
  4. В триггере файл перейдет в конец
  5. Введите фактический триггер p4: SomeTriggerName change-commit //DepotLocationToTriggerOn/... %//DepotLocationOfScriptToBeTriggered/trigger.bat%

Наблюдать: Когда пакетный файл для запуска в триггере находится в пути депо, он должен бытьв окружении%

Отправьте trigger.bat в p4 в выбранном месте.Пакетный файл должен содержать следующий код C:\curl-7.60.0-win64-mingw\bin\curl.exe -u userID:APIToken JenkinsIP/job/TestJob/build?token=buildCode

Curl должен находиться в этой конкретной папке на компьютере сервера p4v.

Чтобы найти userID и APIToken, откройте раскрывающийся список пользователей и введите «Configure», а затем нажмите «Токен API».

Надеюсь, что это может помочь кому-то еще с подобной проблемой:).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...