wiki:TracCmdScript

TracCmdScript

Description

TracCmdScript is command line interface allowing trac objects manipulation.

It's actually simple python based interface to the most obvious trac functions:

  • reading wiki pages
  • editing wiki pages
    • from the shell, commit message style
  • reading tickets or ticket attributes
  • creating tickets
  • updating ticket attributes

We use traccmd at WooMe to script releases and help build release candidates.

Prerequisities

The xmlrpc support must be enabled by installing XmlRpcPlugin, as everything is done via xmlrpc.

Editing

An wrapper for editing wiki pages directly inside emacs is also included, tho this is a little rough.

Bugs/Feature Requests

Existing bugs and feature requests for TracCmdScript are here.

If you have any issues, create a new ticket.

Download

Download the zipped source from here.

Source

You can check out TracCmdScript from here using Subversion, or browse the source with Trac.

Example

getting a ticket

$ traccmd.py ticket 1
1 status reopened
1 type defect
1 description Test patch
1 description 
1 description Something went tits. Fix it!
1 reporter admin
1 cc 
1 ticket_status sign off requested
1 component tech.homepage
1 summary Test patch
1 priority minor
1 owner nferrier
1 version 
1 milestone 
1 keywords 
1 resolution fixed

getting a ticket attribute:

$ traccmd.py ticketdetail 1 resolution
#1 resolution: fixed

getting a wiki page:

$ traccmd.py wiki TracGuide | head -n15
(:tracwikiproperties (
:comment ""
:lastModified "20090410T15:29:13"
:version "2"
:name "TracGuide"
:author "trac"
))
= The Trac User and Administration Guide =
[[TracGuideToc]]

The TracGuide is meant to serve as a starting point for all documentation regarding Trac usage and development. The guide is a free document, a collaborative effort, and a part of the [http://trac.edgewall.org Trac Project] itself.

== Table of Contents ==
Currently available documentation:
 * TracGuide (This page)  -- Documentation starting point.

A more complex example is the use in a release candidate maker where a number of repos in a distributed revision control system are pulled together to make an rc:

traccmd.py ticket $TICKETS \
  | sed -rne 's,^([0-9]+).*[^h](http(s)*://hg.woome.com/[^] ]+).*,\1 \2,p' \
  | awk '{print $2}' \
  | xargs hg in 

shows incomming patches from hg repos mentioned in $TICKETS.

Recent Changes

[9532] by nicferrier on 2010-11-26 23:49:25
major new revision of traccmd.py
[6489] by nicferrier on 2009-09-03 04:54:12
added first version of trac.el
[6488] by nicferrier on 2009-09-03 04:38:08
first checkin for trac hacks repo

Author/Contributors

Author: nicferrier
Contributors:

Last modified 3 years ago Last modified on Mar 14, 2012, 12:55:36 PM