Details
-
Feature Request
-
Resolution: Won't Do
-
Major
-
None
-
None
-
None
-
None
Description
We've moved all of fabric8 over to SCR and used the felix annotations to generate OSGI MetaType XML files now for every bundle in fabric8/Fuse 6.1. We're doing the same with Karaf too in 4.0.
In the Fuse build we could easily generate a single bundle with all the MetaType files for all known bundles in Fuse (fabric8 / karaf / camel etc).
Given this list of PIDs > XML files, we should be able to do a smarter Properties file editor plugin that can open any properties file anywhere; if the property file is named $PID.properties or $PID*.properties where $PID is one of the known Fuse/fabric8 PIDs that we have an OSGi MetaType XML file for; then also show a Form with all the known fields, labels, description and the various data validation (e.g. int versus boolean versus text; enum values, mandatory / cardinality etc).
i.e. this is an OSGi config admin UI, but it edits properties files and doesn't need a fabric8 container or anything - we just use the statically known at release time, generated OSGI MetaType XML files.
Hopefully we can reuse eclipse code; as its already probably got an OSGi MetaType aware config admin editor; its more just allowing that to be used on vanilla properties files - but using the naming convention to detect Fuse / fabric8 / karaf bundle properties files
e.g. here's the profiles that are defined by default in fabric8/fuse
https://github.com/jstrachan/fabric8/tree/micro-service/fabric/fabric8-karaf/src/main/resources/distro/fabric/import/fabric/profiles
in a users installation of fabric8/fuse they are in the fabric/import folder. So it'd be nice to be able to open that folder in eclipse and edit the properties files and get the benefit of OSGi config admin.
Similarly when using the fabric8 maven plugin; you often have these properties files in the src/main/fabric8 directory:
http://fabric8.io/#/site/book/doc/index.md?chapter=mavenPlugin_md
e.g. if you want to deploy a profile and customise things you add a $PID.properties file into your maven project at src/main/fabric8 and those files are added to the profile.
So it'd be nice if you edited those files; you got a nice config admin UI