Страница 1 из 1

Сборка на abf.io не проходит тесты

Добавлено: 13 мар 2025, 19:33
ДонВенчензо
Добрый всем.
Разделяю проект на два rpm пакета. Один qt5, другой qt6. Так как они выполняют одну и туже задачу, то добавил для каждого пакета записи:

Код: Выделить всё

Conflicts:      %{name}-qt6 для qt5 
Conflicts:      %{name}-qt5 для qt6 
Тесты не проходят, выдает ошибку

Код: Выделить всё

DEBUG util.py:444:  Error: 
DEBUG util.py:444:   Problem: package eepmapp-qt6-3.64.12.1-2.x86_64 conflicts with eepmapp-qt5 provided by eepmapp-qt5-3.64.12.1-2.x86_64
DEBUG util.py:444:    - package eepmapp-qt5-3.64.12.1-2.x86_64 conflicts with eepmapp-qt6 provided by eepmapp-qt6-3.64.12.1-2.x86_64
DEBUG util.py:444:    - conflicting requests
В качестве проверки устанавливал пакеты. Работают как от них я и ожидаю. Пакеты одновременно не устанавливаются, а взаимозаменяются. Как быть?

Ссылка на проект: https://abf.io/build_lists/5376858

Re: Сборка на abf.io не проходит тесты

Добавлено: 27 мар 2025, 15:16
Survolog
Привет.
Conflicts: нужны, когда в разных пакетах есть файлы по одному и тому же пути.
Если такие пакеты попробовать установить одновременно, то они скачаются, после чего произойдёт ошибка.
Если же вставить Conflicts, то пакеты качаться не будут, ошибка будет выдана на основе метадаты.

Советую попробовать переименовать разные файлы по одинаковому пути, а общие одинаковые файлы упаковать в отдельный %package common, на который сделать соответствующие Requires.
Тогда можно будет установить как один вариант гуи, так и другой порознь или одновременно.
Если же они так не могут работать из-за каких-нибудь ещё пакетов, то можно оставить, как есть.
Тесты - это тесты на установку всех пакетов. Если все пакеты поставить нельзя - тесты падают. Это нормально, если так и задумано.