10.9. Packaging and Releasing an RT Extension

 < Day Day Up > 

If you've created an extension that you think would be generally useful for the RT community, you can package it and distribute it as a Perl module on CPAN, the Comprehensive Perl Archive Network.

All RT extensions placed on the CPAN should have a name starting with RTx to distinguish them from core RT code.

10.9.1. Module::Install::RTxModule::Install::RTx

You can use Module::Install::RTx to help create an installer for your extension. It automates a number of RT-specific installation tasks, such as installing .po files for I18N, installing Mason components, and updating the database.

Here is an example Makefile.PL for a fictional RTx::MechaRepair extension:

     use inc::Module::Install;           RTx('MechaRepair');     author('Dave Rolsky <dave@example.com>');     license('perl');           WriteAll(  ); 

Module::Install::RTx looks for certain directories in the distribution like html or po and makes sure that files in there end up in the appropriate place when installed. See the Module::Install::RTx documentation for details.

10.9.1.1. Updating the database

You can include SQL files to update the database under etc/. To change the database schema, use a file named schema.XXX, where XXX is the name of a DBI driver like "Pg" or "mysql." SQL to update ACLs should be named acl.XXX. If you have a file named initialdata, this can be used to run a set of INSERT or UPDATE statements to update the database.

If any of these files are present, the end user installing your extension will be able to run make initdb, which takes care of running rt-setup-database appropriately.

10.9.2. Licensing

RT is open source software, which is made freely available under the terms of version 2 of the GNU GPL. When you release an extension, we encourage you to use an OSI-approved license that is compatible with RT's. If you have any questions about appropriate licensing for your RT extensions, we encourage you to consult legal counsel.

     < Day Day Up > 


    RT Essentials
    RT Essentials
    ISBN: 0596006683
    EAN: 2147483647
    Year: 2005
    Pages: 166

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net