<div dir="ltr">Date: Thu, 20 Jun 2013 10:26:21 +0700<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
From: Johnny Rose Carlsen <<a href="mailto:johnny.c@aware.co.th">johnny.c@aware.co.th</a>><br>
Dear List,<br>
<br>
I have been running a few RT 3/4 systems on CentOS 5/6 for the last 3<br>
years and have had many issues maintaining them.<br>
<br>
A lot of the required Perl modules used by RT are not provided by the<br>
standard CentOS repositories (including EPEL and RPMForge), which means<br>
they will get installed using CPAN.<br>
<br>
Some of the modules from CPAN then requires newer versions of modules<br>
that was installed by RPM. So in some situations I end up with a module<br>
being managed by both CPAN and RPM (CPAN for the newest version, RPM<br>
because of other RPM dependencies).<br>
<br>
Everything usually ends up working somehow, but only until it is time to<br>
update the server (yum update) or RT - which causes everything to break.<br>
<br>
I have read the wiki about how other people handle RT on CentOS, but I<br>
can't see any guides who actually solves this problem.<br>
<br>
Am I missing something? or should I just be using a different distribution?<br>
<br>
Which distribution seems to work best with RT? - I'd like to completely<br>
avoid installing stuff using CPAN.</blockquote><div><br></div><div style>I run rt4 on centos. IMO the best way to handle it is to use CPAN in a pre-production environment and have it install into a local user folder and that tar up that folder and stuff it into production. The install only the base perl modules for our distro using packages - all the RT specific stuff is pulled in via CPAN. The reasons for this decision included:</div>
<div style>-some modules need to be complied and as a matter of policy we don't put compilers on production boxes</div><div style>-we run multiple vhosts and they might have different perl dependencies</div><div style>
-we could not find all the CPAN modules we needed packaged already</div><div style><br></div><div style>To go down this path you will have to set envs accordingly for httpd, any cron-jobs, as well as any user accounts where you want to use the RT command-line tools.<br>
</div><div style><br></div><div style>In the httpd conf for my rt4 vhost I have:</div><div style><div><br></div><div> SetEnv PERL5LIB /srv/httpd/<a href="http://example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5">example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5</a></div>
<div><br></div><div> FastCgiServer /srv/httpd/<a href="http://example.com/rt-4.0.2/sbin/rt-server.fcgi">example.com/rt-4.0.2/sbin/rt-server.fcgi</a> -processes 5 -idle-timeout 300 -initial-env PERL5LIB=/srv/httpd/<a href="http://example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5">example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5</a></div>
<div><br></div></div><div style><div><br></div><div style>In the crontab for the user that runs rt cron jobs (e.g.rt-email-digest) one of the first lines is:</div><div style><div>PERL5LIB=/srv/httpd/<a href="http://example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5">example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5</a></div>
<div><br></div><div style>In the env for any user that wants to run rt tools (like rt and rt-shredder):</div><div style><div>PERL5LIB=/srv/httpd/<a href="http://example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5">example.com/perl/lib:/srv/httpd/example.com/perl/lib/perl5</a></div>
<div><br></div><div style>You will have to configure CPAN to install into the private dir - see <a href="http://www.perlmonks.org/?node_id=630026">http://www.perlmonks.org/?node_id=630026</a></div><div style><br></div><div style>
cheers</div><div style>ram</div><div style><br></div></div></div></div></div></div></div>