Currently there is no such update functionality in karaf. The list of commands you supplied is the current best practice when updating features.

What I could imagine is a command like.

feature:update <repo-name> <new-version>

It should update all currently installed features from the repo to the new version.

As long as the new feature repo has all the features that are currently installed such a command should be doable. Some problems arise for special cases: - Like the new feature has changed feature dependencies that require other feature updates
- Some features are deleted or added that are needed
- Config files have changed in an incompatible way.

I think these things are the reason why it has not been implemented. We could try to implement the simple case first of course. I think it would be a good thing for 3.1.

Christian

Am 12.05.2013 12:52, schrieb Frank Lyaruu:
Hello people of Karaf,

I'm looking for a way to update Karaf features in my application.

We have an application, of about 140 bundles, spread over about 10 Karaf features, currently on Karaf 3.0.0 RC1.

For example, when I release a new bundle version, I'd like to update our servers to use that new version, with a minimum of downtime. What I do now, is:
1) Release the bundle to a Maven repository
2) Update the features.xml file, update the feature version and deploy it to Maven (with a new version number)
3) Uninstall the feature from the servers
4) Remove the old mvn: feature repo from the server instance
5) Add the new mvn: feature repo to the server instance
6) Install the new feature

Mind you, this works fine, but it seems more complicated than necessary, and it 'creates more waves' in the application as the whole feature has to be uninstalled first.

Is there a way to 'update' a repo (determine the features that have been updated, and for each feature determine the bundles that have changed, and update just those)

Is anything like this possible? Or a completely different way to do this? If not, and you think this makes sense, I'm willing to help out if someone can point me in the right direction.

regards, Frank


--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
Talend Application Integration Division http://www.talend.com

Reply via email to