Not sure if the script approach is good for the long run.

What we could do with it though is to provide a script in a magic location in each bundle. The shell could then dynamically add and remove the scripts as the bundles are started / stopped.
Does that make sense ?

For the long run I think we could have a service that provides this information. Kind of a command metadata service. A bundle could either offer such a service manually or it could be created by an extender from annotation data.
Such a solution could then also cover the plain karaf commands.

Christian

On 12.10.2016 17:57, Guillaume Nodet wrote:
I'm working on trying to nicely integrate gogo commands.
The new gogo-jline bundle has a very nice way to allow external
configuration for command completion. For example, one need to execute the
script at https://gist.github.com/gnodet/18de68d57fc959efb7f9e4766415ff5e
to add full completion to the Karaf shell once you have the scr bundle
installed (it always provides gogo commands).  Other examples are available
at
https://github.com/apache/felix/blob/trunk/gogo/jline/src/main/resources/gosh_profile

The question is : how to provide such a script.
One possibility would be to have a dedicated folder such as etc/scripts/
where all scripts would be loaded when a session is started. We could then
reference those files in features so that they are copied when features are
installed.
This would allow leveraging the <configfile> feature xml element.

Do you guys have better ideas ?



--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com

Reply via email to