I apologize in advance for merely adding to the numerous posts already written on this subject, but the lack of this feature would be a real show-stopper for me as far as dm Server 2.0.0 is concerned. In short, my scenario is something like this. I have a .plan containing a few dozen bundles that make up a specific application. For this post, I'll just use a simplified example test.plan:
Test.plan will start up for the first time with no trouble. The problem arises when I need to push out com.foo.beta-1.0.1, for example. I can drop beta-1.0.1 into repository/usr and then use the dm Server ssh console to install beta-1.0.1 and uninstall beta-1.0.0. Down the road, when I need to update test.plan, beta-1.0.1 is left in place since (I'm assuming) the bundle was in no way associated with test.plan. Test.plan will then successfully start alpha-1.0.0, see the newer beta-1.0.1 in the repository, try to install it, and then bail because beta-1.0.1 is already installed:
In short, is there ANY way to update an individual bundle within a .plan without having to restart the entire .plan?
<?xml version="1.0" encoding="UTF-8"?> <plan name="test.plan" version="1.0.0" scoped="false" atomic="false" xmlns="http://www.springsource.org/schema/dm-server/plan" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springsource.org/schema/dm-server/plan http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd"> <artifact type="bundle" name="com.foo.alpha" version="[1.0.0, 2.0.0)"/> <artifact type="bundle" name="com.foo.beta" version="[1.0.0, 2.0.0)"/> </plan>
Cannot install bundle 'com.foo.beta' version '1.0.1' as it was installed when bundle 'com.foo.beta' version '1.0.1' was installed.