[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[p2-dev] Use p2 to check for updates.

Here is what we wish to do:

- We have an installation of Eclipse at /dest.
- Installed there we have for example the IU org.eclipse.sdk.feature.group installed from the integration builds repository http://download.eclipse.org/eclipse/updates/3.8-I-builds.
- Now we want to check on a daily basis if there is a new version of the IU available and if so, update it.
(similiar to the Help -> Check for Updates in the Eclipse UI).
- This has to happen on command line level as we want to include this in a batch job.
- Further we only want to download changes from eclipse.org(not the whole drops every day). Because at first we tried to do an -uninstallIU and then in a 2nd command -installIU. But this will produce too much network overhead in my opinion.

- For now I tried to use the p2 director the following way:
eclipse -application org.eclipse.equinox.p2.director -vm /opt/java/linux_64/jdk1.6.0_21/bin -nosplash -consoleLog -purgeHistory -repository http://download.eclipse.org/eclipse/updates/3.8-I-builds/ -uninstallIU org.eclipse.sdk.feature.group -installIU org.eclipse.sdk.feature.group -destination /tmp/kitsmmaier/softice/releng/releases/softice/dest -bundlePool /tmp/kitsmmaier/softice/releng/releases/softice/dest -profileProperties org.eclipse.update.install.features=true -roaming -profile SDKProfile.win32.x86_64 -p2.os win32 -p2.arch x86_64 -p2.ws win32

The command does exactly what we want if there really is an update (say from one Integration build to another). Old files get uninstalled, the new one get installed and what stays the same is untouched.
But if nothing changes in the repository only the -uninstallIU operation gets executed. And everything is removed.

Is this workflow somehow supported on commandline?

Kind Regards