rssd 2098

Все статьи

Все материалы - Московский Комсомолец

Израильская армия обнаружила склады оружия «Хезболлы» у позиций ООН в Южном Ливане

Израильские военные выявили склады оружия и оперативные квартиры «Хезболлы» и «Амаль» в непосредственной близости от позиций миротворцев ООН в южноливанских деревнях, что вновь подчеркивает сложность и многослойность противостояния на северной границе Израиля.В последние дни Армия обороны Израиля (ЦАХАЛ) провела серию целенаправленных операций в южном Ливане, в ходе которых были обнаружены склады

Официальный сайт ОАО ТРК "Петербург-Пятый канал", Новости

Отпускные задержались? Как не остаться без денег перед отдыхом

Отпускные нужно выплачивать не позднее чем за три календарных дня до начала отдыха, причем день перевода денежных средств в этот срок не входит. О нюансах рассказали в пресс-службе Министерства труда РФ. «Чтобы отдых начался без переживаний, отпускные должны прийти на счет не позднее чем за три календарных дня до первого дня оплачиваемого отпуска. В этот срок не включается день выплаты», — говорит

EADaily:все новости

Трамп заявил о возможном изменении границ Украины после завершения конфликта

Президент США Дональд Трамп завил, что по итогам мирного урегулирования конфликта Украина может не сохраниться в существующих границах обрести другие территориальные очертания. В интервью американскому телеканалу CBS News глава Белого дома выразил уверенность в том, что стороны вооруженного противостояния очень близки к заключению соглашения. Трамп в очередной раз пообещал, что завершение боевых д

Официальный сайт ОАО ТРК "Петербург-Пятый канал", Новости

«Мы относимся к этому серьезно»: Куба готовится к возможной военной операции США

Куба готовится к возможному военному противостоянию с США. Об этом ТАСС сказал представитель Кубы при ООН Эрнесто Соберон Гусман. По его словам, власти острова серьезно относятся к тому, что происходит в отношениях между Кубой и США. «Каждую пятницу на Кубе мы посвящаем день обороне, чтобы подготовить весь народ к защите нашего суверенитета, независимости и территориальной целостности», — отметил

Главное сегодня - ИА REGNUM

Трамп: расходы на войну с Ираном возместят страны, которых защищали США

Расходы на конфликт с Ираном возместят США другие страны — Трамп Трамп: расходы на войну с Ираном возместят страны, которых защищали США Вашингтон, 9 ноября, 2026, 07:24 — ИА Регнум. Другие страны должны компенсировать США расходы за военную операцию против Ирана. Об этом 8 ноября заявил президент США Дональд Трамп . «В конце всего этого страны, которые мы защищали, возместят нам все без исключени

Российская Газета

В Nvidia начали расследовать связь гендиректора Хуанга с иностранкой

В воскресенье технологическая компания Nvidia заявила, что "начинает независимое расследование в свете недавних сообщений о том, что основатель и генеральный директор Дженсен Хуанг стал целью усилий иностранной разведки".В октябре газета The New York Times сообщила, что Дональд Трамп был проинформирован в прошлом году о наличии разведданных на предмет того, что Хуанг имеет близкие отношения с кита

Все материалы - Московский Комсомолец

Вражеские БПЛА атаковали промзону Киришей

Вражеские БПЛА атаковали промзону Киришей Фото: Архив МК в Ленобласти. Сегодня ночью украинские дроны атаковали Ленобласти. Губернатор 47-го региона Александр Дрозденко объявил режим беспилотной опасности в 02:16 ночи 9 ноября. «Внимание, объявлена опасность БПЛА в воздушном пространстве Ленинградской области. Возможно понижение скорости мобильного интернета», — заявил глава региона.К 3:46 в возду

Все материалы - Московский Комсомолец

Четыре человека пострадали в ДТП с грузовиком и автобусом в Уссурийске

Четыре человека пострадали в ДТП с грузовиком и автобусом в Уссурийске Четыре пассажира получили травмы в аварии с участием грузовика в Уссурийске Четыре пассажира получили травмы в результате столкновения грузовика, автобуса и легкового автомобиля в Уссурийске. Авария произошла на перекрёстке улиц Комарова и Некрасова, сообщили в пресс-службе УМВД по Приморскому краю «Водитель грузовика не выдерж

Все материалы - Московский Комсомолец

В страшном ДТП под Боровском погиб ребенок

В страшном ДТП под Боровском погиб ребенок Фото: УМВД по Калужской области Авария произошла на 404 км автодороги «А-108 МБК».По предварительным данным, автомобилист на «БМВ» выехал на встречку и столкнулся с «КамАЗ», который от удара опрокинулся на автомобиль «Черри».В результате ДТП погиб восьмилетний пассажир автомобиля «Черри».«Также пострадали водитель и несовершеннолетние пассажиры указанного

Официальный сайт ОАО ТРК "Петербург-Пятый канал", Новости

Питомец выдрессировал вас? Почему кошки и собаки постоянно клянчат еду

Специалист по поведению животных и эксперт бренда кормов для питомцев Анастасия Шустрова рассказала изданию Газета.ру, что навязчивое выпрашивание еды у кошек и собак может быть как привычкой, закрепленной хозяином, так и сигналом стресса или проблем со здоровьем. По словам кинолога, чувство насыщения у питомцев формируется в два этапа. Сначала стенки желудка механически растягиваются, сигнализиру

Главное сегодня - ИА REGNUM

Значительные потери на сумском направлении несет 71-я бригада ВСУ

Значительные потери на сумском направлении несет 71-я бригада ВСУ Москва, 9 ноября, 2026, 07:16 — ИА Регнум. 71-я отдельная аэромобильная бригада ВСУ, которую командование активно задействовало в попытках проникновения, несет большие потери на сумском направлении. Об этом сообщили российские силовики. «Множество боевиков 71-й бригады пропадает без вести», — сказал силовик «РИА Новости». Ранее в си

Все материалы - Московский Комсомолец

Суд в Кологриве по иску прокуратуры обязал зарегистрировать водопровод

Прокуратура Кологривского района провела проверку соблюдения законодательства в сфере жилищно-коммунального хозяйства. В ходе надзорных мероприятий установлено, что на территории города Кологрива расположены и эксплуатируются сети холодного водоснабжения на улицах Алексинская, Котлова, Нагорная, Механизаторов, Комсомольская, Ладыженского, а также в переулках Лесной, Унженский и Безымянный.Данные о

Русская семерка

Как в СССР встречали демобилизованных: бытовые правила после войны

Возвращение с войны — это не только слёзы на перроне и объятия. Это ещё и суровая проза: куда идти, где жить, чем кормить семью. В 1945 году в СССР демобилизация растянулась на несколько лет. Всего из армии уволили около 8,5 миллионов человек . И каждый из них возвращался в страну, которая лежала в руинах, где жилья катастрофически не хватало, а чиновники не всегда спешили помочь. Государство пыта

Взгляд

Разведка «Ахмата» предрекла снижение возраста мобилизации на Украине до 18 лет

Власти Украины готовятся к длительным боевым действиям и планируют существенно понизить возраст для мобилизации в ряды вооруженных сил, сообщил начальник разведки спецназа «Ахмат» с позывным Аид. Украинское руководство намерено продолжить снижение возраста призывников, что свидетельствует о подготовке Киева к долгосрочному противостоянию. В скором времени в ряды армии начнут призывать 21-летних, а

EADaily:все новости

В Московской области закрылись все 53 автозаправочные станции сети «Трасса»

В Московской области полностью прекратили работу все 53 автозаправочные станции сети «Трасса». В региональном Минэнерго подтвердили Интерфаксу, что собственник имущества «Газпромбанк Лизинг» начал принудительное изъятие объектов. К настоящему моменту 40 комплексов уже опечатаны, а оставшиеся АЗС холдинга будут изъяты до конца недели. Причиной краха оператора после 30 лет деятельности стали глубоки

Взгляд

Критики властей Украины начали попадать в сеть тайных секретных тюрем

Критиков Владимира Зеленского и недовольных украинскими правоохранителями отправляют для расправы в секретные пыточные, сообщили представители антифашистского подполья. Несогласные с действиями киевских властей граждане попадают в сеть тайных тюрем на Украине, передает РИА «Новости» со ссылкой на участников одесского сопротивления. «Это же «рука руку моет» – в тюрьмы эти попадают и несогласные с р

Все материалы - Московский Комсомолец

В Курске удалось взять под контроль распространение опасного сорняка-аллергена

Управление Россельхознадзора по Орловской и Курской областям отметило плодотворную работу администрации Курска, коммунальных служб, обслуживающих организаций, собственников и горожан в борьбе с карантинным сорняком - амброзией полыннолистной. В прошлом году ведомство било тревогу из-за многократного увеличения площади карантинных зон по этому растению. Большинство очагов выявили на территориях, пр

Все материалы - Московский Комсомолец

Три человека погибли при пожаре в Красноярском крае

Три человека погибли при пожаре в Красноярском крае Тётя и двое племянников погибли при пожаре в Красноярском крае В ночь с 8 на 9 ноября в посёлке Камарчага сгорел жилой дом. В результате пожара погибли три человека, ещё один человек получил травмы, сообщила пресс-служба в ГУ МЧС России по Красноярскому краю в Max. «Короткое замыкание электропроводки стало причиной возгорания», — говорится в сооб

РИАМО

До +7 градусов ожидается в Московском регионе в понедельник

Сетевое издание «портал Региональное информационное агентство Московской области (РИАМО)» Соучредители: Министерство информации и молодежной политики Московской области Государственное автономное учреждение Московской области «Цифровые Медиа» Государственное автономное учреждение Московской области «Информационное агентство «Контент-Центр» Государственное автономное учреждение Московской области «

Все материалы - Московский Комсомолец

Шесть беспилотников сбили в воронежском небе перед новой рабочей неделей

Шесть беспилотников сбили в воронежском небе перед новой рабочей неделей Фотоархив "МК в Воронеже" Режим опасности атаки БПЛА действовал на территории Воронежской области двенадцать часов. Его объявили в 19:02 в воскресенье, 8 ноября, и отменили в 07:02 в понедельник, 9 ноября.Сегодня утром губернатор Александр Гусев сообщил о количестве сбитых беспилотников:– Минувшей ночью в небе над Воронежем и

Российская Газета

Омич провалился в колодец и просидел в нем полтора дня

По предварительным данным, 45-летний мужчина провалился в открытый колодец на пересечении улиц Смирновской и Сиреневой. Он просидел в нем полтора суток, пока его разыскивали. Пропавшего нашли волонтеры поискового отряда "ДоброСпас-Омск". В настоящее время он находится в больнице с признаками переохлаждения."Следственным управлением Следственного комитета Российской Федерации по Омской области по и

Официальный сайт ОАО ТРК "Петербург-Пятый канал", Новости

Дети не спасли от колонии: Блиновской отказали в отсрочке наказания

Кассационный суд оставил без удовлетворения жалобу «королевы марафонов» Елены Блиновской и ее защиты на отказ в отсрочке исполнения наказания. Об этом говорится в судебных материалах, которые оказались в распоряжении ТАСС. Блогер, осужденная за уклонение от уплаты налогов и отмывание средств, просила отложить реальное наказание до того, момента, пока ее младшей дочери не исполнится 14 лет. Однако

Военное обозрение

США считают требования Ирана «неприемлемыми», переговоры снова в тупике

США считают требования Ирана «неприемлемыми», переговоры снова в тупике Переговоры США и Ирана о мирном соглашении пока не продвинулись из-за иранских требований. Как заявил глава американского Госдепа Марко Рубио, они просто «неприемлемы». США и Иран ведут переговоры при посредничестве Катара, но прийти к общему знаменателю пока не могут. Как подчеркнул Рубио, всё упирается в иранские требования,

Красная весна

Сыграно пять туров чемпионата Бразилии по шахматам среди женщин

Сыграно пять туров чемпионата Бразилии по шахматам среди женщин Со стопроцентным результатом в чемпионат Бразилии по шахматам среди женщин во Флорианополисе (Бразилия) идет Джулиана Саюми Терао после пятого тура 8 ноября, итоги тура опубликованы на специализированном сервере шахматных результатов chess-results.com.После пятого тура с 5 очками турнирную таблицу возглавляет Джулиана саюми Терао (рей

Взгляд

Российский рынок акций вырос почти на 1% в начале утренних торгов

Украина Россия и США Президент Путин Евросоюз Нефть и рубль Армия и вооружение Смена декораций в США надувает Лондону щекиЕсть Запад, где все ходят строем и подчиняют свои интересы одному лидеру – Вашингтону. Но внутри этой казарменной системы остается много место для интриг и противоречий. 5 комментариев Ольга Андреева Парад 7 ноября 1941 года вселил уверенность в ПобедеСталин выступил со странно

Все материалы - Московский Комсомолец

Учёные выяснили, почему ядерный взрыв может не спасти Землю от астероида

Учёные выяснили, почему ядерный взрыв может не спасти Землю от астероида Icarus: обнаружена опасная особенность уничтожения космических угроз Американские физики установили, что эффективность отклонения астероида с помощью ядерного взрыва может различаться почти в пять раз в зависимости от направления воздействия. Результаты исследования опубликованы в научном журнале Icarus. Исследователи изучали

Все материалы - Московский Комсомолец

Днем 9 ноября в Астрахани воздух прогреется до +8 градусов

Осадков не прогнозируется. По данным синоптиков «Гисметео», сегодня днем в Астрахани установится облачная погода. В период с 10 до 19 часов осадков не ожидается.Температура воздуха будет постепенно расти. К 13 часам столбики термометров достигнут максимума и покажут плюс 8 градусов. К вечеру похолодает до плюс 4 градусов.Ветер южный и юго-западный будет дуть со скоростью 3-4 м/с.Как сообщает Астра

Все материалы - Московский Комсомолец

Известный ресторатор Александр Белькович попробовал легендарную орловскую пиццу в арке

Известный ресторатор Александр Белькович посетил Орёл. В выпуске шоу под названием «100 мест, где поесть» на федеральном телеканале СТС ресторатор Александр Белькович зашёл в ту самую арку за пиццей, которую в столице 57-го региона знают, кажется, все. Местный житель Сергей рассказал, что ест её с детства.Шефу понравилось: пицца мягкая, воздушная и тёплая, а тесто тает во рту. «Да за такую пиццу в

Взгляд

На Украине под мобилизацию попали сотрудники оборонных предприятий

Военный эксперт Андрей Марочко заявил, что сотрудники территориальных центров комплектования начали забирать в ряды украинской армии специалистов военно-промышленного комплекса из-за снижения квот на бронь от мобилизации. На Украине территориальные центры комплектования (ТЦК) стали призывать на службу специалистов, работающих на предприятиях оборонного сектора, передает ТАСС . «ТЦКшники охотятся и

Российская Газета

На Алтае врачи удалили у курильщика гигантскую буллу

Жителя Барнаула около двух недель беспокоили давящая боль и необъяснимая тяжесть в правой половине груди. В поликлинике мужчину экстренно направили в БСМП №2 с подозрением на пневмоторакс.Во время обследования торакальные хирурги обнаружили у пациента тонкостенный "воздушный мешок" диаметром 16 сантиметров. Гигантская булла занимала половину грудной клетки и сдавливала легкое."Такой воздушный "пуз

Взгляд

Над Воронежем и областью за ночь поразили шесть дронов

Украина Россия и США Президент Путин Евросоюз Нефть и рубль Армия и вооружение Смена декораций в США надувает Лондону щекиЕсть Запад, где все ходят строем и подчиняют свои интересы одному лидеру – Вашингтону. Но внутри этой казарменной системы остается много место для интриг и противоречий. 5 комментариев Ольга Андреева Парад 7 ноября 1941 года вселил уверенность в ПобедеСталин выступил со странно

Интерфакс

В Воронежской области уничтожены шесть БПЛА

Copyright © 1991—2026 Interfax. Все права защищены. Сетевое издание "Интерфакс.ру". Свидетельство о регистрации СМИ ЭЛ № ФС 77 - 84928 выдано Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор) 21.03.2023. Вся информация, размещенная на данном веб-сайте, предназначена только для персонального пользования и не подлежит дальнейшему воспроизв

Интерфакс

Международная конференция ООН по климату начинается в Турции

Международная конференция ООН по климату начинается в Турции Москва. 9 ноября. INTERFAX.RU - Международная конференция ООН по изменению климата (СОР31) начинает работу в Анталье (Турция). Российскую делегацию возглавит помощник и специальный представитель президента РФ по вопросам климата и водных ресурсов Руслан Эдельгериев. В состав российской делегации входят 16 человек. Министр экономического

Все материалы - Московский Комсомолец

В Нальчике откроется выставка «Инфраструктура ожидания»

В Нальчике 14 ноября начнёт работу выставка «Инфраструктура ожидания» — первая передвижная экспозиция исследовательского проекта «Архив высоты» о советском наследии Приэльбрусья. Площадкой станет Павильон современного искусства в Парке 100-летия Кабардино-Балкарской Республики.Как сообщили организаторы, посетители смогут увидеть реальные приборы физиков Баксанской нейтринной обсерватории, впервые

Как упростить GitLab CI: семь приёмов для настройки пайплайна

Открыть на сайте ↗

Пайплайн успешно завершился, несмотря на найденные линтером ошибки. Тесты прошли дважды: для процента покрытия и для XML-отчёта завели разные задачи, и каждая заново прогоняет весь набор тестов. А два соседних пайплайна одновременно начали обновлять одно окружение. Такие ситуации требуют разных исправлений: настроить статусы проверок, убрать повторную работу и ограничить одновременный доступ к ресурсу.

Примеры в статье независимы: их можно адаптировать по отдельности. Для Python-задач ниже используются каталоги my_app и tests, а команды установки зависимостей показаны прямо в YAML.

Как свернуть похожие задачи в графе пайплайна

Когда в пайплайне становится много похожих задач — например, из-за ручного дублирования или распараллеливания, — граф может разрастись в длинный список строк. Если несколько задач выполняют похожие проверки, GitLab умеет объединять их в визуальную группу по именам. Для этого подойдёт общий префикс и нумерация X/Y:

В обычном графе три задачи свернутся в группу checks, которую можно раскрыть для просмотра отдельных результатов. В мини-графах GitLab такую группировку не применяет.

Этот приём меняет только представление. Задачи сохраняют свои команды, статусы и требования к раннерам. Они не начинают выполняться быстрее и не получают общую блокировку из-за совпадения префикса. Для экземпляров, созданных через числовой parallel, GitLab сам добавляет нумерацию к именам.

Как поставить изменения общего ресурса в очередь

Несколько пайплайнов могут выполняться одновременно — например, из разных веток или мёрж-реквестов (Merge Request). Если они меняют одно и то же окружение, это может привести к конфликту: пока первый пайплайн применяет инфраструктурную конфигурацию, второй пытается сделать то же самое.

Resource group позволяет выполнять задачи с одним ключом по очереди в пределах проекта. Например, для проекта с Terraform-кодом в каталоге infra можно настроить ручной запуск:

Этот фрагмент рассчитан на раннер с установленным Terraform и уже настроенным доступом к инфраструктуре и её удалённому бэкенду. Оператор запускает задачу вручную; параметр auto-approve позволяет команде apply завершиться без интерактивного подтверждения внутри CI.

Если задача с ключом terraform-production уже выполняется, другая задача с таким же ключом в этом проекте будет ждать освобождения ресурса. Однако очередь не защищает от terraform apply, запущенного с ноутбука, из другого проекта или из задачи без нужного resource_group. Блокировка состояния на стороне Terraform по-прежнему нужна.

Порядок очереди тоже настраивается отдельно. Режим по умолчанию unordered не гарантирует, что первым пойдёт старейший пайплайн. Для обработки по возрастанию идентификаторов пайплайнов выберите oldest_first через API ресурсных групп. Это порядок пайплайнов, который не следует путать с датами коммитов.

Как разрешить ожидаемый код ошибки и сохранить остальные проверки

На этапе внедрения линтера команда может решить, что найденные нарушения пока не должны блокировать пайплайн. Если добавить к команде конструкцию || true, оболочка скроет любой ненулевой код завершения, включая ошибку запуска инструмента.

Более точное правило задаёт allow_failure:exit_codes. Например, Ruff возвращает код 1 при найденных нарушениях, а код 2 при нештатном завершении, в том числе из-за неверной конфигурации:

При коде 1 GitLab отметит задачу предупреждением и позволит пайплайну продолжиться. Код 2 останется обычной ошибкой и повлияет на итоговый статус. Успех всего пайплайна при этом зависит и от остальных задач.

Разрешайте только те коды, значение которых известно для выбранного инструмента. У другого линтера код 1 может означать совсем другую проблему. Когда команда сделает проверку обязательной, настройку allow_failure можно удалить, сохранив ту же команду запуска.

Как добавить выбор параметра при ручном запуске

В существующем пайплайне переменная может управлять режимом проверки: запустить тесты или дополнительно вывести покрытие. Чтобы человек не вводил значение по памяти, задайте список options для переменной:

На странице ручного запуска GitLab покажет список с описанием. Значение value должно входить в options. Оно задаёт значение по умолчанию, но переменную могут переопределить другие источники с более высоким приоритетом. Поэтому скрипт отдельно отклоняет неизвестный режим.

Options полезен для интерфейса запуска пайплайна, который уже использует переменные. Для новых параметров рассмотрите CI/CD inputs: они задают типы и проверяют ограничения при создании пайплайна. Выбор между этими механизмами зависит от того, как параметр должен проверяться и использоваться, а не от размера YAML-файла.

Как переиспользовать часть конфигурации из другого файла

После настройки выполнения часто обнаруживается другой источник работы: одинаковые команды установки зависимостей скопированы в несколько задач. Изменение приходится повторять в каждом месте, и конфигурации постепенно расходятся.

Тег !reference позволяет взять выбранный блок из другой задачи или скрытого шаблона, в том числе из файла, подключённого через include. Например, вынесите подготовку Python-окружения в .ci/python.yml:

В основном .gitlab-ci.yml подключите файл и возьмите из шаблона только before_script:

Начальная точка в имени .python_setup делает его скрытым шаблоном: отдельную задачу GitLab для него не запускает. Остальные параметры unit_tests остаются рядом с самой задачей.

YAML-якоря действуют только внутри файла, где объявлены. При этом extends тоже умеет работать с подключёнными файлами: он подходит для наследования общей конфигурации задачи. !reference удобен, когда нужен конкретный раздел. Если для понимания одной команды приходится переходить через несколько вложенных ссылок, такая экономия строк уже затрудняет сопровождение.

Как получать два отчёта о покрытии тестами за один прогон

GitLab поддерживает два независимых механизма отображения покрытия кода тестами. Ключ coverage извлекает общий процент из лога задачи. Настройка artifacts:reports:coverage_report передаёт XML-отчёт, по которому GitLab отмечает покрытые и непокрытые строки в изменениях мёрж-реквеста. Эти механизмы можно подключить к одной задаче.

Для проверки создайте небольшой модуль my_app/calculator.py:

В tests/test_calculator.py добавьте проверки сложения и деления:

Теперь настройте задачу в .gitlab-ci.yml. Плагин pytest-cov умеет формировать несколько отчётов за один запуск:

Команда python -m pytest --cov=my_app --cov-report=term-missing --cov-report=xml:coverage.xml tests/ выводит покрытие в терминал и сохраняет тот же результат в coverage.xml. Регулярное выражение для pytest-cov забирает процент из строки TOTAL. В рабочем проекте закрепите версии зависимостей в принятом у вас файле требований: изменение формата вывода может потребовать правки регулярного выражения.

Чтобы увидеть построчную разметку, добавьте эти файлы в отдельной ветке и откройте мёрж-реквест. После завершения пайплайна GitLab обработает отчёт и покажет аннотации в изменённых файлах. В примере непокрытой останется строка return внутри unused_function. Само объявление функции выполняется при импорте модуля, поэтому считать строку def заведомо непокрытой было бы ошибкой.

Процент помогает заметить изменение объёма проверяемого кода, а построчная разметка указывает, где искать пробелы. Ни один из этих показателей не проверяет, насколько содержательны утверждения assert в тестах.

Как распределить тесты между параллельными задачами

Когда отчёты, статусы и конфигурация задач настроены, можно разбирать время выполнения. Ключ parallel создаёт несколько экземпляров задачи. Для каждого GitLab задаёт номер CI_NODE_INDEX и общее количество CI_NODE_TOTAL. Распределение самих тестов должен выполнить тестовый инструмент: обычная команда pytest в каждом экземпляре повторит весь набор.

В Python эту работу можно поручить плагину pytest-split. Сначала локально выполните полный прогон и сохраните длительности тестов:

Плагин создаст файл .test_durations. Добавьте его в репозиторий, чтобы все экземпляры CI-задачи использовали одинаковые данные. Затем задайте три группы:

GitLab создаст три задачи, а pytest-split выберет для каждой её часть набора. Когда состав и длительности тестов заметно изменятся, обновите .test_durations. Наборы с зависимостью от порядка запуска сначала нужно подготовить к разделению.

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

Если нужно проверить один набор тестов на разных версиях Python, используйте parallel:matrix:

Здесь версия меняется: её значение подставляется в имя образа, и GitLab запускает каждую задачу в своём контейнере с нужным Python. Если добавить переменную OS, она сама по себе не переключит операционную систему. Для Windows или macOS нужны подходящие раннеры и их выбор, например через теги, заданные переменными матрицы. Команды задачи тоже должны работать в выбранной среде.

Что проверить после изменения конфигурации

Перед переносом настроек в основной пайплайн:

  • Прогоните конфигурацию через CI Lint с подключаемыми файлами. Проверьте правила создания задач для push, мёрж-реквеста и ручного запуска.
  • Убедитесь, что каждый тест попадает в нужную группу, а самая долгая группа не сводит выигрыш от параллельности к минимуму. Сравните полное время пайплайна с исходным.
  • Проверьте логи и XML-отчёт покрытия на заведомо непокрытой строке. Найденный процент и построчная разметка должны описывать один прогон.
  • Вызовите разрешённую ошибку линтера и отдельно ошибку его конфигурации. Убедитесь, что пайплайн различает эти случаи.
  • На тестовом окружении запустите два пайплайна с общей ресурсной группой. Проверьте ожидание ресурса и выбранный порядок обработки.
  • Передайте неподдерживаемое значение TEST_MODE при запуске. Задача должна явно отклонить его, не переходя к тестам или другим действиям.