Changes between Version 15 and Version 16 of MakeProject


Ignore:
Timestamp:
Jul 12, 2007, 4:37:54 PM (17 years ago)
Author:
Nicolas
Comment:

A few formatting changes; and added lots of links to other wiki pages (maybe too many; feel free to remove some if it seems too cluttered, but I think the more inter linking the better, that's what the WWW is about)

Legend:

Unmodified
Added
Removed
Modified
  • MakeProject

    v15 v16  
    1 = The make_project script =
     1= The `make_project` script =
    22
    3 The make_project script creates the server components of a BOINC project. To use it, [ServerIntro set up a BOINC server]. Then, for example, type:
     3The `make_project` script creates the server components of a BOINC project. To use it, [ServerIntro set up a BOINC server]. Then, for example, type:
    44{{{
    55cd BOINC_SOURCE/tools
    66make_project --test_app cplan
    77}}}
    8 This creates a project with master URL !http://HOSTNAME/cplan/ whose directory structure is rooted at $HOME/projects/cplan.
     8This creates a project with [ServerComponents#ThemasterURL master URL] `http://HOSTNAME/cplan/` whose directory structure is rooted at `$HOME/projects/cplan`.
    99
    10 More specifically, make_project does the following:
     10More specifically, `make_project` does the following:
    1111
    12     * Create the project directory and its subdirectories.
     12    * Create the [ServerDirs project directory and its subdirectories].
    1313    * Create the project's encryption keys if necessary. NOTE: before making the project visible to the public, you must move the code-signing private key to a highly secure (preferably non-networked) host, and delete it from the server host.
    14     * Create and initialize the MySQL database
    15     * Copy source and executable files
    16     * Generate the project's configuration file.
     14    * Create and initialize the [DataBase MySQL database].
     15    * Copy source and executable files.
     16    * Generate the project's [ProjectConfigFile configuration file].
    1717
    18 With the '''--test_app''' option (recommended) the project will have a test application (uppercase)
    19 and daemons to generate and handle work for this application.
     18With the '''--test_app''' option (recommended for the first time) the project will have a [ExampleApps test application] (uppercase) and daemons to generate and handle work for this application.
    2019This lets you quickly check that the project is working;
    21 you can remove the test application later by editing config.xml.
     20you can remove the test application later by editing [ProjectConfigFile config.xml].
     21{{{
     22#!comment Editing config.xml alone isn't enough to get rid of an application. Only the validator and assimilator are there. To remove the app itself, DB edits are needed. However, I'm not sure how to explain that to somebody who has just created a project and doesn't know too much yet.
     23}}}
    2224
    2325The following steps complete the project setup:
    2426
    25     * Insert PROJECT_NAME.http.conf into /etc/apache/httpd.conf (path varies), or Include it from that file.
    26     * Run crontab -e, and add an entry to run the project's cron script:
     27    * Insert `PROJECT_NAME.http.conf` into `/etc/apache/httpd.conf` (path varies), or [http://httpd.apache.org/docs/2.0/mod/core.html#include Include] it from that file.
     28    * Run `crontab -e`, and add an entry to run the project's cron script:
    2729{{{
    2830 0,5,10,15,20,25,30,35,40,45,50,55 * * * * PROJECT_HOME/bin/start --cron
    2931}}}
    30 (if cron cannot run 'start', try using a helper script to set PATH and PYTHONPATH)
    31    * Run bin/xadd and bin/update_versions in the project's home directory.
    32    * Run bin/start.
     32(if cron cannot run 'start', try using a helper script to set the `PATH` and `PYTHONPATH` environment variables)
     33   * Run [XaddTool bin/xadd] and [UpdateVersions bin/update_versions] in the project's home directory.
     34   * Run [StartTool bin/start].
    3335
    3436The script prints instructions for these steps.
     
    4042Options are as follows (normally you don't need to include any of them):
    4143
    42 == directory options ==
    43 || --project_root       || Project root directory path. Default: $HOME/projects/PROJECT_NAME ||
    44 ||  --key_dir ||        Where keys are stored. Default: PROJECT_ROOT/keys ||
    45 ||  --url_base ||       Determines master URL Default: !http://HOSTNAME ||
     44== Directory options ==
     45|| --project_root       || Project root directory path. Default: `$HOME/projects/PROJECT_NAME` ||
     46||  --key_dir ||        Where keys are stored. Default: `PROJECT_ROOT/keys` ||
     47||  --url_base ||       Determines master URL Default: `http://HOSTNAME` ||
    4648||  --no_query ||       Accept all directories without yes/no query ||
    4749||  --delete_prev_inst ||       Delete project-root first (from prev installation) ||
    4850== URL options ==
    49 || --html_user_url      || User URL. Default: URL_BASE/PROJECT_NAME/ ||
    50 || --html_ops_url       || Admin URL. Default: URL_BASE/PROJECT_NAME_ops/ ||
    51 || --cgi_url    || CGI URL. Default: URL_BASE/PROJECT_cgi/ ||
    52 == database options ==
     51|| --html_user_url      || User URL. Default: `URL_BASE/PROJECT_NAME/` ||
     52|| --html_ops_url       || Admin URL. Default: `URL_BASE/PROJECT_NAME_ops/` ||
     53|| --cgi_url    || CGI URL. Default: `URL_BASE/PROJECT_cgi/` ||
     54== Database options ==
    5355|| --db_host    || Database host. Default: none (this host) ||
    54 || --db_name    || Database name. Default: PROJECT_NAME||
     56|| --db_name    || Database name. Default: `PROJECT_NAME` ||
    5557|| --db_user    || Database user. Default: current user ||
    5658|| --db_passwd ||       Database password. Default: None ||