====== Request Tracker Tips ====== ===== Scripts ===== ===== Optimization ===== * [[http://wiki.bestpractical.com/view/CleanupSessions|Clear Sessions]] #!/usr/bin/perl use lib qw(/usr/share/request-tracker3.6/lib); use RT; RT::LoadConfig(); RT::Init(); $RT::Handle->SimpleQuery("delete from sessions where LastUpdated < (now() - interval 24 hour)"); ===== Howto ===== ==== Request tracker 3.8.2 (Ubuntu-LTS) + NGINX + PostgreSQL ==== wget http://download.bestpractical.com/pub/rt/release/rt-3.8.2.tar.gz tar -xvzf rt-3.8.2.tar.gz make testdeps make fixdeps apt-get install mysql-client apt-get install libdbd-pg-perl libclass-dbi-pg-perl make testdeps make install **Upgrading PostgreSQL database** ## make upgrade /opt/rt3/sbin/rt-setup-database --dba rtuser --prompt-for-dba-password --action upgrade === NGINX setup === Useful links: * http://wiki.bestpractical.com/view/FastCGIConfiguration * http://www.nginx.eu/nginx-fcgi/nginx-fcgi.txt * http://www.nginx.eu/nginx-fcgi.html **FCGI/init script** #!/bin/sh RTPATH=/opt/rt3 RTUSER=www-data #FCGI_SOCKET_PATH=$RTPATH/var/fastcgi FCGI_SOCKET_PATH=/tmp/rt.fcgi case $1 in start) echo -n "Starting RT: mason_handler.fcgi" cd $RTPATH export FCGI_SOCKET_PATH su $RTUSER -c "$RTPATH/bin/mason_handler.fcgi" & echo ;; stop) echo -n "Stopping RT: " PIDS=`ps axww | awk '/[m]ason_handler.fcgi/ { print $1}'` if [ -n "$PIDS" ] then echo -n kill -TERM $PIDS kill $PIDS echo else echo RT not running fi ;; restart|force-reload) $0 stop $0 start ;; *) echo "Usage: /etc/init.d/rt { stop | start | restart }" exit 1 ;; esac **nginx request-tracker vhost config** server { listen 80; server_name rt.xxxx.si; access_log /var/log/nginx/rt.xxxx.si-access.log; location / { fastcgi_pass unix:/tmp/rt.fcgi; #fastcgi_x_powered_by off; # default on fastcgi_param DOCUMENT_ROOT /opt/rt3/share/html; fastcgi_param SCRIPT_FILENAME /opt/rt3/share/html$fastcgi_script_name; fastcgi_param PATH_TRANSLATED /opt/rt3/share/html$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param QUERY_STRING $query_string; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param REDIRECT_STATUS 200; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param SERVER_SOFTWARE "nginx/0.3.15"; fastcgi_param GATEWAY_INTERFACE "CGI/1.1"; fastcgi_param SERVER_NAME $server_name; fastcgi_param SERVER_NAME $server_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param REMOTE_USER $remote_user; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; } location ~* .+\.(html|js|css)$ { fastcgi_pass unix:/tmp/rt.fcgi; #fastcgi_x_powered_by off; # default on fastcgi_param DOCUMENT_ROOT /opt/rt3/share/html; fastcgi_param SCRIPT_FILENAME /opt/rt3/share/html$fastcgi_script_name; fastcgi_param PATH_TRANSLATED /opt/rt3/share/html$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param QUERY_STRING $query_string; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param REDIRECT_STATUS 200; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param SERVER_SOFTWARE "nginx/0.3.15"; fastcgi_param GATEWAY_INTERFACE "CGI/1.1"; fastcgi_param SERVER_NAME $server_name; fastcgi_param SERVER_NAME $server_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param REMOTE_USER $remote_user; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; } location /NoAuth/images/ { alias /opt/rt3/share/html/NoAuth/images/; } } === adding RTFM === **Download RTFM** tar -xzvf rtfm.tar.gz Install and patch the database cd RTFM-2.4.0 perl Makefile.PL make install make initdb add follwing line to /opt/rt3/etc/RT_SiteConfig.pm Set(@Plugins,qw(RT::FM)); ==== Changing user pref "Illegal value for EmailAddress"==== If you try to change your email and RT returns you an error **"''Illegal value for EmailAddress''"** means that this email address is already in the database. Workaround: as root **Configuration -> Users ->** Find people whose Email is '' and also checkbox **Include disabled users in search**. Edit user by this email and remove RT permissions and email. Now you can change your original account. ==== Installing RT 3.8.1 / Debian ==== good article on this topic on [[http://rtvm.tehcorner.com/rt38/]]