diff options
Diffstat (limited to 'INSTALL')
-rw-r--r-- | INSTALL | 59 |
1 files changed, 51 insertions, 8 deletions
@@ -29,7 +29,7 @@ To use that script, these are the steps: --assume-yes --rabbitmq-pwd $RABBIT_PWD --postgres-role-pwd $DB_PWD \ --apache-conf config/rhodecode - Changing $RABBIT_PWD with tha password written in 'broker.password', and + Changing $RABBIT_PWD with the password written in 'broker.password', and $DB_PWD with the one set up on the database configuration line. Fill in also the other values: $EMAIL and $ADMIN_PWD for the RhodeCode administration. @@ -70,6 +70,10 @@ Dependencies The package git-core can also be installed via the Ubuntu Git Maintainers PPA that usually has more updated versions of git. The PPA is: ppa:git-core/ppa +The pip installed packages are handled automatically by the RhodeCode install +steps, and will be installed in the home directory of the user running the +installation, not in the whole system. + Users Configuration ------------------- @@ -82,20 +86,23 @@ The RhodeCode installation will be done with a dedicated system user and group. Necessary Directories --------------------- -The following directories need to created and be writable at least by the +The following directories need to be created and be writable at least by the 'rhodecode' user and/or group: * /var/log/celery * /var/log/rhodecode * /opt/rhodecode - * /opt/git_repos + * /opt/rhodecode/git_repos The '/opt/rhodecode' directory is where RhodeCode will store its local data and caches. -The '/opt/git_repos' directory is where RhodeCode will store the git +The '/opt/rhodecode/git_repos' directory is where RhodeCode will store the git repositories directories. +If some of these directories need to be changed, it is necessary to update also +the RhodeCode configuration files. + PostgreSQL Configuration ------------------------ @@ -186,7 +193,7 @@ under the 'rhodecode' home directoy, with the user 'rhodecode'. * $EMAIL: the email of the administrator * $PWD: the password for the administrator * $REPOS: the path of the directory where the git repositories will be saved, - that for these instructions should be '/opt/git_repos' + that for these instructions should be '/opt/rhodecode/git_repos' * Install RhodeCode, using the 'rhodecode' user home directory as the base: python setup.py install --user @@ -206,18 +213,19 @@ To use that configuration it is necessary to enable two Apache modules: Disable also the 'default' Apache module. If the directory where git repositories will be stored, is different than -'/opt/git_repos', modify the Apache RhodeCode virtual host accordingly. +'/opt/rhodecode/git_repos', modify the Apache RhodeCode virtual host +accordingly. Copy the file 'config/rhodecode' into the appropriate Apache directory and reload the configuration. -Start the services +Start the Services ------------------ In order to be able to start the services when the server boots, there are two upstart configuration files that can be used. -They are located in the 'config/' directory: +They are located in the 'scripts/' directory: * celeryd-upstart.conf * rhodecode-upstart.conf @@ -260,3 +268,38 @@ Configuration All RhodeCode configuration, like creating groups and modifying some of its setting, happens from the web interface when logged in as the admin user. + + +RhodeCode Staging Instance +========================== + +In order to have staging instance as similar as possible to the production one, +we need to clone git.linaro.org repositories, mirror them and update them from +time to time. + +In order to mirror all hosted repositories, we need a list of all the '.git' +directories in git.linaro.org, and clone those. + +Once we have the mirrored clones, we need to set up a cron job to update them. + +In the 'scripts/' directory there are two Python scripts to automate the clone +and update operations. They are respectively: + + mirror-repos + update-repos + +In the 'config' directory there is also a file with all the '.git' directories +from git.linaro.org. The file is: + + git_repos.txt + +This file has to be passed on the command line when cloning the repositories. +To clone all git.linaro.org repositories: + + python scripts/mirror-repos --repos-list config/git_repos.txt \ + --checkout-dir /opt/rhodecode/git_repos --user rhodecode + +The script will mirror the repositories maintaining their directory structures. +To update the repositories, as a cron job for the 'rhodecode' user, run: + + python scripts/update-repos --repos-dir /opt/rhodecode/git_repos |