Гудзоновские трубопроводы
Кто-нибудь может помочь с этой проблемой?
У меня есть тестовая работа, нижестоящая работа и совместная работа. Я только хочу, чтобы задание соединения выполнялось, если последующее задание выполнено успешно.
Если тестовое задание не выполнено и последующее задание выполнено успешно, я все же хочу запустить задание соединения.
Кто-нибудь знает плагин, который может помочь здесь?
Плагин объединения не достаточно хорош, потому что я могу настроить его для запуска задания соединения, когда тестирование и последующий поток пройдены успешно, или запуска соединения независимо от того, успешен ли / неудачен задания. Но не запускайте присоединяющуюся работу ТОЛЬКО в случае успеха в нисходящем направлении
Почему я хочу сделать это таким образом? Я хочу объединить рабочие места вместе, но только в том случае, если обычная работа "вниз по течению" будет успешной. Если это не удастся, я хочу, чтобы конвейер "сломался".
Добавление дополнительной информации к исходному вопросу: Итак, у меня есть набор тестов (Test.1, Test.2, Test.3). Я могу управлять ими индивидуально из Хадсона, они бегут, дают результат и заканчивают. Я также хочу иметь возможность запускать их как часть конвейера. Test.1 запускается, заканчивается и затем запускает Test.2. и т.д. Таким образом, у меня есть два отдельных способа запуска Test.1. Индивидуально или как часть трубопровода. Чтобы помочь здесь, я сделал Test.1, Test.2 и т. Д. Параметризованными (true/false). По умолчанию параметр имеет значение false. Поэтому, когда я запускаю Test.1 по умолчанию (false), тест запускается и заканчивается. Когда я запускаю Test.1 с параметром True, я бы хотел, чтобы он запускал Test.2. Этот второй бит я не могу сделать
Большое спасибо Джон
2 ответа
Как и в случае с Gareth_bowles, я бы просто объединял все задания (без объединения) и использовал плагин Hudson Parameterized Trigger для запуска зависимого задания, даже если текущее задание не выполнено. Единственный недостаток в том, что у вас нет параллельных заданий.
Подумав еще раз, вы можете использовать плагин Hudson Parameterized Trigger для запуска временного задания после тестового задания, независимо от успеха тестового задания. Временное задание всегда будет успешным (потому что на самом деле оно не выполняет ничего, кроме запуска задания присоединения. Таким образом, ваше тестовое задание (с точки зрения задания присоединения) всегда будет выполнено успешно, и только нижестоящее задание определяет, будет ли выполнено задание присоединения.
редактировать
Поняв, что вы действительно хотите сделать, а именно запустить Test.N независимо или как часть цепочки, я пойду с первым предложением. Это означает, что Test.N всегда запускает задание Downstream.N, независимо от того, был ли Test.N успешным или неудачным. Вам нужен плагин Hudson Parameterized Trigger и настроить два триггера. Первый запускает зависимое задание, когда тестовое задание является успешным или нестабильным, а второй триггер также запускает зависимое задание, но только в случае сбоя тестового задания. Не забудьте передать свои параметры, и все готово. Не очень сложно.
Разве вы не можете просто пропустить подключаемый плагин и сделать работу объединения исключительно зависимой от последующей работы? Это удовлетворило бы ваше требование о том, чтобы задание соединения выполнялось только тогда, когда нижестоящее задание выполнено успешно, при условии, что флажок "Триггер, даже если сборка нестабильна" не отмечена в определении зависимостей в нисходящей сборке.