2016-09-08 4 views
1

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

По умолчанию рабочее пространство расположение - Похоже, последняя Дженкинс имеет рабочее пространство по умолчанию в Дженкинс \ работа [Projectname] \ рабочее пространство и переписывается (или уничтожены, если выбрано) для каждой сборки. Я думал, что вместо этого он должен находиться в Jenkins \ jobs [projectName] \ builds [build_id] \, чтобы он мог сохранять состояние рабочей области для каждой сборки для дальнейшего использования?

Отображение рабочего пространства проекта> Строка_ID страницы - Это соответствует предыдущему, поскольку я ожидал, что каждая «рабочая область» для предыдущих сборников будет показана здесь. В настоящее время в моей настройке эта отдельная страница ничего не дает, кроме пересмотра Git, и какие изменения репо вызвали сборку. Также как консольный выход. Где артефакты? Где ссылка на рабочую область этой сборки, которая была использована?

Архивирование артефактов в сборках - При выборе артефактов фильтр, похоже, не работает. Моя сборка создает филеструктуру с артефактами в ней внутри рабочего пространства. Я хочу сохранить это, и фильтр артефактов говорит, что он начинается с рабочего пространства. Поэтому я помещаю «артефакты», и ничего не получает магазинов (также где это будет храниться?). Я также пробовал «артефакты» и «артефакты/*».

Любая помощь будет замечательной! Благодаря!

+0

Для всех, кому интересно, прямо вставлять вещи в артефакты для сборки и ссылаться на них на странице сборки, просто создайте папку с именем «архив» внутри номера сборки и поместите туда файлы вручную или через пакетный скрипт. – Tacitus86

ответ

4

Кажется, что вы путаетесь в нескольких аспектах Дженкинса. Я думаю, что ваш вопрос в основном сводится к следующему.

В чем разница между рабочей областью и сборкой?

Итак, вот некоторые мысли по этой теме:

  1. Строит исторические данные. Они (обычно) не меняются, как в рабочем пространстве во время сборки/проверки.
  2. Сборка содержит информацию о запуске (например, его статус, номер сборки, журнал изменений и т. Д.) И любые артефакты, которые вы указываете в архиве (журналы, результаты тестов и т. Д.). Они (обычно) не содержат исходный код, как рабочее пространство.
  3. Строения хранятся в каталоге Jenkins\jobs\[projectName]\builds\[build_id]\. Это каталог, управляемый Jenkins, и вам (обычно) ничего не нужно изменять в этом каталоге. Тем не менее, рабочие пространства - это каталоги, предназначенные для сборки, и вы можете делать с ними что угодно и размещать их где угодно (не обязательно находиться в каталоге Jenkins\jobs\[projectName]\workspace по умолчанию.
  4. Рабочие пространства должны быть протерты в любой момент времени. Чтобы восстановить его, просто переделайте задание с теми же параметрами/версией. Если вам нужно что-то сохранить после сборки, сообщите Дженкинсу, чтобы он архивировал его до завершения сборки.
  5. Что касается сохранения всего состояния, Если вы не можете вернуться к исходному состоянию из той же версии/parameters, то это может быть чем-то, к чему нужно стремиться, поскольку отладка будет кошмаром. :)
  6. Рабочее пространство является аспектом проекта, а не сборкой, и поэтому на этой странице нет ссылки на рабочую область. Опять же, сборка только что сохранила данные из предыдущего запуска. В проекте используется рабочее пространство для создания материала, и именно поэтому вы можете перейти к рабочей области с этой страницы.
  7. Что касается сохранения артефактов, вы должны указать имена файлов, которые хотите сохранить. Если вы не пытаетесь сохранить файл под названием «артефакты», то вам, вероятно, следует использовать что-то еще. Как насчет **/*.log для всех файлов журнала? или **/*.xml для всех xml-файлов?

Надеюсь, это поможет.

+0

Я понимаю разницу между сборкой и рабочим пространством. Но остальная часть вашего сообщения помогает объяснить, что источник не должен храниться в артефактах. Также совпадение помогает в вашем # 7, я не понимаю, почему это должен быть формат. Спасибо. – Tacitus86

+0

Рад слышать, что это помогло немного! Извините за непонимание вашего корневого вопроса. Что касается № 7, артефакты архива используют файл [ant fileset] (http://ant.apache.org/manual/Types/fileset.html) для соответствия файлам ... Если вы хотите некоторые примеры набора файлов ant, затем я проверил [этот отличный ответ] (http://stackoverflow.com/a/86915/6606196). –

Смежные вопросы