I typically just use a normal feature file to describe my application to
be deployed.
At runtime I log into the console, add the feature file and install the
needed features. There is no need to
add the features to the boot features as karaf will remember the running
bundles anyway.
An update is a little complicated at the moment as you have to uninstall
the features, uninstall the feature
file and then do the above. We are already working on better ways to do
this though.
Basically the idea is to have an update command where you just give the
new version and karaf does the update.
You can install default configs and config files with your feature and
then configure them using the files or the config admin service (jmx,
webconsole, ..).
For DB and JMS it is a good practice to use services for the DataSource
or ConnectionFactory. See
http://www.liquid-reality.de/x/LYBk . This way you can really let the
admins do these configs. Your app only knows about a named DataSource.
Christian
Am 12.06.2012 14:56, schrieb James Carman:
I'm using:
OSGi (blueprint-configured)
Camel
CXF
OpenJPA
I am using the features-maven-plugin provided by karaf to generate my
features.xml file. I guess I can do this at any level of granularity
by specifying dependencies in the pom.xml file.
Do you typically set these things up as "boot features" or do you just
use the karaf console to install the features needed at runtime. If
you use the console, how do you script your deployments? Do you just
put a bunch of karaf commands in a file and say "run this"? If you
use boot features, you can shutdown SMX, change the version of your
feature repository, blast the data directory, and restart (which is
what we're doing right now).
What do folks typically do with bundle-specific configuration files
that they need in the etc directory? There are certain properties
that we just don't know until we get to the environment (JDBC urls,
usernames, passwords, etc), so we obviously can't default them. Do
the "middleware guys" just manage those?
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
Talend Application Integration Division http://www.talend.com