Here's a few paragraphs that I have used in private conversations to help explain how to get started in Allura:
> To run our test suite, you can run ./run_tests in the top-level of the allura > code. That is a wrapper around "nosetests" which you can use to run tests > for individual packages or files. > http://allura.sourceforge.net/docs/platform_tour.html covers some aspects. > Besides that, the top-level directories are for each separate tool, so > there's some organization there. The Allura directory has the main code, > which dispatches out to each tool as needed. And individual tools will use > common classes and functions from the Allura package. > The entry point for everything is in Allura/allura/controllers/root.py The > controllers use object dispatch, see > http://turbogears.readthedocs.org/en/tg2.3.0b2/turbogears/objectdispatch.html > So every method and attribute in a controller maps to a URL. Pretty > quickly, though, it gets dynamic and dispatches to neighborhoods which > dispatch to projects which dispatch to tools. Each tool's entry point is > going to be in a file named something like wiki_main.py In it there's a > ForgeWikiApp which defines the tool. That class specifies self.root = > RootController() so the RootController class is where you'll find all the URL > handling for a wiki. At the end of the day, using `grep` or some other > search tool is often key to finding where something is :) > As far as tech goes, mongodb is probably the best thing to learn. It is used > throughout Allura. We use a library called Ming, on top of pymongo, to map > to objects and such. http://merciless.sourceforge.net/tour.html --- ** [tickets:#6896] Developer architecture docs** **Status:** open **Labels:** docs **Created:** Tue Nov 19, 2013 08:28 PM UTC by Dave Brondsema **Last Updated:** Tue Dec 03, 2013 07:50 PM UTC **Owner:** Tim Van Steenburgh It'd be useful to have some high-level docs for developers that are getting started with Allura. And update/overhaul our current developer-oriented doc pages. I think we should cover things like: how the code is organized, what technology is used (paster, TG, EW, jinja, etc), how to log & debug, how tests work, etc. --- Sent from sourceforge.net because [email protected] is subscribed to https://sourceforge.net/p/allura/tickets/ To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/allura/admin/tickets/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.
