Not sure I fully understand your point:
1. Instead of <configfile/>, you can use <config/> in a feature. Then,
the cfg file will be created based on the <config/> content.
2. What you describe is basically a KAR that embed the cfg file with the
features repo.
Regards
JB
On 02/26/2017 05:15 PM, JT wrote:
Hi Achim,
Let me try and explain myself.
Currently I create a 'feature' XML file for my bundle using the
karaf-maven-plugin. By default this will create a features.xml file
without the need for me to create an input features.xml file to the
plugin i.e. everything is done for me automatically. The relevant part
of the POM is:
<id>generate</id>
<phase>generate-resources</phase>
<goals>
<goal>features-generate-descriptor</goal>
</goals>
<configuration>
<outputFile>target/features.xml</outputFile>
<includeProjectArtifact>true</includeProjectArtifact>
</configuration>
Now I want to include a <configfile> entry in the feature.xml. As far as
I can tell, I have to create an input feature file which contains the
<configfile> entry:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0"
name="grid-layout">
<feature name="${project.artifactId}" version="${pom.version}">
<configfile finalname="etc/com.example.gridlayout.cfg"
mvn:${project.groupId}/${project.artifactId}/${pom.version}/cfg/config</configfile>
</feature>
</features>
And then modify the plugin configuration to use this file as its feature
file input to which it will append all other entries:
<configuration>
<inputFile>src/main/resources/feature.xml</inputFile>
<outputFile>target/features.xml</outputFile>
<includeProjectArtifact>true</includeProjectArtifact>
</configuration>
If it's not currently possible, I was thinking it might be better if the
karaf tooling plugin could be modified to accept configuration
properties to allow a <configfile> property to be included in the
features file but without having to create an input feature XML e.g.
<configuration>
<includeConfigFile>true</includeConfigFile>
<configFileMavenCoordinates>mvn:${project.groupId}/${project.artifactId}/${pom.version}/cfg/config</configFileMavenCoordinates>
<configfilefinalName>etc/com.example.gridlayout.cfg</configFinalName>
</configuration>
I started to take a look the the GenerateDescriptorMojo and realised it
might not be as straight-forward as the above as multiple config files
can potentially be specified in a feature XML file. Do you think this is
feasible? I'd be willing to try and get this to work and submit a PR.
Kerry
On 26/02/17 15:41, Achim Nierbeck wrote:
Hi Kerry,
I'm not sure I follow the "template" logic here.
with the <configfile> property you can add any kind of configuration
file.
One Use-Case for example is to place the needed jetty.xml file along
the installation of the pax-web feature.
So I'm not sure I see something missing at this point, so please could
you elaborate a bit more on this point, about what you are missing
here :-)
regards, Achim
2017-02-26 10:08 GMT+01:00 JT <karaf-u...@avionicengineers.com
<mailto:karaf-u...@avionicengineers.com>>:
Hi JB,
Thanks for the update. Good to know you are adding that functionality.
One other thing I wondered about. If there is a need to add a
configuration file as part of a feature, currently the only way to
do this is to make a 'template' feature file including the
<configfile> property. It would be nice if rather than creating a
template, the config file to be included could be specified in the
karaf tooling plugin. Would that be feasible? I don't require that
myself right now but would be willing to take a look and submit a
pull-request if I come up with a solution.
Kerry
On 26/02/17 08:47, Jean-Baptiste Onofré wrote:
Hi Kerry,
you can install a cfg file dropping in the etc folder.
For a command, I created a Jira some weeks ago about a
config:install command. It's already possible using tac|
"command" but not obvious.
config:install command (and MBean) will be available in 4.0.9
and 4.1.1. You will be able to do:
config:install mvn:groupId/artifactId/version/cfg
Regards
JB
On 02/26/2017 08:56 AM, JT wrote:
Hi All,
I've seen how I can deploy a config file as part of a
Karaf 'feature'
using Christian's tutorial
(http://www.liquid-reality.de/display/liquid/2011/09/23/Karaf+Tutorial+Part+2+-+Using+the+Configuration+Admin+Service?src=contextnav
<http://www.liquid-reality.de/display/liquid/2011/09/23/Karaf+Tutorial+Part+2+-+Using+the+Configuration+Admin+Service?src=contextnav>).
Is it possible to deploy a config file without the need to
include in a
features file? i.e. I would like to install it standalone
with an
install command such as 'install
mvn:<maven-coordinates>/cfg/config'
many thanks
Kerry
--
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/>
Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>
Software Architect / Project Manager / Scrum Master
--
Jean-Baptiste Onofré
jbono...@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com