wiki:control-panel/hacking/directories

Version 3 (modified by Ben Dean-Kawamura, 12 years ago) ( diff )

--

Directory structure

  • node: contains code necessary for a node
    • node/sbin: scripts (e.g. red-node-update, copy-data-to-new-host, red-auto-responder)
    • node/share/src/modules: one file for every item service (e.g. class.red_item_user_account_node_unix.inc.php, class.red_item_list_node_mailman.inc.php)
    • node/etc/cron.d: files intended to be installed in /etc/cron.d on every node
    • node/etc/red: configuration files, one for the entire node (e.g. red_node.conf) and one for each service that has configuration options (e.g. red_mysql.conf.sample to designate the path the .my.cnf file which contains login info for this MySQL server or red_web_conf.apache2.conf.sample which designates whether the server is running mod_php or fcgid)
  • ui: contains code necessary for running on the UI machine
    • ui/www: code intended to be directly accessible to the web server
    • ui/sbin: command line tools such as red-cli, red-test, transfer-red-items-to-new-host, etc.
    • ui/share/email/en_MX and ui/share/email/en_US: contains templates for sending email to users.
    • ui/share/src: contains files used by all user interfaces (e.g. class.red_auth.inc.php, class.red_authz.inc.php, functions.inc.php, class.red_api.inc.php, web.inc.php, class.red_collector.inc.php)
    • ui/share/src/modules: one file for every item service (e.g. class.red_item_user_account_ui.inc.php, class.red_item_list_ui.inc.php)
    • ui/share/src/web: helper classes used only in the web interface
    • ui/share/ihtml: html templates used only in the web interface
    • ui/share/tests: test definitions used by red-test command
    • ui/etc: configuration file shared by all user interfaces
  • common: contains code shared by both nodes and the ui
    • common/share/src: contains parent classes (e.g. class.red_db.inc.php, class.red_ado.inc.php, class.red_item.inc.php, red.utils.inc.php, red.lang.utils.inc.php)
    • common/share/src/modules: contains one file for every item service (e.g. class.red_item_user_account.inc.php, class.red_item_list.inc.php)
    • common/locale: gettext translation file
Note: See TracWiki for help on using the wiki.