RPM spec file scriplet ordering removes init.d-script and httpd shib.conf on upgrade

Description

Upgrading the 2.1 SP to 2.2 removes the init.d script and Apache httpd config snipplet shib.conf, because (I'm just relaying this for Scott) the %postun scriptlet (for removing the old packages files) is run after the %post scriptlet (which only copies files if they do not already exist).

http://fedoraproject.org/wiki/Packaging/ScriptletSnippets#Scriptlet_Ordering

Either way it looks like whatever the new package does, the %postun from the old package will happily remove the aformentioned files after the %post of the new package is finished?

Environment

Current RHEL 5.3

Activity

Scott Cantor 
June 25, 2009 at 2:00 PM

Revision 2.2-3 is now uploaded for RH5. I didn't bother with RH4 since the change won't matter there.

peter 
June 25, 2009 at 12:00 PM
(edited)

Could you please also add
/sbin/chkconfig --add shibd
to the %posttrans section after we copy the file over? It looks like the same bug from 2.1 from the %postun section is removing all the symlinks in all runlevels. So while the init script is in place, there's no reference in any runlevel left (at least on a couple RHEL5.3s which I upgraded via RHN).
Post facto this can easily be fixed and I made a note on the wiki page NativeSPLinuxRPMUpgrade.

Scott Cantor 
June 23, 2009 at 4:42 PM

Primary patch for init script handling:
http://svn.middleware.georgetown.edu/view/cpp-sp?view=rev&revision=3064

Not sure what's left to address with shib.conf.

Scott Cantor 
June 23, 2009 at 3:09 PM

Not sure what I was thinking, you're right, I can't really fix this other than going forward. The postun code in the old package is going to blow away anything I do. The only real "fix" is don't upgrade, and do a remove/install instead.

I think my patch is correct going forward, but that's about all I can do.

Fixed

Details

Assignee

Reporter

Fix versions

Affects versions

Created June 23, 2009 at 12:47 PM
Updated June 22, 2021 at 8:48 PM
Resolved June 25, 2009 at 12:18 PM