V3 Upgrade - need to rebuild the catalog.
Description
Environment
Activity
Rod WiddowsonMay 21, 2018 at 2:52 PM
Fixed as outline above (once I bottomed out the vbscript bug I'd introduced)
Rod WiddowsonMay 21, 2018 at 2:34 PM
Scriptfille file now misbehaving. Some days it just doesn't go your way... Faint, but pursuing
Rod WiddowsonMay 21, 2018 at 2:34 PM
And the catalog path is initialized from catalog.xml....
Rod WiddowsonMay 21, 2018 at 1:15 PM
I now remember why I hate this install game so much.
Prototyped everything and it just didn't work. The new catalog was never created, but the catalog.xml.in
file was there.
After spending a lot of time I determined that vbscript change was working (you know how much fun it is debugging vbscript with printf with a 5 minute turnaround to rebuild the MSI). And it was fine.
It turns out that what happens is
catalog.xml.in
is createdvbscript runs and
catalog.xml
is createdPrevious version unnstalled, deleting
catalog.xml
I am having to cup of tea and will review my options
Do the edit after
RemovePreviousVersions
. That's plenty late, and also it only works when theRemovePreviousVersions
is at the end (which may not be true for every consumer of the merge modules). IfRemovePreviousVersions
is beforeInstallFiles
then the edit will also fail.Leave the phrases which install
catalog.xml
in place (to avoid the delete). but also addcatalog.xml.in
and use that to drive the (needless) substitution script. Longer term we can strip the substitution bit out, but the copy has to continue happening so as to stomp on the old version. This is probably the best plan since it keeps {{catalog.xml}} under component control (so it goes on final uninstall) but also fixes the update issue.I thought of an rejected out of hand any idea of changing the name or location of the catalog file. Lets keep this local and a result of history.
Scott CantorMay 21, 2018 at 12:52 PM
So I guess this bug always existed but we hadn't been updating the catalog files much if at all, just the schemas. Unfortunate.
The intent is that they be read only. Any user-supplied schemas would be in a separate file the user would create and add to the catalog path.
I don't know whether this is Windows only. But on windows you cannot "just start using" the {{urn:mace:shibboleth:3.0:native:sp:config}} namespace, you have to go in and edit the
%PROGRAMDATA%\Shibboleth\SP\xml\shibboleth\catalog.xml
.I'm hoping Scott will have a wizard wheeze for this. We can:
Fix it in the documentation
Force a rebuild of the catalog in the V3 installer
A lot probably depends on what needs to be done on other platforms.