Yum - Как остановить установку зависимостей, если сценарий pretrans не работает

У меня есть спецификация RPM с несколькими зависимостями в разделе «требуется», но я хочу, чтобы установка rpm и зависимостей завершилась неудачно, если в системе запущена определенная служба.

Я попытался использовать pretrans в спецификации RPM, и хотя скриптлет не удался, зависимости все еще устанавливаются.

Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Pre Check if service is running
Service is Already Available on this box .Aborting the installation. 
error: %pretrans(perlTestBase-5.6.7.SNAPSHOT-1.2.201807101630.x86_64) scriptlet failed, exit status 1
Error in PRETRANS scriptlet in rpm package perlTestBase-5.6.7.SNAPSHOT-1.2.201807101630.x86_64
  Installing : php-pear-HTML-Template-IT-1.3.0-2.el5.noarch                                                                                                                                                                                                               1/2 
  Verifying  : php-pear-HTML-Template-IT-1.3.0-2.el5.noarch                                                                                                                                                                                                               1/2 
  Verifying  : 
  perlTestBase-5.6.7.SNAPSHOT-1.2.201807101630.x86_64                                                                                                                                                                                                    2/2 

Dependency Installed:
  php-pear-HTML-Template-IT.noarch 0:1.3.0-2.el5                                                                                                                                                                                                                              

Failed:
  perlTestBase.x86_64 0:5.6.7.SNAPSHOT-1.2.201807101630

Кто-нибудь может мне помочь?


person DD2607    schedule 10.07.2018    source источник


Ответы (1)


Зависимости RPM статически разрешаются относительно пакетов, зарегистрированных в базе данных, до выполнения транзакции установки (где запускаются скриптлеты). В настоящее время не существует способов сбоя транзакции в зависимости от динамического состояния, например, от того, запущен ли в данный момент демон.

Также нет возможности не устанавливать зависимости пакета с неисправным скриптлетом.

person Jeff Johnson    schedule 12.07.2018
comment
Спасибо за ваш ответ, Джефф. - person DD2607; 12.07.2018