[prev in list] [next in list] [prev in thread] [next in thread] 

List:       geronimo-dev
Subject:    Re: Geronimo directory structure & permissions
From:       Russell E Glaue <rglaue () cait ! org>
Date:       2011-09-28 21:37:54
Message-ID: 4E8393B2.30304 () cait ! org
[Download RAW message or body]

Jarek,
I appreciate this discussion was started.
I am working through multiple-instance support for Geronimo, and it seems the
code is not consistent in using org.apache.geronimo.home.dir (geronimoHome) vs
org.apache.geronio.server.dir (geronimoBase).

The correct use of the two is hinted at in these two source files:
1.
trunk/framework/modules/geronimo-main/src/main/java/org/apache/geronimo/main/Utils.java
 - getGeronimoHome()
 - getGeronimoBase()
2.
trunk/framework/configs/karaf-framework/src/main/distribution/text/etc/system.properties
 - in regards to the intended purposes of karaf.home vs karaf.base (read the
comments)
 - use of org.apache.geronimo.home.dir vs org.apache.geronimo.server.dir is similar.
 - org.apache.geronimo.server.dir is same as the now dead
org.apache.geronimo.base.dir (a.k.a GERONIMO_BASE which I probably helped kill 3
years ago) which was not always being used correctly.

If the directories are read-only, they should be referenced from the system
property org.apache.geronimo.home.dir
  - bin
  - jsr88
  - schema
  - lib

If the directories are read-write, they should be referenced from the system
property org.apache.geronimo.server.dir (a.k.a. geronimoBase)
See:
trunk/framework/modules/geronimo-main/src/main/java/org/apache/geronimo/main/Utils.java
  - deploy
  - hotbundles
  - etc
  - var

As you hinted, the repository/ directory could go in either right now. But
because G3 cannot share repositories, it needs to be referenced under
org.apache.geronimo.server.dir . But Geronimo does not currently allow for that:
GERONIMO-6175 .


I have been combing through the code, and the use of either is not entirely
consistent. And in several locations geronimo code is redundantly trying to
figure out the server base, otherwise the code just prepends the
org.apache.geronimo.home.dir system property to whatever it is looking for
(which is not always correct).

With the addition of karaf in G3.0, and its similar needed config, it might
appear there could be some confusion in the code as to what should be under
karaf.home vs karaf.base system properties.


If we want to share multiple instances of Geronimo (and I do) this needs to be
straightened out. I'd like to see something like getGeronimoHome() and
getGeronimoBase() from the package org.apache.geronimo.main.Utils used in every
instance the server base needs to be known.

And we should make a formal decision as to what directories should be available
under `base` vs `home`.


-RG



On 09/20/2011 12:55 PM, Jarek Gawor wrote:
> Hi,
> 
> In Geronimo binary install which directories do we consider read-only
> vs. write/read? The idea is that the read-only directories could be
> shared among multiple installations to save some space and reduce
> maintenance.
> 
> Here's what I identified so far:
> 
> read-only:
>  - bin
>  - jsr88
>  - schema
>  - lib
> 
> read/write:
>  - deploy
>  - hotbundles
>  - etc
>  - var
> 
> The repository/ directory is a little weird because parts of it could
> be considered read-only and some write. I wonder if maybe we should
> have separate repository directories one for Geronimo bundles and
> another one for applications.
> 
> Thanks,
> Jarek
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic