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 <[email protected]
<mailto:[email protected]>>:
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