Aaron Mulder wrote:

        I have a change ready that lets us mark certain GBean attributes
as "manageable", meaning that we expect the user be interested in
potentially overriding that value.  Then there's a service that tracks
values for some or all of these manageable attributes, currently storing
them in an XML file.  So the end result is there's a plain text file
(currently var/config/config.xml) that looks like the sample below.  The
idea is that the user could change any values in there by hand if they
like, particularly for network ports that would otherwise conflict with
something running on their machine.

        I'm looking for feedback on this.

I think this is a good idea. It's much easier to see and update the various ports in a single config file rather than updating several config files. What would also help is a way to tell the server which "option" (i.e, a common config file or individual config files) is to be used when bringing it up. If I may say so, Jboss has a similar feature (service-bindings.xml) to configure all ports in one place and
one can define multiple such sets as well.

On a related note, we at SpikeSource have developed a common configuration management tool to manage the configurations of installed components. This tool also manages configuration consistency between dependent components. For example, when you change the database port, it automatically updates all the places where (e.g, a datasource definition in the J2ee server) this port is used. We can easily plugin Geronimo configuration management as well, into this tool. This tool is installed by default when you download and install corestack
from our website (and is free)
You can read more info about this tool at
http://www.spikesource.com/docs/cs_1.6.0-linux/doc/configmgr/configmgr_quickstart_guide.html

Sastry

David J seemed to largely approve but wondered whether it would be better to store separate config files for each Configuration. I prefer having one unified config file because I think it's clearer and easier to edit and cust down on config file sprawl. Any comments would be appreciated.

Thanks,
        Aaron

<attributes>
 <configuration name="org/apache/geronimo/Server">
   <gbean name="JettyWebConnector">
     <attribute name="host">localhost</attribute>
     <attribute name="port">8080</attribute>
     <attribute name="redirectPort">8443</attribute>
   </gbean>
   <gbean name="JettySSLConnector">
     <attribute name="host">localhost</attribute>
     <attribute name="port">8443</attribute>
   </gbean>
   <gbean name="TomcatWebConnector">
     <attribute name="host">localhost</attribute>
     <attribute name="port">8080</attribute>
     <attribute name="redirectPort">8443</attribute>
   </gbean>
   <gbean name="TomcatAJPConnector">
     <attribute name="host">localhost</attribute>
     <attribute name="port">8009</attribute>
     <attribute name="redirectPort">8443</attribute>
   </gbean>
   <gbean name="JettySSLConnector">
     <attribute name="host">localhost</attribute>
     <attribute name="port">8443</attribute>
   </gbean>
   <gbean name="openejb:type=NetworkService,name=EJB">
     <attribute name="host">localhost</attribute>
     <attribute name="port">4201</attribute>
   </gbean>
 </configuration>
 <configuration name="org/apache/geronimo/ActiveMQServer">
   <gbean name="ActiveMQ.tcp.localhost.61616">
     <attribute name="host">localhost</attribute>
     <attribute name="port">61616</attribute>
   </gbean>
 </configuration>
 <configuration name="org/apache/geronimo/SystemDatabase">
   <gbean name="DerbyNetwork">
     <attribute name="host">localhost</attribute>
     <attribute name="port">1527</attribute>
   </gbean>
 </configuration>
</attributes>

Note: while this sample deals with network settings, we can include any attributes in here.

Reply via email to