Evaluate Changelogic without registration!
  

Changelogic Installation

Installing Changelogic web interface

Changelogic's architecture Changelogic consists of two parts: web interface and build script interface. Mostly everything – expect the operations that operate with your working directory and VCS – can be achieved through web interface.

Web interface (or the server) should be set up on one machine that every project participant can access. Web interface also includes web services that let the build script client know exactly what it should do next.


Changelogic's build script (or the client) should be included in your projects source tree root and after that, all targets can be executed from developers' working directories.

Note: Changelogic web interface is known to work on Linux servers, but it probably runs on any operating system where all preconditions can be satisfied.


Absolute preconditions

It's inevitable to have:


Note: Please give PHP module minimum of 64 MB of memory (128 MB is recommended) in php.ini (parameter “memory_limit”)


Additional information: it is not required to have VCS server, MySQL and web server installed on the same machine.


Strongly recommended external dependencies

It's strongly recommended to have:

  • PHP on the web server being able to send e-mails via one of the following:
    • a working sendmail or sendmail wrapper on the same machine as web server (Unix/Linux systems only)
    • access to SMTP service (Windows/Unix/Linux)
  • ViewVC (formerly known as ViewCVS) from http://www.viewvc.org/
    ViewVC should reside on the same machine as your VCS repository. Therefore, the VCS server should have Python interpreter installed. ViewVC can run either
    • standalone, or
    • under Apache and mod_python (recommended)
  • PHP and Apache on the VCS server to enable browsing diffs between versions (see more under “Optional features”)

Installation steps

  1. Once you have the Changelogic installation package, unpack the code to desired directory.
  2. Create blank database. Changelogic creates the database structure automatically, all you have to do is create new user and a blank database to MySQL server and then configure required parameters from configuration file. Important note: the user under which Changelogic connects to database, should have all privileges to manipulate the database, because the installations scripts do change the structure of database too (this is intended to make installation and upgrades whole lot easier).
  3. Now you can either allow the web server to write to changelogic_home/resources directory and make the first request from browser – it directs you to a page where you can enter the configuration parameters and generate conf.php file or you can make it old-school way – copy resources/sample_conf.php to resources/conf.php and define required parameters. Important note: don't leave the directory writable after configuration file is generated.
  4. If you chose the semiautomatic installation, you will be directed to login form, if not, make the first request now. Changelogic creates database and outputs password for user “admin” so you can log on. See our administration page to find out how to add new users, CVS servers etc or proceed to add new project.

Optional features

  • If you want people to be able to add comments by replying to e-mail they receive from Changelogic, you need to
    • create a new IMAP inbox
    • set the sender address to that inbox
    • configure the parameters in INCOMING MAIL section in CLROOT/resources/conf.php
    • insert the line "* * * * * /path/to/php CLROOT/resources/batch.php" into your crontab (this runs mail import every minute, read cron's manual to set it differently)
    • create the IMAP folders and configure Changelogic to use them from conf.php. Example folders can be:
      • INBOX – here the messages arrive
      • INBOX.ADDED – here the valid messages are put after adding to database
      • INBOX.SPAM – messages that do not contain any authorization information are moved here
      • INBOX.INVALID – messages that contain invalid authorization information are moved here

  • Note: Changelogic currently works only with IMAP with the folders precreated. This instruction only covers installation on a Unix compatible operationg system where cron is available. You can replace cron with any other similar tool on any operating system.

  • If you want to be able to browse file differences for any two given versions, you must put the file CLROOT/lib/restricted/get_viewcvs_diff.php in the server, where your VCS resides into path accessible from web and then set the address in Changelogic VCS server registry from user menu->VCS servers. You probably also need to tweak your path to VCS repository and path to rlog tool that are configured in the first lines of file get_viewcvs_diff.php.

Where CLROOT refers to the directory where Changelogic's web interface installation resides in your server (for example /var/www/changelogic).


Installing build script client

Preconditions



As the client build script must be added to project repository you should proceed to project setup. To start development of your first change you must also configure the build script client.