Cellar is definitely on my list (I just ordered the book, btw ;-)). All my bundles are in Maven anyway (I use Maven coordinates from my feature files), and at the moment, so are my feature files. At some point though I need to interact with the Karaf nodes to tell them what should and shouldn't be installed, in a declarative way.
I provision nodes now using Salt, OpenStack and Salt Cloud. If I understand correctly, Cellar would not help here: Cellar can help 'distribute' features over the cluster, but I still need to have an entry point. Originally I used the boot-features config to point to a feature file and list the features that should be installed, but that requires a clean restart with every change, and that is a bit of a waste as the rest of the application is completely fine with incremental updates. So, taking a step back, what I need is a way to align Karaf with Salt. Possibly I could make a Salt module to connect to the Karaf Shell and uninstall / install features (stored in Maven) from there, but I'd prefer to skip that undertaking. On Tue, Aug 12, 2014 at 2:58 PM, Achim Nierbeck <[email protected]> wrote: > Hi Frank, > > did you take a look at Cellar, to me it seems like this is really what you > should be looking for. > As you try to provision a lot of bundles/features across your cluster. > I usually don't use the deploy folder for production, as a deployment with > Maven Artifacts is much simpler and easier. > Especially in combination with cellar. :) > > regards, Achim > > > > > 2014-08-12 14:51 GMT+02:00 Frank Lyaruu <[email protected]>: > > Hi JB and Achim, >> >> Yes, that is what I've been doing for the last years, and that works >> indeed fine. >> What I am trying to do now is provision and maintain Karaf nodes from a >> config manager (Salt) and for tools like that adding and removing files is >> by far the easiest way to go, so that is what I'm trying first. >> >> But I know now what is possible and what isn't, so I'll try to get >> creative on figuring out a way to keep the file system 'model' in sync with >> Karaf. >> >> Thanks all, Frank >> >> >> >> On Tue, Aug 12, 2014 at 2:07 PM, Jean-Baptiste Onofré <[email protected]> >> wrote: >> >>> If you talk about feature files, all dependencies should be in one >>> features. >>> >>> Generally speaking, it's better to use feature:repo-add/feature:install >>> than dropping the features XML in the deploy folder. >>> >>> >>> Regards >>> JB >>> >>> On 08/12/2014 01:44 PM, Frank Lyaruu wrote: >>> >>>> This also doesn't work consistently, it only works when it processes the >>>> 'my-app' feature last, right? >>>> >>>> If it processes it in this order: >>>> >>>> my-app-common1 - my-app - my-app-common2 >>>> >>>> The installation of my-app fails because it can't resolve >>>> my-app-common2, as it hasn't encountered that file yet. >>>> >>>> Or am I missing something? >>>> >>>> regards, Frank >>>> >>>> >>>> >>>> On Tue, Aug 12, 2014 at 11:21 AM, Jean-Baptiste Onofré <[email protected] >>>> <mailto:[email protected]>> wrote: >>>> >>>> Hi Frank, >>>> >>>> the easiest way is to do a feature defining the order: >>>> >>>> <feature name="my-app" version="1.0" install="auto"> >>>> <feature version="1.0">my-app-common1</__feature> >>>> <feature version="1.0">my-app-common2</__feature> >>>> </feature> >>>> >>>> Only my-app should be in auto install, and will install the >>>> transitive features in the correct order. >>>> >>>> Regards >>>> JB >>>> >>>> >>>> On 08/12/2014 11:12 AM, Frank Lyaruu wrote: >>>> >>>> Hi JB and others, >>>> >>>> I still have a problem here because Karaf tries to install >>>> features in a >>>> certain but undefined order. As the features I threw into the >>>> deploy >>>> folder have dependencies on one another it sometimes works but >>>> often fails. >>>> >>>> - Is there a flag to set to do a sort of 'delay': First >>>> discover all >>>> features, and then try to install them all? >>>> >>>> I don't really *need* the feature-dependencies to be in the >>>> feature, so >>>> it is an option for me to just remove those, but then I get >>>> another >>>> problem as a feature will uninstall again if it can't resolve >>>> all the >>>> bundles straight away. >>>> >>>> - Is there a way to have a feature install (and remain >>>> installed) if >>>> not all bundles in the feature resolve? (Similar to the 'atomic' >>>> flag in >>>> Eclipse Virgo plans) >>>> >>>> regards, Frank >>>> >>>> >>>> >>>> >>>> >>>> On Mon, Aug 11, 2014 at 5:37 PM, Frank Lyaruu <[email protected] >>>> <mailto:[email protected]> >>>> <mailto:[email protected] <mailto:[email protected]>>> wrote: >>>> >>>> That is exactly what I hoped to hear, thanks for the quick >>>> reply! >>>> >>>> regards, Frank >>>> >>>> >>>> On Mon, Aug 11, 2014 at 5:16 PM, Jean-Baptiste Onofré >>>> <[email protected] <mailto:[email protected]> >>>> <mailto:[email protected] <mailto:[email protected]>>> wrote: >>>> >>>> Hi Franck, >>>> >>>> you should be able to see the features repository in >>>> feature:repo-list. >>>> >>>> The installation of the features contained in the >>>> repository >>>> depends of the Features.DEFAULT_INSTALL_MODE flag (auto >>>> or not). >>>> If a feature is flagged as auto, it will be >>>> automatically >>>> installed, else not. >>>> >>>> For instance: >>>> >>>> <feature name="my" version="1.0-SNAPSHOT" >>>> install="auto">...</feature> >>>> >>>> So, check if your feature contains install="auto". >>>> >>>> The documentation should be updated: I create a Jira >>>> and do that. >>>> >>>> By the way, this flag should be used for the kar file >>>> too ;) >>>> I will create a Jira for that. >>>> >>>> Regards >>>> JB >>>> >>>> >>>> >>>> On 08/11/2014 04:54 PM, Frank Lyaruu wrote: >>>> >>>> Hi crowd, >>>> >>>> I'm trying to install a feature by dropping it >>>> into the >>>> deploy folder of >>>> a clean Karaf 3.0.1 installation. >>>> >>>> It doesn't seem to install it automatically, >>>> although the >>>> feature does >>>> show up in 'feature:list' and can be installed >>>> correctly with >>>> 'feature:install', so it definitely finds the file. >>>> >>>> The documentation seem to indicate that the feature >>>> should >>>> be installed >>>> immediately in this case: >>>> >>>> quote: >>>> >>>> You can "hot deploy" a features XML by dropping the >>>> file >>>> directly in the >>>> deploy folder. >>>> The features deployer handles the features XML >>>> files dropped >>>> into the >>>> deploy folder and automatically register and >>>> install all features described in the features XML. >>>> >>>> end quote >>>> >>>> This seems like a bug to me. Or should I add some >>>> configuration somewhere? >>>> >>>> thanks, Frank >>>> >>>> >>>> -- >>>> Jean-Baptiste Onofré >>>> [email protected] <mailto:[email protected]> >>>> <mailto:[email protected] <mailto:[email protected]>> >>>> >>>> >>>> http://blog.nanthrax.net >>>> Talend - http://www.talend.com >>>> >>>> >>>> >>>> >>>> -- >>>> 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 >>> >> >> > > > -- > > Apache Member > Apache Karaf <http://karaf.apache.org/> Committer & PMC > OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & > Project Lead > blog <http://notizblog.nierbeck.de/> > > Software Architect / Project Manager / Scrum Master > >
