August 29, 2009

Installing Agilo - Agile plugin over Trac

[If you are looking for instructions on installing Agilo over Trac, click here to skip to the instructions directly]

Finally a post on my current work in my new organization. :-) Its been running really busy with lot of things going on in parallel; but i must admit it, it feels lively after a long long time here and that's one reason you find me posting this entry at 2:30 past midnight (no.. i'm not working on project related stuff, but i find my enthusiasm back on finding new stuffs that can help my team and the organization perform better).

We, the newly formed engineering team here have decided to follow agile and scrum based processes in all our projects and the organization as whole. We recently installed Trac (a fantastic python based open source tool on one of our servers), but this provided very minimal UI for wiki, source code browsing, ticketing system and milestones tracking and had missing features like user management, ticket hours management, scrum features like (product backlogs, sprint based management and progress tracking). So we explored more and came across this nice plugin over Trac - called Agilo. Agilo is open source and provides some pro features in a licensed version with support. Well what we were looking for was pretty much available in the open source version so we went ahead with the same.



  1. First install setuptools for python by running
    wget http://peak.telecommunity.com/dist/ez_setup.py

    python ez_setup.py

  2. Install Trac. (need help? read here or here)

  3. Install simplejson by issuing
    easy_install simplejson

  4. At this step, its assumed that your trac is up and running :-) Download Agilo source code from here (you need to be logged in to download this) and untar it using
    tar xzvf agilo-source-latest.tar.gz

    Go to the source folder and issue
    easy_install [source-untarred-folder]

  5. At this step, you need to enable this for your projects. Assuming that you've a project installed in /var/trac/project1, you need to add the following to your /var/trac/project1/conf/trac.ini

    [components]
    agilo.* = enabled
    agilo_common.* = enabled


  6. Do an upgrade on the project by issuing:

    trac-admin /var/trac/project1 upgrade

    which should output something like below:

    Creating Product Backlog...
    Creating Sprint Backlog...
    Upgrade done.

    This means your project has been upgraded to use Agilo on Trac. Restart your trac instance.

  7. I wasn't successful in my first attempt because my simplejson installation wasn't proper for some reason, so i did a
    locate simplejson

    removed the simplejson egg and then did
    easy_install simplejson

    again. For me, the path of simplejson to be removed, was /usr/lib/python2.4/site-packages/simplejson-2.0.9-py2.4-linux-x86_64.egg



It was very satisfying to see the Agilo UI over Trac. We've already created a/cs for the entire organization (engineering, product management, analytics and support functions) and our CEO, CTO also have an a/c on the system. Everybody is excited about the new system :-)

[PS: if you still have problem, do post your issue here.]

7 comments:

Teck said...

Hi,
more information about Agilo you can find on the website of agile42: Agilo for Scrum
Thank you
Marion

Matka/HTML said...

Sure Marion. And to get started setting up the Agilo (user management, product management etc), i found those flash videos really helpful on the page that you've pointed. Thanks.

Anonymous said...

Hi,

Our group currently uses Trac for tasking and also our customer uses it to report bugs. Since our customer is not part of the internal development process, how should they now enter tickets (defects) against a particular product? I posted on Agilo's Google group if you're interested.

http://groups.google.com/group/agilo/browse_thread/thread/9b0c032e8f7bd5ff

Thanks.
Chris

Matka/HTML said...

chris,

you could always create a user and assign "TICKET_*" and "AGILO_TICKET_*" permissions to that particular user. however i'm slightly concerned about exposing your project management repository to the external world. you don't want to scare your customer with internal bug pool, your project priorities and similar stuffs. Also, you don't want to expose your internal IP to the external world. If you understand the risk but still want to go ahead with it, fine, but do make sure about the appropriate permissions and test the a/c before passing on to the customer.

hope that helps.

Greensuman said...

when i was issuing the following command


trac-admin /opt/testsite upgrade

it is giving the following error




Command failed: Backup attempt failed (/usr/lib/postgresql/8.4/bin/pg_dump: invalid option -- 'd'
Try "pg_dump --help" for more information.
)


please help how to fix

Matka/HTML said...

looks like version mismatch of postgres db. it might help, if you share the deployment version of trac, agilo, python and postgres

Greensuman said...

Hi,

The followings are the versions

Postgre 8.4
Trac 0.11
Python - 2.6
Agilo -0.9

Can you please provide the correct versions that will work

Thanks
suman