Thanks Frank, I gonna add this ;)
Regards JB On 05/13/2013 02:00 PM, Frank Lyaruu wrote:
I think the threads are getting mixed up ;-) I've created this feature about listing all the versions of features: https://issues.apache.org/jira/browse/KARAF-2313 On Mon, May 13, 2013 at 1:47 PM, Jean-Baptiste Onofré <[email protected] <mailto:[email protected]>> wrote: features:list |grep -i spring ;) On 05/13/2013 01:25 PM, Achim Nierbeck wrote: JB, not about the features:update but about the new requirement to list all versions available :-) regards, Achim 2013/5/13 Jean-Baptiste Onofré <[email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>>> AFAIR, we already have a Jira about features:update "alias". Regards JB On 05/13/2013 01:00 PM, Achim Nierbeck wrote: could you open a jira issue for your feature request for the shell, that it lists all versions available. thanks, Achim 2013/5/13 Frank Lyaruu <[email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>> <mailto:[email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>>>> Thanks for the replies, guys. I did some more research, and I have figured out some improvements over my last workflow: I was under the impression that Karaf did not support multiple versions of the same feature, forcing me to uninstall + remove the old repository first. My biggest concern with that was that I needed to /know/ which features would change. As it turns out, it's more of a Karaf shell problem. I can add the new repo first, but when I do a feature:list I will see only the latest version, and it will show it as uninstalled. The previous installed feature is completely hidden. If I do feature:uninstall + feature:install it does an upgrade to the latest version. So it works, but in the shell I'm kind of flying blind. The webconsole works better than the command line: If I add the new repository first, as expected the webconsole shows both the new and the old features. From there I can see the different versions, uninstall the old, install the new version and finally remove the old repo. A feature update button would be nice but that is just convenience. So all and all: A feature:update would be nice as a convenience, I think it would make sense if feature:list would show all versions of the features, like the feature tab in the web console does, that would ease most of my pain. regards, Frank On Sun, May 12, 2013 at 9:26 PM, Jean-Baptiste Onofré <[email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>> <mailto:[email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>>>> wrote: Hi guys, Currently, we have to distinguish features and features repositories. For features repositories, you have refresh-url (or add-url again) that reload a features XML descriptor. The update of a feature is more tricky. Now, the update is features uninstall/install. The point is that features update is not so simple, especially about transitive features. If it would be so simple, features update would exist since a long time. I remember a lot of discussions with Guillaume about features update. Basically, we can provide feature:update as an alias to feature:uninstall/features:______install (it's a first step). A largely more complex logic should be implemented if we want to talk about "real" features update. Regards JB On 05/12/2013 06:13 PM, Christian Schneider wrote: 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 -- Jean-Baptiste Onofré [email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>> <mailto:[email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>>> http://blog.nanthrax.net Talend - http://www.talend.com -- Apache Karaf <http://karaf.apache.org/> Committer & PMC OPS4J Pax Web <http://wiki.ops4j.org/____display/paxweb/Pax+Web/ <http://wiki.ops4j.org/__display/paxweb/Pax+Web/> <http://wiki.ops4j.org/__display/paxweb/Pax+Web/ <http://wiki.ops4j.org/display/paxweb/Pax+Web/>>> Committer & Project Lead OPS4J Pax for Vaadin <http://team.ops4j.org/wiki/____display/PAXVAADIN/Home <http://team.ops4j.org/wiki/__display/PAXVAADIN/Home> <http://team.ops4j.org/wiki/__display/PAXVAADIN/Home <http://team.ops4j.org/wiki/display/PAXVAADIN/Home>>> Commiter & Project Lead blog <http://notizblog.nierbeck.de/____ <http://notizblog.nierbeck.de/__>> -- Jean-Baptiste Onofré [email protected] <mailto:[email protected]> <mailto:[email protected] <mailto:[email protected]>> http://blog.nanthrax.net Talend - http://www.talend.com -- Apache Karaf <http://karaf.apache.org/> Committer & PMC OPS4J Pax Web <http://wiki.ops4j.org/__display/paxweb/Pax+Web/ <http://wiki.ops4j.org/display/paxweb/Pax+Web/>> Committer & Project Lead OPS4J Pax for Vaadin <http://team.ops4j.org/wiki/__display/PAXVAADIN/Home <http://team.ops4j.org/wiki/display/PAXVAADIN/Home>> Commiter & Project Lead blog <http://notizblog.nierbeck.de/__> -- Jean-Baptiste Onofré [email protected] <mailto:[email protected]> http://blog.nanthrax.net Talend - http://www.talend.com
-- Jean-Baptiste Onofré [email protected] http://blog.nanthrax.net Talend - http://www.talend.com
