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

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

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

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

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

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

9 ответов

32 просмотра
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
Тогда кажется будто бы просто сделать перед старто...

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

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

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

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Карта сайта