A Python-based Client for Rational Team Concert (RTC)

Overture

IBM® Rational Team Concert™, is built on the Jazz platform, allowing application development teams to use one tool to plan across teams, code, run standups, plan sprints, and track work. For more info, please refer to the official website.

IBM Rational Team Concert

Currently there are no light-weighted, easy-used clients for Rational Team Concert (aka, RTC). Indeed there is an official RTC client, which is quite powerful, fully fledged and can be integrated with Eclipse as a plugin, but it is a GUI-based client. It is very hard to integrate with or be called by other programs. Also it is neither easy-installed nor light-weighted.

The most common scenario that I want to use such a client is to open a new RTC defect/change request/story when a Jenkins pipeline finishes.

IBM RTC Web

I’ve searched all over the Internet, but found nothing. I think such a client should at least has below characteristics:

  • easy to be installed;
  • light-weighted;
  • simple to use;
  • a command line tool without GUI;
  • at least supports some basic RTC usages, such as creating all kinds of Workitems, adding comments to the retrieved Workitems and etc;

So I write such a Python-based client to implement these basic RTC scenarios.

A Python-based Client: RTCClient

This client is named rtcclient, which has already been published to Pypi. You can install this client using pip:

1
$ pip install rtcclient

Actually rtcclient is more like a library, which provides some basic classes and methods to interact with RTC server:

  • Retrieves objects which contain the detailed information/configuration, including Project Areas, Team Areas, Workitems, Saved Queries, etc;
  • Creates/Opens all kinds of Workitems through self-customized templates or Copies from some existing Workitems;
  • Performs some actions on the retrieved Workitems;
  • Queries Workitems using specified filtered rules or directly from your saved queries;
  • More features will be implemented in the future versions;

However this is not an official-released Python-based RTC client. There may be some bugs in this client. You can report the bugs using the links in the below section.

Also you are welcomed to open a new ticket if new features should be incorporated in this client.

This is an active project that I will keep on updating and maintaining.

Supported Python & RTC Versions

RTC Versions:

  • 5.0.1
  • 5.0.2

Python Versions:

  • 2.6
  • 2.7
  • 3.3