Я считаю, что нашел решение.
Резюме
- Не используйте Указан на Постоянной ссылку
- Использования Конкретных сборки и установить номер сборки в
${PROMOTED_NUMBER}
Решением
Предпосылки
- Должен быть установлен Copy Artifact Plugin.
- Архив артефакты вы хотите получить доступ к акции
- В после построения действия добавить Действие Архивировать артефакты и установить файлов в архив на то, что вы хотите, чтобы ваше продвижение к доступу.
- Не выбрасывайте старые артефакты
- В конфигурации работы, снимите Утилизировать старые билды или убедитесь, что его параметры будут держать артефакты, пока вы хотите продвигать сборки. Установка
Promotion:
Настройка вверх ваша способствовала сборка с именем и критериями, как обычно.
В разделе Действия добавьте действие Скопируйте артефакты из другого проекта и установите эти значения.
- Название проекта:
${PROMOTED_JOB_NAME}
- строящих: Конкретная Сложение
- Сложение Номер:
${PROMOTED_NUMBER}
- Артефакты Копирование:
path/to/your/artifacts/**
- Цель:
${BUILD_TAG}
Затем добавить действия, которые вы действительно хочу сделать. Например, добавьте действие Архив артефактов, чтобы сохранить артефакты. Не забудьте указать префикс ваших путей: ${BUILD_TAG}
, например. ${BUILD_TAG}/path/to/your/artifacts/**
Заметка о том, почему
Копирование артефактов
Как вы, наверное, уже знаете, продвижение не следует ожидать, чтобы иметь доступ к содержанию рабочей области сборки. Он может быть выполнен на другом сервере и может иметь доступ к отсутствию рабочего пространства вообще или рабочей области из старой или более новой сборки. Поэтому необходимо скопировать артефакты, которые вы хотите использовать, в текущую рабочую область.
Это также является причиной того, что значение Target установлено. Рабочее пространство может быть опробовано с помощью других сборок или рекламных акций. Установка цели на ${BUILD_TAG}
Предотвращает конфликты с файлами, уже находящимися в рабочей области, путем создания папки, уникальной для процесса продвижения.
$ {PROMOTED_ *} переменные
Как вы утверждаете обычные переменные сборки относятся к самому процессу продвижения, но продвигаемое Сложение Плагин определяет некоторую environment variables со ссылкой на фактическую сборку вместо этого.
Permalinks
В контексте Дженкинс permalinks относится только к специальным ссылкам, что указует на последнюю сборку определенного типа или последнюю акцию. Вот почему вы всегда получите последнюю версию
В моей версии Jenkins выпадающее меню заменено текстовым полем.Написание URL-адреса для конкретной сборки, например http://jenkins/job/myjob/59/
, является not recognized как одно из специальных постоянных ссылок и копирование will thus fail.
Это действительно выбор правильной сборки. Довольно неясное, но отличное решение! – xeraa
Это должно быть включено в документацию «Продвигаемые сборки» –