Ok, I did some pause to see if anybody try it. Please, let me know if you did, 
I hope it just work well and this is why there are no replays...

Patching over http-protocol.

First let me note that patchadd already support http and https. You already may 
say -M http://<URL> and then patch_IDs. It was not supported for zones (this 
project fixing it as a side effect), but otherwise if you have webserver where 
patches are posted in a JAR-form - then patchadd will get them and install on 
your system.

So I am not introducing http-patching it is already in place.

I just make recursive patching (over zones) work with it.

Major difference between directory and web server is that I can not lstat it - 
nor reasonable way in general to get all contents from this location. This make 
recursive patching same way it done for directories impossible. 

If I have patch A declared as required by patch B and patch A is not present in 
specified location because some higher revision of it is obsoleted by some 
patch it is absolutely impossible to find this out having just name of required 
patch.

If I check location - there is no A there, it is only metadata inside some 
patch has information that A was actually obsoleted, but to get it I need to 
know that patch name and I can not check all patches from this location because 
it is webserver with directory access possible closed or not supported.

The way to resolve it is to put all dependency data in one place so patchadd 
will get it from there and analyze it to trace down dependency - manifest file 
located on webserver. Format of patch records this file is exactly same as 
format of patchadd records in pkginfo plus list of packages affected by this 
patch.

To make recursive patching works over http manifest file should be posted on 
webserver in the same directory where all JAR patches located and them patchadd 
will first read this file to understand what patchbase is.

Thanks, Vassili.
 
 
This message posted from opensolaris.org

Reply via email to