Request Tracker: Difference between revisions

From Alpine Linux
(remind to set password)
(use Cmd macro)
Line 5: Line 5:
This guide will get a basic rt4 setup working that will allow inbound emails to create/update issues, and assumes that you have a working postfix setup already. <br />
This guide will get a basic rt4 setup working that will allow inbound emails to create/update issues, and assumes that you have a working postfix setup already. <br />
* add edge/main and edge/testing repos to /etc/apk/repositories
* add edge/main and edge/testing repos to /etc/apk/repositories
printf "http://nl.alpinelinux.org/alpine/edge/main\nhttp://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
{{Cmd|printf "http://nl.alpinelinux.org/alpine/edge/main\nhttp://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
  apk update
  apk update}}
* apk add lighttpd fcgi postgresql rt4 php php-cli php-common postfix postfix-pcre msmtp
* {{Cmd|apk add lighttpd fcgi postgresql rt4 php php-cli postfix postfix-pcre msmtp}}
* Edit lighttpd.conf and enable fastcgi
* Edit ''/etc/lighttpd/lighttpd.conf'' and enable fastcgi
* /etc/init.d/lighttpd start
* {{Cmd|/etc/init.d/lighttpd start}}
* ln -s /usr/share/rt4/html /var/www/localhost/htdocs/rt4
* {{Cmd|ln -s /usr/share/rt4/html /var/www/localhost/htdocs/rt4}}
* /etc/init.d/postgresql setup
* {{Cmd|/etc/init.d/postgresql setup}}
* /etc/init.d/postgresql start
* {{Cmd|/etc/init.d/postgresql start}}
* su - postgres -c "createuser -P"
* {{Cmd|su - postgres -c "createuser -P"}}


  Enter name of role to add: '''rt_user'''
  Enter name of role to add: '''rt_user'''
Line 22: Line 22:
  Shall the new role be allowed to create more new roles? (y/n) '''y'''
  Shall the new role be allowed to create more new roles? (y/n) '''y'''


* cp /etc/rt4/RT_Config.pm /etc/rt4/RT_SiteConfig.pm
* {{Cmd|cp /etc/rt4/RT_Config.pm /etc/rt4/RT_SiteConfig.pm}}
* chmod 644 /etc/rt4/RT_SiteConfig.pm
* {{Cmd|chmod 644 /etc/rt4/RT_SiteConfig.pm}}
* /etc/rt4/RT_SiteConfig.pm change to use Pg instead of mysql and change DatabasePassword to correspond to the password created for '''rt_user''' in postgresql.
* /etc/rt4/RT_SiteConfig.pm change to use Pg instead of mysql and change DatabasePassword to correspond to the password created for '''rt_user''' in postgresql.
* /usr/sbin/rt-setup-database --action init
* {{Cmd|/usr/sbin/rt-setup-database --action init}}
* rt-server
* {{Cmd|rt-server}}
* Test and make sure that you can access rt using the built-in webserver first.
* Test and make sure that you can access rt using the built-in webserver first.
* Tools -> Configuration -> Queues -> Create... Give it a name like 'support', which you'll use in the next sections (including the email address)
* Tools -> Configuration -> Queues -> Create... Give it a name like 'support', which you'll use in the next sections (including the email address)
* Add to /etc/postfix/main.cf:
* Add to ''/etc/postfix/main.cf'':
virtual_alias_maps = regexp:/etc/postfix/rt4-aliases,
virtual_alias_maps = regexp:/etc/postfix/rt4-aliases,
transport_maps = regexp:/etc/postfix/rt4-transport
transport_maps = regexp:/etc/postfix/rt4-transport
* Create /etc/postfix/rt4-aliases (replacing example.com):
* Create /etc/postfix/rt4-aliases (replacing example.com):
/^(.*)@example.com$/  $1
/^(.*)@example.com$/  $1
* Create /etc/postfix/rt4-transport:
* Create /etc/postfix/rt4-transport:
/^support.*$/            rt4-support:
/^support.*$/            rt4-support:
* Add to /etc/postfix/master.cf:
* Add to /etc/postfix/master.cf:
rt4-support  unix    -      n      n      -      -      pipe    flags=DORhu    user=postgres    argv=/usr/bin/rt-mailgate --queue support --action correspond --url http://ip.addr.of.interface/
rt4-support  unix    -      n      n      -      -      pipe    flags=DORhu    user=postgres    argv=/usr/bin/rt-mailgate --queue support --action correspond --url http://ip.addr.of.interface/
* Allow users to create tickets by email by checking all General Rights for group Everyone in Tools -> Configuration -> Global -> Group Rights
* Allow users to create tickets by email by checking all General Rights for group Everyone in Tools -> Configuration -> Global -> Group Rights
* Setup outbound emails:
* Setup outbound emails:

Revision as of 02:42, 17 June 2011

Note: This document has been tested on Alpine Linux 2.2.2, but contains some packages which are currently in the [edge/testing repository].
Note: Use a computer with at least 512MB of RAM.

Steps

This guide will get a basic rt4 setup working that will allow inbound emails to create/update issues, and assumes that you have a working postfix setup already.

  • add edge/main and edge/testing repos to /etc/apk/repositories

printf "http://nl.alpinelinux.org/alpine/edge/main\nhttp://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories apk update

  • apk add lighttpd fcgi postgresql rt4 php php-cli postfix postfix-pcre msmtp

  • Edit /etc/lighttpd/lighttpd.conf and enable fastcgi
  • /etc/init.d/lighttpd start

  • ln -s /usr/share/rt4/html /var/www/localhost/htdocs/rt4

  • /etc/init.d/postgresql setup

  • /etc/init.d/postgresql start

  • su - postgres -c "createuser -P"

Enter name of role to add: rt_user
Enter password for new role: rtpass
Enter it again: rtpass
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) y
  • cp /etc/rt4/RT_Config.pm /etc/rt4/RT_SiteConfig.pm

  • chmod 644 /etc/rt4/RT_SiteConfig.pm

  • /etc/rt4/RT_SiteConfig.pm change to use Pg instead of mysql and change DatabasePassword to correspond to the password created for rt_user in postgresql.
  • /usr/sbin/rt-setup-database --action init

  • rt-server

  • Test and make sure that you can access rt using the built-in webserver first.
  • Tools -> Configuration -> Queues -> Create... Give it a name like 'support', which you'll use in the next sections (including the email address)
  • Add to /etc/postfix/main.cf:
virtual_alias_maps = regexp:/etc/postfix/rt4-aliases,
transport_maps = regexp:/etc/postfix/rt4-transport
  • Create /etc/postfix/rt4-aliases (replacing example.com):
/^(.*)@example.com$/   $1
  • Create /etc/postfix/rt4-transport:
/^support.*$/             rt4-support:
  • Add to /etc/postfix/master.cf:
rt4-support   unix    -       n       n       -       -       pipe    flags=DORhu     user=postgres    argv=/usr/bin/rt-mailgate --queue support --action correspond --url http://ip.addr.of.interface/
  • Allow users to create tickets by email by checking all General Rights for group Everyone in Tools -> Configuration -> Global -> Group Rights
  • Setup outbound emails:
  • /etc/rt4/msmtp-wrapper.conf:
defaults
logfile /var/log/msmtp.log
account default
host ip.addr.of.interface
port 25
auto_from on
  • /etc/rt4/msmtp-wrapper (chmod'd 755):
#!/bin/sh
msmtp -t -C /etc/rt4/msmtp_wrapper.conf
logger -t rt-mailer -p syslog.info -- CALL msmtp -nt "$@" RETURNED $?
  • /etc/rt4/RT_SiteConfig.pm:
Set($MailCommand, "sendmailpipe");
Set($SendmailPath, "/etc/rt4/msmtp_wrapper");