Назад | Перейти на главную страницу

Как остановить транзакцию meta-rpm, если предварительное условие не выполняется?

В настоящее время у меня есть мета-пакет rpm, который содержит список зависимостей от других пакетов rpm.

Я хочу остановить транзакцию обновления / установки метапакета (и всех последующих пакетов) в случае сбоя сценария предварительной установки (т.е. при возврате значения, отличного от 0).

Я попробовал это, поместив тестовое условие в сценарий предварительной установки метапакета, что кажется разумным, но вот что произошло:

# yum update my-package
  1. мета-пакет проверяет, какие зависимые пакеты необходимо обновить / установить
  2. запускает сценарий предварительной установки метапакета и терпит неудачу (в данном случае)
  3. продолжает процедуру обновления и обновляет последующие пакеты (!)

Таким образом, я попадаю в ситуацию, когда:

Это явно может вызвать серьезные проблемы, если метапакет содержит данные, необходимые для других пакетов.

Есть ли способ остановить полную транзакцию, если условие предварительной установки не выполняется?

Заметка: Пробовал также процедуру обновления с помощью команды rpm, тоже не сработало.