Hello. Before my question I'm going to try to explain the context of my works...
I'm working on the redesign of projects (Camel routes + common services that are some kind of framework for about a hundred ESB modules) that currently relies on Red-Hat Fuse 6.3. On Fuse, the deployment unit is based on the fabric8 profile. Thus, our services or routes bundles are built as profiles, and our deployments playbook use the Jolokia API to deploy/update these bundles as installed profiles that are next assigned to Karaf containers in our clusters. Karaf containers pull the bundles code using from our artifacts repository. Parallely, bundles that need an external configuration have their properties installed by other roles of our playbooks that build them with values that depend on the target environment, using technical variables that come from the Ansible inventories, security data (passwords, keys, etc.) from a credentials manager, and other business variables that come from external files retrieved as configuration projects stored in Git. I plan to use Karaf features to replace the fabric8 profiles, and manage our bundles and their dependencies. Using features, I can also set configuration files with default values that can be installed in Karaf "etc" folder. My first tests work as expected on Karaf 4.4.x with a clustered configuration that uses Cellar. But default configuration files that are linked to the features in Nexus do not match our needs to build environment dependent properties as explained before. Finally, my question : what could be the best way to deploy or update configuration properties on Karaf clusters, scripting it in Ansible playbooks, and, if possible, using "standard" means and API like Jolokia ? Thanks for your help. Regards.
