[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[p2-dev] Overriding config.ini properties to dynamically select the Profile and bundles.info to load

Hi All,

I'm trying to implement multiple-profile support in our eclipse based system by pre-provisioning several P2 Profiles and dynamically select the relevant bundles.info and P2-Profile at startup.

I have modified the structure of our eclipse-based app as below to support multiple-profiles;

configuration
|--config.ini
|--ProfileA
|    |--org.eclipse.equinox.simpleconfigurator/bundles.info
|--ProfileB
|    |--org.eclipse.equinox.simpleconfigurator/bundles.info

p2
|--org.eclipse.equinox.p2.engine
|          |--profileRegistry
|                |--ProfileA.profile        
|                |--ProfileB.profile


If I manually edit the config.ini properties before startup like below I can load the bundles and profile relevant to ProfileA installation and everything works fine;
eclipse.p2.profile="">org.eclipse.equinox.simpleconfigurator.configUrl=file\ProfileA/org.eclipse.equinox.simpleconfigurator/bundles.info

 But when I try to automate this by overriding config.ini properties by passing system.properties like below it doesn't work and application doesn't startup;
eclipse.p2.profile="">org.eclipse.equinox.simpleconfigurator.configUrl=file\:${profile}/org.eclipse.equinox.simpleconfigurator/bundles.info

It seems by passing -Dprofile=ProfileA , the config.ini's values are not substituted by ProfileA.
Is it not possible to substitute config.ini properties by passing system properties like above?

Any insight on this will be really helpful.

Thanks,
Dileepa