Version 15 (modified by 16 years ago) (diff) | ,
---|
building blocks for creating Trac projects
Notice: This plugin is unmaintained and available for adoption.
Table of Contents
Description
TracLegos is software designed to template trac projects and assist with trac project creation. Its goal is to make project creation easy and flexible, allowing flexibility with regards to creation methodology as well as extensibility as a project factory for environments with advanced needs. TracLegos is not [at least by design, yet] meant for project upgrading or maintainence, but only to setup a project with sensible defaults.
TracLegos can be invoked in a number of ways:
- through a command-line interface (legos.py)
- through a WSGI wrapper around trac (web.py)
- via
paster create
- programmatically
TracLegos also desires to make it easy to turn an existing project into a pastescript template.
Bugs/Feature Requests
This is a new and somewhat experimental plugin so feedback and feature requests are greatly appreciated
Existing bugs and feature requests for TracLegosScript are here.
If you have any issues, create a new ticket.
Download and Source
Download the [download:traclegosscript zipped source], check out using Subversion, or browse the source with Trac.
Example
Example of through the web project creation
The index of the project additionally has a Create Project link:
Following this link will bring you to the initial screen of project creation where you select the project name and type of project (if more than one template is available):
Next, the project details screen will allow selection of the type of repository (and in the future, database type -- see #3745):
Finally, you must fill in any additional variables needed for the project:
After completion, the project is created and you are redirected to it.
Example of command line usage
> create-trac-project Usage: create-trac-project [options] project <project2> <...> var1=1 var2=2 ... assemble a trac project from components Options: -h, --help show this help message and exit -c CONF, --conf=CONF site configuration files -d DIRECTORY, --directory=DIRECTORY trac projects directory -i INHERIT, --inherit=INHERIT .ini file to inherit from -r REQUIREMENTS, --requires=REQUIREMENTS requirements files for plugins -s REPOSITORY, --repository=REPOSITORY repository type to use -t TEMPLATES trac.ini templates to be applied in order --list-templates list available TracProject PasteScript templates --list-repositories list repositories available for setup by TracLegos > create-trac-project --list-templates Available projects: topp_trac_project: The Open Planning Project Trac Template > create-trac-project --list-repositories Available repositories: ExistingSVN: Use an existing repository NewSVN: Create a new SVN repository > create-trac-project -t topp-trac-project mynewproject # create a new project
Example of turning an existing project into a pastescript template
> paster create -t trac_project foo Selected and implied templates: TracLegos#trac_project templatize configuration for a trac project Variables: egg: foo package: foo project: foo Enter file (file or project to templatize) ['']: /home/jhammel/20080519133401/projects/trachours/conf/trac.ini Enter description (One-line description of the package) ['']: a new trac template based on the trachours .ini file Creating template trac_project Creating directory ./foo Recursing into +package+ Creating ./foo/foo/ Copying __init__.py to ./foo/foo/__init__.py Copying project.py_tmpl to ./foo/foo/project.py Recursing into template Creating ./foo/foo/template/ Recursing into conf Creating ./foo/foo/template/conf/ Copying setup.py_tmpl to ./foo/setup.py Running /home/jhammel/TracLegos/bin/python setup.py egg_info > cd foo; python setup.py develop &> /dev/null > create-trac-project --list-templates Available projects: topp_trac_project: The Open Planning Project Trac Template foo: a new trac template based on the trachours .ini file
Recent Changes
- 12984 by rjollos on 2013-04-19 16:30:50
-
Refs #7262: Point
setup,py
link to TracSqlHelperScript0.11
directory rather thananyrelease
directory.
- 8058 by ejucovy on 2010-06-02 17:24:22
-
apply slinkp's patch for preventing overwriting of existing projects (#7164)
- 7767 by k0s on 2010-03-10 01:10:24
-
slightly more verbose handling of the postgres database
(more)
Author/Contributors
Originally developed at The Open Planning Project
Author: k0s
Contributors:
Attachments (4)
-
index.png (9.4 KB) - added by 16 years ago.
index view for TracLegosScript TTW interface
-
create-project.png (22.4 KB) - added by 16 years ago.
First screen of project creation TTW
-
project-details.png (19.6 KB) - added by 16 years ago.
second screen of TTW project creation, showing repository options
-
project-variables.png (24.3 KB) - added by 16 years ago.
third screen of TTW project creation: filling in needed variables
Download all attachments as: .zip