wiki:TracCmdScript

Version 3 (modified by Nic Ferrier, 15 years ago) (diff)

--

command line interface to obvious trac things

Notice: This plugin is unmaintained and available for adoption.

Description

traccmd is a simple 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

Everything is done via xmlrpc, the xmlrpc support must be enabled.

We use traccmd at [http:://www.woome.com WooMe] to script releases and help build release candidates.

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 [download:traccmdscript here].

Source

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

Example

getting a ticket

$ traccmd.py ticket 3567
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 ticket 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

17002 by rjollos on 2017-11-26 17:58:18
Fix match for HTTPS

Patch by walty8.

Fixes #13339.

17001 by rjollos on 2017-11-26 17:57:31
Conform to PEP8
16557 by rjollos on 2017-04-20 06:11:21
Fix unable to connect using INI file authentication
(more)

Author/Contributors

Author: nicferrier
Contributors: