Может ли Triggerable Scheduler использовать фильтр изменений, или шаг сборки Trigger может быть обусловлен свойством? - PullRequest
1 голос
/ 20 марта 2020

Я хотел бы определить, какие планировщики запускать в зависимости от имени ветви, внутри фабрики сборки - если это возможно.

По сути, у меня есть сборщик, который выполняет все общие шаги сборки для компиляции пакета et c, а затем имеет несколько шагов триггера, которые запускают несколько тестов (с помощью запускаемых планировщиков).

Однако я хотел бы настроить тип запускаемых тестов (например, какие планировщики запускаются) в зависимости от имени ветви. До сих пор я пытался добавить аргумент change_filter в свой планировщик Triggerable, но, похоже, он не принимает этот аргумент. Я думаю, это имеет смысл, потому что он должен быть запущен, поэтому, возможно, его не волнует использование фильтра изменений. Это кажется немного странным, потому что зависимые планировщики принимают этот kwarg.

Пока мне не ясен правильный способ установить это.

Я думаю, мои вопросы действительно:

  • Есть ли способ использовать рендеринг? / Свойства, чтобы решить, какие планировщики для запуска (на основе имени ветви, например)?
  • Есть ли лучший способ сделать это? Возможно, создайте отдельные планировщики для сборки, которые применяют нужный мне фильтр изменений и имеют фабрику сборки, которая запускает правильные тесты, но это не очень DRY.

1 Ответ

1 голос
/ 08 апреля 2020

Я вернулся, чтобы оставить это здесь на случай, если это может помочь кому-то с сложной настройкой buildbot.

Я решил это, превратив все зависимые планировщики (для определенных c типов тестов) в триггерные планировщики. Затем я создал основные планировщики сборки для каждого подмножества тестов, каждый с фильтром изменений и регулярным выражением для ветвей, которые должны под go этого подмножества тестов. Наконец, я создал buildfactory для каждого основного планировщика, передав ему только триггерные планировщики для теста, который должен работать с указанным типом c основного планировщика.

Для моего текущего варианта использования это прекрасно работает!

...