Self-contained directory convention

1 view
Skip to first unread message

Anthony Shortland

unread,
Jun 20, 2007, 12:12:13 PM6/20/07
to contr...@googlegroups.com
Both Workbench and Antdepo (and the 3rd-party software they rely on) are eminently relocatable. However, the following layout is the “best-practice” convention that we’ve adopted (best viewed using a fixed-width font) for default installation:

CTIER_ROOT                                  Defaults to “$HOME/ctier” on Unix/Linux and “C:\ctier” on Windows, but is relocatable
    antdepo                                 ANTDEPO_BASE
    demo                                    Directory of demonstration applications
        headlines                           The Headlines demonstration application
            httpd                           Apache web server configuration and log directory
            mysql                           MySQL data, configuration and log directory
            pkgs                            Software Installations to support the Headlines demonstration application
                httpd-2.2.4                 Apache web server installation directory
                jdk1.5.0_11                 JAVA_HOME
                mysql-5.0.41-linux-i686     MYSQL_HOME
                apache-tomcat-5.5.23        CATALINA_HOME
            tomcat                          CATALINA_BASE
    pkgs                                    Software installations to support the ControlTier installation
        ControlTier-3.0rc3                  Staging directory for the ControlTier installer
        antdepo-1.2.12                      ANTDEPO_HOME
        apache-forrest-0.7                  FORREST_HOME
        apache-tomcat-4.1.36                CATALINA_HOME for the ControlTier installation
        graphviz-2.8                        GRAPHVIZ_HOME
        j2sdk1.4.2_13                       JAVA_HOME for the ControlTier installation
    src                                     ControlTier source code
        elements                            Elements solution library module source
        headlines                           Headlines custom library module source
        ...
    workbench                               CATALINA_BASE for the ControlTier installation

Some benefits of this layout are:

  • All package dependencies (beyond the OS installation) are contained within the ControlTier root
  • The layout consistently separates package software installs from runtime files (“HOME vs BASE”) facilitating easier upgrade
  • There’s room for multiple demos to be staged (e.g. PioneerCycling), and the demo directory can be omitted completely to save space.
  • Appropriate parts of the hierarchy can be “culled” to produce a minimum client-only install with the same basic structure (e.g. no Tomcat, Forrest or Graphviz)
  • There’s a single well-known location for (ProjectBuilder module and documentation) source code.

Note that setting up a distinct CATALINA_BASE under Tomcat 4.1 requires doing what I call the “split”:

  • After unpacking the Tomcat distribution into $CATALINA_HOME, move or copy the “conf”, “shared”, “temp”, “webapps” and work directories to $CATALINA_BASE
  • Edit $CATALINA_BASE/webapps/admin.xml and $CATALINA_BASE/webapps/manager.xml to point the docBase to $CATALINA_HOME/server/webapps

Anthony.
Reply all
Reply to author
Forward
0 new messages