From Bugzilla Helper: User-Agent: Mozilla/5.0 (compatible; Konqueror/3.4; Linux) KHTML/3.4.0 (like Gecko) Description of problem: due to some selinux problem, rpm scriplets do not execute for me: ============================================================================= Package Arch Version Repository Size ============================================================================= Updating: openssh-server x86_64 4.0p1-3 development-loca 222 k Transaction Summary ============================================================================= Install 0 Package(s) Update 1 Package(s) Remove 0 Package(s) Total download size: 222 k Is this ok [y/N]: y Downloading Packages: Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction error: %pre(openssh-server-4.0p1-3.x86_64) scriptlet failed, exit status 255 error: install: %pre scriptlet failed (2), skipping openssh-server-4.0p1-3 Updated: openssh-server.x86_64 0:4.0p1-3 Complete! but yum says the package has been updated, while it was not: [avi@blast ~]$ rpm -q openssh-server openssh-server-4.0p1-2 this misreporting is confusing and potentially dangerous Version-Release number of selected component (if applicable): yum-2.3.2-2 How reproducible: Always Steps to Reproduce: 1. update a package that fails its pre-install script Actual Results: yum reported the package as updated Expected Results: yum should have warned that the package was not updated Additional info:
Dupe of https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=158388
*** Bug 158388 has been marked as a duplicate of this bug. ***
This is difficult to actually catch as rpm doesn't pass up the scriptlet errors via the callback
And the callback cannot be changed, can it? rpm reports sciptlet returns on stderr if/when equivalent of -vv is specified. Off to youm as a RFE, I've asked for that from Seth for diagnostic debugging repeatedly ...
paul already implemented the rpmdebug output via a yum plugin.