Может ли сборка Jenkins получить доступ к заархивированным артефактам из себя? - PullRequest
5 голосов
/ 13 января 2012

Я использую Jenkins и у меня есть шаг «Архивировать артефакты» в конце моих сборок, чтобы заархивировать их в zip-файл.

Вместо этого шага я хотел бы использоватьСкрипт для отправки артефактов на удаленный сервер в конце сборки.Сервер, на который я нажимаю, использует в скрипте запрос REST API / HTTP PUT для загрузки файлов.

Обратите внимание, что я ищу доступ к артефакту, созданному в той же сборке.Поэтому, если я в сборке № 5, я хочу артефакты из сборки № 5, а не сборки № 4.

Есть ли способ получить доступ к этому zip-файлу с помощью скрипта в той же сборке, в которой он был создан?

Мне нужно загрузить этот zip-файл удаленно, и я не хочу создавать для этого другую работу.

Ответы [ 3 ]

5 голосов
/ 13 января 2012

Вы можете установить один из плагинов " Publish Over ... ", чтобы загрузить свои артефакты в конце сборки.

Цель плагинов Publish Overзаключается в предоставлении согласованного набора функций и поведения при отправке артефактов сборки ... куда-то.

См. также полный список плагинов для "загрузки" для других способов публикации вашегоартефакты.

4 голосов
/ 13 января 2012

Как сказал @Christopher, вы можете использовать любой из Publish Over плагинов на странице плагинов Jenkins для загрузки артефакта в любой из

Если вы хотите получить доступ к архивному zip-файлу из сборкиСам по себе, вы можете использовать следующую ссылку для доступа к нему:

http://<server>/job/${JOB_NAME}/lastSuccessfulBuild/artifact/<artifact name w/folder>

Например:

  • server = myserver.com
  • имя задания = myproject
  • артефакт = del/project.zip

Ваш URL будет:

http://myserver.com/job/myproject/lastSuccessfulBuild/artifact/del/project.zip

РЕДАКТИРОВАТЬ: Вопрос былизменилось.В любом случае это будет работать для доступа к артефакту предыдущей сборки в текущей.

1 голос
/ 19 января 2012

Я не нашел способа получить доступ к пакету "Архивировать артефакты" той сборки, которая его генерирует.Этот шаг всегда происходит последним в сборке.Доступ к URL-адресу до окончания сборки (например, во время сборки через скрипт) приводит к пустому zip-файлу.Чтобы обойти это ограничение, я делаю второе связанное задание по сборке, чтобы получить zip и запустить мой скрипт для его развертывания.

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