Windows
Unfortunately, Python is not preinstalled on Windows machines; however, with the installer this is not difficult. The Python installer does not set the Python path, so this must be added
1. Go to Start->Control Panel->System 2. Click on the "Advanced" tab.
3. Select "Path" under "System Variables" and click the "Edit" button.
4. Add Python to the environment path: "C:\Python26\" to the end of the "Variable Value" To test that Python is working from the command prompt, run the command: python You should get the following prompt:
Python 2.6.2 (#67, Sep 28 2009, 12:41:11) [MSC v.1310 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information.
>>>
1. Install Python and supporting modules
The TACTIC source code is written in Python. As such, the complete codebase is open.
To install Python, you can find an msi at http://www.python.org. TACTIC requires Python 2.6 or higher. TACTIC also requires a number of Python modules to function correctly. These modules are generally not installed by default with the standard Python distributions. For Windows, they are already packaged in a file python_modules.zip available for download in the release section of the downloads page at http://
community.southpawtech.com/downloads
• PIL 1.1.7 (Python Image Library)
• ImageMagick 6.7.8 (A command line program which complements PIL) - http://www.imagemagick.org • FFmpeg version 0.6(Solution to record, convert and stream audio and video and metadata parsing) - http://
www.ffmpeg.org
• psycopg2 2.3.1 (Database connectivity)
• PyCrypto version 2.0.1/2.1 (For de-encrypting the license file) - http://www.amk.ca/python/code/crypto • simplejson 2.1.1 (not needed since Python 2.6) simplejson.egg can be installed with the EasyInstaller. It is
need for JSON string encoding and parsing • lxml 2.1 or 2.2 (XML and XPath processing) • pywin32-(build 2##) (Python Windows OS module)
2. If you haven't done so already above, unzip Tactic Enterprise in a temporary location like C:/temp 3. Go to C:/temp/tactic_#.#.#/src/install/
4. Execute: install.py
Note
You must invoke the installation with root user privileges because it attempts to write to the <python_install>/site-packages directory.
# python install.py
The installer will ask a number of questions. First it ask for the <TACTIC_BASE_DIR>:
Please enter the base path of the TACTIC installation:
(C:/Program Files/Southpaw) ->
It would copy the source code to the base path. An Apache Web Server file will be generated at the end which you would need to copy to the Apache config area upon installation of the web server. If there are existing files in the destination directory the installer will ask for your confirmation to remove it. At the end, you will see this:
Installing service TacticService Changing service configuration Service updated
*** Installation of TACTIC completed at [C:/Program Files/Southpaw] ***
Next, please install the Apache Web Server and then copy the Apache config extension [C:/Program Files/Southpaw/tactic_data/config/tactic_win32.conf] to the Apache web server config area. e.g.
C:/Program Files/Apache Software Foundation/Apache2.2/conf
Verification
When the installation is completed, an asset directory will be created at '<TACTIC_BASE_DIR>/assets'. The file tactic_paths.py will be created in the following directories:
Windows C:/Python##/Lib/site-packages/tacticenv
Default contents:
TACTIC_INSTALL_DIR='C:/Program Files/Southpaw/tactic' TACTIC_SITE_DIR='' TACTIC_DATA_DIR='C:/Program Files/Southpaw/tactic_data'
Network machine access
If you are on the server, you can access it by using the URL http://localhost/tactic. For other people to access it on the network, you need to find out its IP address. In a linux server, you can use the command "ifconfig" to locate it. It's the one listed as the inet addr.
Next, you need to run TACTIC behind Apache.
Install the Web Server
TACTIC should be run behind an Apache web server. You can download Apache software at http://www.apache.org/ The TACTIC application server is able to serve up static content such as images, PDF files, Quicktime files, and so on, but it is not the most efficient at this because it is written in Python. This is what Apache is designed for. By running TACTIC behind Apache, it relieves TACTIC from serving the static content so that it can focus on the dynamic content.
For production use, it is highly recommended that TACTIC is run behind the Apache server. This has many scalability advantages. When running behind Apache, Apache uses a reverse proxy and proxy balancer module to forward requests to communicate with TACTIC.
Windows
After the installation, some changes may need to be made in the "httpd.conf" file for Apache.
C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf
Make sure the following lines are uncommented:
LoadModule rewrite_module modules/mod_rewrite.so LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so LoadModule deflate_module modules/mod_deflate.so
These lines may already be uncommented, depending on your distribution and version of Apache. You need version 2.0.31 or later.
The TACTIC installer generates an Apache extension conf file on completion. You need to copy that file to a directory that is recognized by Apache.
For Windowse: this directory is:
C:/Program Files/Apache Software Foundation/Apache2.2/conf
You must add the following line to the "httpd.conf" file so that it will read the extension conf file provided by the installer:
Include conf/tactic_win32.conf
Web Server configuration
In our provided file:
tactic_win32.conf
Make sure the following lines exist:
# Using the ProxyPass directives ProxyPreserveHost on <Proxy balancer://tactic> BalancerMember http://localhost:8081/tactic BalancerMember http://localhost:8082/tactic BalancerMember http://localhost:8083/tactic </Proxy>
ProxyPass /tactic balancer://tactic ProxyPass /tactic_data balancer://tactic
Note
Warning: For load balancing, only use either: 1) the Proxy Balancer method (recommended)
or
Do not use both methods at the same time.
Note
For configuring load-balancing set-up in a real production, please refer to the Load Balancing section in the Sys-admin docs.
Note
When trying to set up Apache on a Windows Server, to specify a share folder for Apache to use, you may need to include the name of the share folder in the path.
For example, use the following if you have named the share folder "my_share":
Alias /assets "//10.0.0.17/my_share/assets"
Note: For configuring load-balancing set-up in a real production, please refer to the Load Balancing section of this Sys-admin doc.
Finally, after verifying the configuration is correct, restart the Apache service:
You can do it in the Windows Services UI or through the task tray and right click on the Apache icon.