Bug 456446

Summary: PackageCallbacks.ycp still refers to y2logRPM, but file no longer exists
Product: [openSUSE] openSUSE 11.1 Reporter: Michael Andres <ma>
Component: YaST2Assignee: Ladislav Slezák <lslezak>
Status: RESOLVED FIXED QA Contact: Jiri Srain <jsrain>
Severity: Normal    
Priority: P3 - Medium CC: aj, jreidinger, locilka
Version: RC 2   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Development Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Michael Andres 2008-12-04 15:52:49 UTC
[YCP] PackageCallbacks.ycp:548 
DonePackage(error: 3, reason: 'Subprocess failed. Error: RPM failed: error: %post(wol-0.7.1-97.56.i586) scriptlet failed, exit status 255')

[bash] ShellCommand.cc(shellcommand):78 
/usr/bin/tail: cannot open `/mnt/var/log/YaST2/y2logRPM' for reading: No such file or directory

We must take care additional rpm output is provided via the callback. And maybe displayed even if there is no error. There might be a reason why the %pre/%post writes to stderr.
Comment 1 Michael Andres 2008-12-10 11:15:15 UTC
*** Bug 457915 has been marked as a duplicate of this bug. ***
Comment 2 Josef Reidinger 2008-12-11 09:46:08 UTC
exist more places where obsolete y2logRPM is used -
installation/src/modules/Vendor.ycp:                 "echo \"Installing driver update\" >> " + Directory::logdir + "/y2logRPM ; " +
installation/src/modules/Vendor.ycp:                 "    rpm -Uv $i/*.rpm 2 >> " + Directory::logdir + "/y2logRPM ; " +
packager/src/modules/PackageInstallation.ycp:                                    Directory::logdir + "/y2logRPM");
yast2/library/packages/src/PackageCallbacks.ycp:                          + Directory::logdir + "/y2logRPM' > " + infopath);
Comment 3 Michael Andres 2008-12-18 22:25:31 UTC
(In reply to comment #0 from Michael Andres)
> 
> We must take care additional rpm output is provided via the callback.

Maybe we can use the finish callback to do this. See bug #369450.
Comment 4 Michael Andres 2009-02-03 17:00:03 UTC
Since libzypp-5.27.4 any additional rpm output is sent via the
Install/RemoveResolvableReport finish() callback.

I suppose pkg-bindings/src/Callbacks.cc and/or PackageCallbacks.ycp have to be adapted. In case of no_error the reason string might be not empty, and contains any additional rpm output.

The string is multiline and looksl like this (headline will become translated):

  Additional rpm output:
  Whatever rpm scripts wrote to 
  stdout or stderr...
Comment 5 Ladislav Slezák 2009-04-08 10:49:11 UTC
The package callbacks have been fixed in SVN Trunk (will be in yast2-packager-2.18.5 and in yast2-2.18.15).

Reassinging to Lukas to fix Vendor.ycp.
Comment 6 Lukas Ocilka 2009-04-20 12:02:20 UTC
Vendor module fixed in openSUSE 11.2 and SLE 11 SP1.

Reassigning to Lada to fix packager in SP1 too.
Comment 7 Ladislav Slezák 2009-04-21 18:35:00 UTC
Committed to SLE-11-SP1-Stash SVN branch.