Bad Directory structure in Linux RPM installation of RT 3.4.5

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I’m new to Linux, so I may be overlooking something obvious.

I’ve been supporting our RT (3.4.2) instance on FreeBSD for several
months. Now I’m going to be responsible as well for RT in a Linux
environment. A colleague recently set up a Linux Fedora FC5 box and
installed RT 3.4.5 via ‘yum’, out of the box. I’m now trying to configure
it and apply a few mods and customizations that I did on my FreeBSD RT
3.4.2.

But what I’ve noticed is that the file structure of the RT web tree is not
right! RT was installed into /var/www/rt3. But under that directory,
instead of /var, /share, /sbin, /local, /lib, /bin and /etc, all I find is
the root web directory, e.g., l, index.html, autohandler, /User, /Tools,
/Ticket, /SelfService, /Search, /REST, /NoAuth, /Elements, /Download,
/Approvals, /Admin and /Callbacks. So, for one thing, I have no way to
apply mods or customizations as there’s no /local subdirectory.

The person who did the install says he ran it out of the box, using ‘yum’.
He didn’t specify any changes to the install locations.

Could someone who is running RT on Linux (especially if it’s Fedora) give
me at least a hint of what’s going on?

Meanwhile, I’ve got RT running, but I’m very limited in what I can do with
it as far as customization. I was able to install Jesse’s BrandedQueues
extension; somehow that install was able to find the top-level location
of the RT web stuff. But where is the rest of the RT tree?

BTW: the RT config files were installed in /etc/rt3 and I am able to
customize RT_SiteConfig.pm. Also, the supplied rt scripts
(rt-setup-database, rt-mailgate, rt-dump-database, rt-crontool and rtacct)
were installed into /usr/sbin (not under an rt3 directory at all).

This RT instance is intended as a prototype and is needed right now by one
small set of users. But in the near future I’ll be doing a fresh install
on a new Linux system, so whatever I can learn from you now could be of
great value when I get to start over from scratch.

Any help will be appreciated.

Thanks.

Mike

Mike Friedman System and Network Security
mikef@ack.Berkeley.EDU 2484 Shattuck Avenue
1-510-642-1410 University of California at Berkeley
http://socrates.berkeley.edu/~mikef http://security.berkeley.edu

-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQA/AwUBRMZ2tq0bf1iNr4mCEQJIdgCgtxUw3IQLZxcHLfHMK4L71I6tGpsAoOEu
EpMBcM91UU5/1nFpDqPkFyxv
=jAtO
-----END PGP SIGNATURE-----

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1On Tue, 25 Jul 2006 at 16:29 (-0400), Jeff Voskamp wrote:

All crucial paths are mentioned in
/usr/lib/perl5/vendor_perl/5.8.6/RT.pm starting around line 70. All the
perl libraries are anchored at /usr/lib/perl5/vendor_perl/5.8.6/RT

Jeff,

But my system has several versions of perl in /usr/lib/perl5/vendor_perl.
RT is installed in 5.8.7, but the default version (what I get when I enter
’perl -v’) is actually 5.8.8.

I looked in /usr/lib/perl5/vendor_perl/5.8.8/RT.pm. Several paths are
mentioned, but most of them are either empty or don’t even exist. For
example, /var/lib/rt3 has nothing in it. And /usr/local/etc/rt3 doesn’t
exist. In fact, when I installed Jesse’s BrandedQueues extension, it
created /usr/local/lib/rt3/lib/RT/Extension, because /usr/local/lib/rt3
otherwise didn’t exist or was empty.

So, how do I customize RT? That is, what is the scheme I’m supposed to
use to cause proper overriding without actually modifying or replacing
files from the original RT distribution?

Mike

Mike Friedman System and Network Security
mikef@ack.Berkeley.EDU 2484 Shattuck Avenue
1-510-642-1410 University of California at Berkeley
http://socrates.berkeley.edu/~mikef http://security.berkeley.edu

-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQA/AwUBRMaRwK0bf1iNr4mCEQKxlgCg6bDKZO9WtU5xEL2Fgl9xO11UqvEAni2/
l7haEeXo2nBWcKbd83kf7STb
=FXit
-----END PGP SIGNATURE-----

So, how do I customize RT? That is, what is the scheme I’m supposed to
use to cause proper overriding without actually modifying or replacing
files from the original RT distribution?

You might want to ask on the Fedora list. I think the RT package is in
extras, and there is a fedora-extras mailing list - ask there.

At any rate, I don’t use the packaged solutions. I’ve heard other
people complaining about the way RT is packaged for Fedora, so I’ve
stuck with installing from source - much easier.

Good luck,

Ranbir
Kanwar Ranbir Sandhu
Linux 2.6.17-1.2141_FC4 i686 GNU/Linux
09:02:27 up 2:32, 2 users, load average: 0.05, 0.15, 0.18

Mike Friedman wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

All crucial paths are mentioned in
/usr/lib/perl5/vendor_perl/5.8.6/RT.pm starting around line 70. All
the perl libraries are anchored at /usr/lib/perl5/vendor_perl/5.8.6/RT

Jeff,

But my system has several versions of perl in
/usr/lib/perl5/vendor_perl. RT is installed in 5.8.7, but the default
version (what I get when I enter ‘perl -v’) is actually 5.8.8.

I looked in /usr/lib/perl5/vendor_perl/5.8.8/RT.pm. Several paths are
mentioned, but most of them are either empty or don’t even exist. For
example, /var/lib/rt3 has nothing in it. And /usr/local/etc/rt3 doesn’t
exist. In fact, when I installed Jesse’s BrandedQueues extension, it
created /usr/local/lib/rt3/lib/RT/Extension, because /usr/local/lib/rt3
otherwise didn’t exist or was empty.

So, how do I customize RT? That is, what is the scheme I’m supposed to
use to cause proper overriding without actually modifying or replacing
files from the original RT distribution?

Mike


Mike Friedman System and Network Security
mikef@ack.Berkeley.EDU 2484 Shattuck Avenue
1-510-642-1410 University of California at Berkeley
http://socrates.berkeley.edu/~mikef http://security.berkeley.edu


-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQA/AwUBRMaRwK0bf1iNr4mCEQKxlgCg6bDKZO9WtU5xEL2Fgl9xO11UqvEAni2/
l7haEeXo2nBWcKbd83kf7STb
=FXit
-----END PGP SIGNATURE-----


http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: sales@bestpractical.com

Discover RT’s hidden secrets with RT Essentials from O’Reilly Media. Buy
a copy at http://rtbook.bestpractical.com

We’re hiring! Come hack Perl for Best Practical:
http://bestpractical.com/about/jobs.html

Yeah, definitely don’t use the fedora package. It’s rather pointless
considering how easy it is to install RT via tarball. Plus, with the
fedora package 1) you have to wait for them to release a new build with
each release and 2) if you have custom code that you need to use you can
install from tarball next to the current running version while testing
the newer version.

Mathew Snyder

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I’m going to be supporting a new RT that is supposed to incorporate the
databases of two different existing RT instances. Because it is important
that the ticket numbers remain the same in both cases, I’ll probably need
to keep the databases distinct. However, I’m trying to avoid having to
support two completely separate instances of both Apache and RT on two
different machines.

Assuming that a single RT instance can point to only one database (but
correct me if I’m wrong about this), I’d like to be able to have one
Apache, with two virtual homes, each pointing to an RT with its own
distinct database. But I want to be able to do this on a single machine.
Can one install two separate RT instances on the same box? And, even if
so, can one Apache point to different sets of RT libraries? I figure I’d
need this, because it’s RT.pm that specifies the location of the Config
file, where the database is defined.

Actually, instead of actually doing two RT installs on the same system,
I’m wondering if the following scenario would work:

  1. Install RT, say into /opt/RT-a/rt3.

    • etc/RT_SiteConfig.pm would point to database-a.
  2. Copy /opt/RT-a/rt3 to /opt/RT-b/rt3.

  3. In /opt/RT-b/rt3:
    – Modify lib/RT.pm to adjust the locations of the various RT paths
    to correspond to /opt/RT-b/rt3
    – Modify etc/RT_SiteConfig.pm to point to database-b and to adjust
    $WebPath, etc.
    – Adjust bin/mason_handler.fcgi so that it brings in webmux.pl
    from /opt/RT-b/rt3/bin.
    – Adjust bin/webmux.pl so that it uses the libraries in
    /opt/RT-b/local/lib and /opt/RT-b/lib.

  4. – Set up two Apache virtual homes, one with
    ScriptAlias / /opt/RT-a/rt3/bin/mason_handler.fcgi/
    and the other with
    ScriptAlias / /opt/RT-b/rt3/bin/mason_handler.fcgi/
    – Set DocumentRoot, ServerName, etc. appropriately in each virtual home

Would this work and accomplish what I want? Or am I overlooking something?

Thanks.

Mike

Mike Friedman System and Network Security
mikef@ack.Berkeley.EDU 2484 Shattuck Avenue
1-510-642-1410 University of California at Berkeley
http://socrates.berkeley.edu/~mikef http://security.berkeley.edu

-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQA/AwUBRNDVTq0bf1iNr4mCEQLJ1QCeO6megJn9+/ZpaYX0ltyjwOU3t2EAn0Hl
RiKTki/Kb8Un2oUUwgomY60Z
=dwfy
-----END PGP SIGNATURE-----

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1On Wed, 2 Aug 2006 at 09:04 (-0400), Kanwar Ranbir Sandhu wrote:

At any rate, I don’t use the packaged solutions. I’ve heard other
people complaining about the way RT is packaged for Fedora, so I’ve
stuck with installing from source - much easier.

Thanks. I think I’ll go that route.

Mike

Mike Friedman System and Network Security
mikef@ack.Berkeley.EDU 2484 Shattuck Avenue
1-510-642-1410 University of California at Berkeley
http://socrates.berkeley.edu/~mikef http://security.berkeley.edu

-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQA/AwUBRNDZ9K0bf1iNr4mCEQKrZwCgti3KCkLKruOd5uaUyxLnyL6P5k4AoKga
9Ds5S8ede12M8XR0SjXUxIAW
=4jR6
-----END PGP SIGNATURE-----

Would this work and accomplish what I want? Or am I overlooking something?

Yes. What you are trying to do is possible. See:
http://wiki.bestpractical.com/index.cgi?MultipleInstances

I have the same setup on a test machine so if you have problems I can
probably help you.

Joshua Colson jcolson@voidgate.org

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1On Wed, 2 Aug 2006 at 10:25 (-0700), Joshua Colson wrote:

On Wed, 2006-08-02 at 09:39 -0700, Mike Friedman wrote:

Would this work and accomplish what I want? Or am I overlooking
something?

Yes. What you are trying to do is possible. See:
http://wiki.bestpractical.com/index.cgi?MultipleInstances

Joshua,

I’m glad to hear this. I guess doing the install multiple times, instead
of just copying the RT tree as I suggested, has the advantage of my not
needing to modify the various files that point to instance-dependent
paths.

I looked at the above wiki document. I don’t think I need the patches
mentioned there, as I have few customizations and I’m willing just to
replicate them in the two instances. (I’d rather not maintain patches
that might need to be retrofitted to later RT releases).

Thanks.

Mike

Mike Friedman System and Network Security
mikef@ack.Berkeley.EDU 2484 Shattuck Avenue
1-510-642-1410 University of California at Berkeley
http://socrates.berkeley.edu/~mikef http://security.berkeley.edu

-----BEGIN PGP SIGNATURE-----
Version: PGP 6.5.8

iQA/AwUBRNDpO60bf1iNr4mCEQL6JgCg0UG68vrTUloJkU8mT3nJrMHpCXkAoPC2
heQ//J2Crvdo96Igf7xZbrci
=DGZP
-----END PGP SIGNATURE-----