X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=torrus%2Fdoc%2Fdevdoc%2Ftorrus_roadmap.pod;fp=torrus%2Fdoc%2Fdevdoc%2Ftorrus_roadmap.pod;h=85698f2c82a9d7af15e7f6bd7c59f3d6600ad588;hp=0000000000000000000000000000000000000000;hb=74e058c8a010ef6feb539248a550d0bb169c1e94;hpb=35359a73152b3d7a9ad5e3d37faf81f6fedb76e8 diff --git a/torrus/doc/devdoc/torrus_roadmap.pod b/torrus/doc/devdoc/torrus_roadmap.pod new file mode 100644 index 000000000..85698f2c8 --- /dev/null +++ b/torrus/doc/devdoc/torrus_roadmap.pod @@ -0,0 +1,249 @@ +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. + +# $Id: torrus_roadmap.pod,v 1.1 2010-12-27 00:04:36 ivan Exp $ +# Stanislav Sinyagin +# + +=head1 RRFW to Torrus transition roadmap + +=head2 Introduction + +The name "RRFW" appeared to be quite difficult to remember and to pronounce. +There has been a call for a new name, and recently a good suggestion came +from Francois Mikus: + + --- Francois Mikus wrote: + > Here is my humble flash, which I think may be appropriate. Which I will + > explain why below... + > + > The name I would suggest is; + > + > Torrus + > + > Has a mythical sounding name without the actual history. Has a resonance + > with Torrent, where rrfw deals with a torrent of information. A google + > search comes up with near nothing, and nothing commercial. Has a + > resonance with Taurus, which is mythical, astrological and has an + > underlying strength connotation. + > + > Anyway, this is the best I could think of. And it provides an opening to + > have a semi-mythical/comic style yet serious mascot. + > + > You have a LOT of documentation. web pages, code, etc.. But marketing is + > the way to win hearts and minds, create a following and get rabid + > developpers on-board! + +Thus the project will be renamed to Torrus, and few other structural changes +will accompany the transition. + +=head2 Releases roadmap + +Version 0.1.8 will be the last of RRFW, unless some urgencies arise. + +The first Torrus release will be 1.0.0. + + + +=head2 Multiple XML cofiguration directories + +During XML compilation, the datasource configuration files will be searched in +multiple directories. The list of directories and the search sequence +will be configurable. This will allow not to mix the distribution XML files +and the ones created locally. + +=head2 Separated directories for templates and configuration + +Perl configuration files and HTML templates will also be separated into +different directories, so that user-editable files don't mix with the +ones from distribution. + +=head2 Commandline launcher + +A small shell script will be installed as C, +and it will pass all arguments to appropriate torrus executables. For example, + + torrus compile --tree=main + +will execute C torrus utility with the argument C<--tree=main>. + + + +=head2 New directory hierarchy + +Filesystem Hierarchy Standard Ehttp://www.pathname.com/fhs/E +proposes to put the software add-on packages into C directory +and user services data, such as database contents or RRD files, in +C directory. + +However, FreeBSD and some other systems are not FHS-compliant, and require +to install all additional software into C hierarchy. + +We propose that Torrus distribution will support three different directory +layouts, and the system administrator will decide the most suitable one: + +=over 4 + +=item 1 + +Default layout based in C; + +=item 2 + +FHS compliant layout, set by running C<./configure_fhs> instead +of C<./configure>; + +=item 3 + +Custom layout, tunable with standard options and variables in C<./configure>. + +=back + + +=head3 Default layout + +Although many systems like FreeBSD discourage creation of new +package-specific subdirectories in /usr/local, we find it quite a common +practice, and quite convenient for keeping the files together. + + /usr/local/torrus/ Home directory for Torrus distribution files + | + +- conf_defaults/ torrus-config.pl and others + | + +- bin/ Command-line executables + | + +- doc/ POD and TXT documentation files + | + +- examples/ Miscelaneous example files + | + +- perllib/ Perl libraries + | + +- plugins/ Plugins configuration + | + +- scripts/ Scripts + | + +- sup/ Supplementary files, DTDs, MIBs, color schemas, + | Web plain files + | + +- templates/ Renderer output templates + | + +- xmlconfig/ Distrubution XML files + + /usr/local/etc/torrus/ Site configurable files + | + +- conf/ Place for torrus-siteconfig.pl and other siteconfigs + | + +- discovery/ Devdiscover input files + | + +- templates/ User-defined Renderer output templates + | + +- xmlconfig/ User XML configuration files + + /usr/local/man/ Place for man pages. All articles will have the + prefix C + + /var/log/torrus/ Daemon logfiles + + /var/run/torrus/ Daemon PID files + + /var/torrus/cache/ Renderer cache + + /var/torrus/db/ Configuration databases + + /var/torrus/session_data/ Web interface session files + + /srv/torrus/collector_rrd/ Default directory for collector + generated RRD files + + +=head3 FHS compliant layout + + /opt/torrus/ Home directory for Torrus distribution files + | + +- conf_defaults/ torrus-config.pl and others + | + +- bin/ Command-line executables + | + +- doc/ POD and TXT documentation files + | + +- examples/ Miscelaneous example files + | + +- perllib/ Perl libraries + | + +- plugins/ Plugins configuration + | + +- scripts/ Scripts + | + +- sup/ Supplementary files, DTDs, MIBs, color schemas + | + +- templates/ Renderer output templates + | + +- xmlconfig/ Distrubution XML files + + /etc/opt/torrus/ Site configurable files + | + +- conf/ Place for torrus-siteconfig.pl and other siteconfigs + | + +- discovery/ Devdiscover input files + | + +- xmlconfig/ User XML configuration files + + /opt/torrus/share/man/ Place for man pages. All articles will have the + prefix C + + /var/log/torrus/ Daemon logfiles + + /var/run/torrus/ Daemon PID files + + /var/torrus/cache/ Renderer cache + + /var/torrus/session_data/ Web interface session files + + /srv/torrus/db/ Configuration databases + + /srv/torrus/collector_rrd/ Default directory for collector + generated RRD files + + +=head2 New plugins design + +Unlike RRFW, the plugins in Torrus will be installed independently. +This will allow to easily add new plugins to an existing installation. + +The Torrus installer stores all important variable settings in a special +file, F. Then the plugin installer is able +to access the settings without accessing the Torrus distribution +directory. + +There is a helper utility, C, which applies all +I variables to the plugin configuration utility. +It follows then the standard installation way: + + ./configure && make && make install + +Thus the OS-dependent package installators may follow the standard +configuration procedure, while those who manually install the software, +will use the helper. + +There are two special directories: F +and F. Plugins are +allowed to add Perl files there. They will be automatically I'd by +F and F. + + + +=head2 Authors + +Copyright (c) 2004 Stanislav Sinyagin