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

ее прошлого запуска?
в кеши оно чаще не попадает, чем попадает, переиспользовать кеш из других пайплайнов нельзя
кажется, только через апи

щас поясню, зачем это нужно

у меня есть набор джобов, внутри которых запускают долгие и не всегда успешные тесты
на 10 запущенных тестов может быть 1 упавший
хочу при перезапуске джоба перезапускать только один этот упавший тест, а не все 11, ибо они долгие
для этого я в джейсонину записывают имена упавших тестов, а при перезапуске, если нахожу эту джейсонину, то читаю оттуда список упавших тестов и перезапускаю только их

с артефактами приколдэс.в том, что перезапускаемая джоба своих артефактов из предыдущего запуска не видит, даже если написано when: always, но другие джобы и старые, и затем новые артефакты оттуда видят )))
с кешем сложность в том, что раннеров много, кеш хранится локально, при перезапуске джобы вообще не факт, что она уедет на тот же раннер, где уже упала и через кеш подхватит джейсонину свою

ищу какие-нибудь простые способы, которые я не увидел
иначе придется идти в апишку, брать там зипчик (который, к слову, может быть оче объемным, ибо там логи, отчеты, вот это все), распаковывать и выгружать оттуда джейсонину

9 ответов

12 просмотров
Sergey-Gureev Автор вопроса

короче, вот такое не работает Some job: needs: - artifacts: true job: Some job optional: true ибо optional тут влияет только на наличие этого задания в пайплайне, а не на доступность его артефактов получается бесконечный пайплайн, который бесконечно чет ждет

А почему вы думаете что другие тесты не сломаются, если изменится код? Может быть можно описать запуск только конкретных тестов только при определенных изменениях в коде?

Sergey-Gureev Автор вопроса
Egorrko
А почему вы думаете что другие тесты не сломаются,...

ну потому что такой вот флоу там вообще прикладного кода нет, это пайплайн для монореп с кучей тестов, которые проверяют прикладные комплексы целиком нет, нужно перезапускать только покрасневшие тесты, а не вообще все, потому что - починка прикладного компрлекса не зависит от появления новых коммитов в монорепе с тестами - прогон всех тестов это слишком долго тут нужно еще понимать, что тестов овер9000, и запускаются они не овер9000 джобов, а в специальных джобах-агрегаторах, называемыми в контексте этого пайплайна "планы" таким образом, джобов получается не овер9000, а пара десятков каждый план описывает список тестов, которые нужно запустить и описывает, чем их нужно запустить (там целый зоопарк всяких тулов) механика про вычитывание сломанных тестов изх джейсонины она как раз на уровне этого плана работает

Sergey-Gureev Автор вопроса
Sergey Gureev
ну потому что такой вот флоу там вообще прикладног...

есть подозрение, что артефакты джобов, записанных в dependencies и правда опциональные — не блокируют старт джобы, если их нет

Sergey Gureev
ну потому что такой вот флоу там вообще прикладног...

В чем смысл запускать только часть тестов когда их овре9000? Так можно один чинить другой ломать и поитогу тестирование не нужно

Sergey-Gureev Автор вопроса
Aleksey Lazarev
В чем смысл запускать только часть тестов когда их...

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

Sergey Gureev
это нужно для непосредственной, оперативной работ...

Тогда кажется будто бы просто сделать перед стартом джобы проверку на предыдущую и курлом с апи выдернуть будет не очень сложно

Sergey-Gureev Автор вопроса
Aleksey Lazarev
Тогда кажется будто бы просто сделать перед старто...

угу этот способ я оставил на десерт, и похоже, его время пришло мне, кстати, не очень ясно, как мне артефакты выдергивать, надо апишку раскуривать в чем я вижу сложность: когда в пайплане запускает джоба, у нее появляется айди этот адйи постоянен и неизменен, он однозначно идентифицирует джобу, артефакты джобы доступны через ее айди а вот когда я джрбу перезапускаю, хоть в интерфейсе это и выглядит как та же самая джоба, на самом деле это уже новая джоба с новым айди, и со своими собственными артефактами таким образом, сначала нужно у пайплайна получить самую современную джобу по ее имени, и только за тем уже доставать артефакты я пока не знаю, как это делается )) но я еще и не пробовал, канеш ну и еще момент — у меня динамический пайплайн, соответственно есть дочерний и родительский, надеюсь это нигде не выстрелит

Похожие вопросы

Обсуждают сегодня

Кто создает тут ботов для телеграмм групп ?
Antskup
8
Я хочу запустить свой проект в тг. Что-то между пирамидой и майнилкой. Еще подобного ничего не было. Уникальная идея. Нужен именно не бот, а приложение. С ввод, выводом тон...
Павел А.
6
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
13
Всем доброго вечера! Хочу поделиться своим злоключением с человеком, который, как оказалось сюда тоже скидывал свое резюме. Жаль, что я вашу группу не нашел раньше… человек ки...
Роман Ахмедзянов
4
Я колись ставив гуглу антиспам 3.0, може і норм, але мені не дуже зайшло. Теж думав тиждень, що його і куди. Зупинився на трех варіантах відразу всі три і включив 1. Перевір...
𝓔𝓾𝓰𝓮𝓷𝓮𝓥 J
2
господа, когда у вас в боте есть локализация (ру + англ, остальные языки пока не планируются), вы на первом старте как с языком решаете вопрос: смотрите на language_code приле...
Denis 🐍|👑 | darling! 🥰
5
Всем привет, Добавил в плагин определение user agent public function registerMarkupTags() { return [ 'filters' => [ 'staticPage' => ['RainLab\Pages\Cl...
John Norton Kruger
3
где собака, админ группы? нычкуется и боится проявить волю, в толерантность еще не наигрался? @yelizariev
Ognezar
61
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
А чего при переходе с 2 на 3 все что в билдере сделано тютю?
Денис Александрович
5
Карта сайта