Project scheduling software (scriptable, cross-platform, and open source)
GanttPV Home
Why GanttPV? Help Scripts Server Developer Object Role Modeling
Forum

GanttPV Server Installation

GanttPV Server must be installed on the server and client. It also includes an optional web server component to display reports via web browser.

Requirements for use

The GanttPV server has a small set of requirements for use.

  • Python 2.3 or latter must be installed on the server.
    • GanttPV Server will run on any of the many operating systems that are supported by Python.
    • This includes Windows, Macintosh, and Linux, among others.
    • Nothing else needs to be installed.
  • The IP number of the server must be constant.
    • On many systems the IP address is dynamically assigned and changes values occasionally.
    • When using the GanttPV Server, the server's IP address is remembered in the client's copy of the database and is used when contacting the server.
    • If the number changes, the client will not be able to share data with the server.
    • (This requirement will be removed in the future.)
  • Clients must use GanttPV v0.8 or later
    • These versions keep track of changes that need to be shared with the server.

Components

The GanttPV Server distribution includes four folders.

  • client - Includes scripts to add a new GanttPV database file to the server, download an existing database from the server, and to share changes with the server. This folder is copied into the scripts folder of GanttPV. These files are run from inside GanttPV, through the Script menu.
  • server - Includes the main server script and a script to print out access keys (passwords). This folder is copied onto the server computer. Current and backup copies of all databases on the server are stored in this folder.
  • web - Includes a CGI script that displays web reports and applies changes to the database. This folder is installed in the web server's 'cgi-bin' folder.
  • test - Includes scripts that can be used to verify that the server is working properly.

Installation on Server Computer

  1. Copy the 'server' folder onto the server computer.
  2. Before you run the server script, you must set the name, IP address, and port.
    • You set them by editing the file Configuration.ini in the folder named 'current'.
    • Be sure to edit the script with a plain text editor, like WordPad on Windows or TextEdit on the Mac. On Windows, don't use NotePad; it has problems non-windows end-of-line characters.
  3. Choose a unique name for the server, for example: 'Training Dept GanttPV Server'. The name should contain only ascii letters, digits, and spaces.
    • The server's name is announced via Bonjour (also called Zero Config).
    • The server name is not currently used by clients, but will be in a future release.
    • If you do not want the server to be announced an the local network, set the server name to an empty string.
  4. Identify the server's IP address.
    • The way to do this varies by platform.
    • On windows, use the command 'ipconfig' in the command prompt window.
    • On the Mac, use 'ifconfig' in the terminal.
  5. Confirm that port number '8001' is available for GanttPV Server, or select an alternate number.
    • Like all networking software, GanttPV Server uses a port number.
    • The default port number is '8001'. If this number is not available select different 4-digit server port number.
  6. Make sure port number will be accessible through any firewall on the server.
  7. If other people have access to the server, you may wish to change the permissions 'current' and 'backup' folders so that only the server's user id will be able to read them. All of the access keys (passwords) for the files are kept in these directories along with the data.
  8. Run ganttpv_update_server.py script from the server directory.
    • You might be able to run the server directly from the GUI (by double clicking on the server script icon).
    • If not, you will be able to run it from the command line by changing the the server directory and typing "python ganttpv_update_server.py".
    • You might need to specify the complete path of the python.

The server will save uploaded databases into the "current" subdirectory and make backup copies in the "backup" subdirectory.

After you start the server, you can use the test script to verify some of the server functions. Edit the IP number and port at the beginning of the script. Then run the test script with python. Most of the tests should pass. A few haven't been updated to handle the most recent changes.

After a database has been added to the server, you can use the ganttpv_show_keys.py script to display the 'Edit Key' (password) necessary to download a database.

Installation on the Web Server

  1. Copy 'ganttpv_report.py' into your web server's cgi-bin folder.
  2. Make sure the web server has execute access to the "ganttpv_report.py" script.
  3. Edit the script to specify the server's IP address and port.
    • Search for the line that contains: 'server_address = "http://192.168.0.11:8046"'
  4. You might need to make a change in the web server's configuration to execute python scripts.
  5. A test script is included in the distribution. Use it verify that Python scripts will execute.

Installation on Client

The client scripts must be installed in the Scripts directory of each GanttPV client that will use the server.

  1. Make sure the project manger's machine has GanttPV v0.8(or later) installed.
  2. Copy the 'client' folder into the scripts folder of GanttPV on each client machine.
  3. Rename the 'client' folder to 'Server'. (That name better matches the user's view of its role.)

Optionally change the server IP address at the beginning of the Add Database to Server and Download Database from Server scripts. Otherwise a dummy IP address is presented to the user to show the format of the data that should be entered; it would be easier for the users if they could just click 'OK' to accept the real address.