Skip to main content
https://readthedocs.org/projects/rtcclient/badge/?version=latest https://img.shields.io/pypi/v/rtcclient.svg https://github.com/dixudx/rtcclient/actions/workflows/ci.yml/badge.svg https://img.shields.io/badge/slack-rtcclient-blue.svg https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg

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

About this library

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 here.

IMPORTANT NOTE: This is NOT an official-released Python-based RTC Client.

This library can help you:

  • Interacts with an RTC server to retrieve objects which contain the detailed information/configuration, including Project Areas, Team Areas, Workitems and etc;

  • Creates all kinds of Workitems through self-customized templates or copies from some existing Workitems;

  • Performs some actions on the retrieved Workitems, including get/add Comments, get/add/remove Subscribers/Children/Parent, get/upload Attachments and etc;

  • Query Workitems using specified filtered rules or directly from your saved queries;

  • Logs all the activities and messages during your operation;

Python & Rational Team Concert Versions

This project has been tested against multiple Python versions, such as “3.7”, “3.8”, “3.9”, “3.10” and “3.11”.

Please install rtcclient with version >= 0.9.0, which works well with Rational Team Concert 6.0.6.1, 5.0.1, 5.0.2 and ELM 7.0.

Installation

To install rtcclient, simply:

$ pip install rtcclient

Example

RTCClient is intended to map the objects in RTC (e.g. Project Areas, Team Areas, Workitems) into easily managed Python objects:

>>> from rtcclient.utils import setup_basic_logging
>>> from rtcclient import RTCClient
# you can remove this if you don't need logging
# default debug logging for console output
>>> setup_basic_logging()
# url ends with jazz
>>> url = "https://your_domain:9443/jazz"
>>> username = "your_username"
>>> password = "your_password"
# If your rtc server is behind a proxy, remember to set "proxies" explicitly.
# If your url ends with ccm, set ends_with_jazz to False.
# Please refer to issue #68 for detailed explanation
# If your rtc server is too old (such as Rational Team Concert 5.0.1, 5.0.2), please set old_rtc_authentication to True
>>> myclient = RTCClient(url, username, password, ends_with_jazz=True, old_rtc_authentication=False)
# it will be faster if returned properties is specified
# see in below query example
>>> wk = myclient.getWorkitem(123456) # get a workitem whose id is 123456
# get all workitems
# If both projectarea_id and projectarea_name are None, all the workitems
# in all ProjectAreas will be returned
>>> workitems_list = myclient.getWorkitems(projectarea_id=None,
                                           projectarea_name=None)
>>> myquery = myclient.query # query class
>>> projectarea_name = "your_projectarea_name"
# customize your query string
# below query string means: query all the workitems with title "use case 1"
>>> myquerystr = 'dc:title="use case 1"'
# specify the returned properties: title, id, state, owner
# This is optional. All properties will be returned if not specified
>>> returned_prop = "dc:title,dc:identifier,rtc_cm:state,rtc_cm:ownedBy"
>>> queried_wis = myquery.queryWorkitems(query_str=myquerystr,
                                         projectarea_name=projectarea_name,
                                         returned_properties=returned_prop)

Testing

Using a virtualenv is recommended. Setuptools will automatically fetch missing test dependencies.

If you have installed the tox on your system already, you can run the tests using pytest with the following command:

virtualenv
source .venv/bin/active
(venv) tox -e test
(venv) tox -e flake
(venv) tox -e pycodestyle

Testing with Poetry

When using poetry , all dependencies and test environment are managed by this tool even when using tox.

If you have already globally installed poetry on your system, you can run the tests using pytest with the following command:

poetry install --with devel
poetry run tox -e test
poetry run tox -e flake
poetry run tox -e pycodestyle

Release files for rtcclient 0.10.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rtcclient 0.10.0
File Size Uploaded
rtcclient-0.10.0.tar.gz 58.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rtcclient 0.10.0
File Interpreter ABI Platform
rtcclient-0.10.0-py3-none-any.whl Python 3 none any Details

Total release size: 98.4 kB

Release files / rtcclient-0.10.0.tar.gz

Download URL rtcclient-0.10.0.tar.gz
Size 58.8 kB
Tags Source
SHA-256 checksum
How to use checksums
61bc9da85d80f6857485055d0e63eb2641ecf16851fb1626fad204e114282b93
BLAKE2b-256 checksum
How to use checksums
14c20b196744a0cb7fbfffa715c68188f4e1a95b11671b55914d9cad3a8d8377
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.10.18 Linux/6.11.0-1018-azure

Release files / rtcclient-0.10.0-py3-none-any.whl

Download URL rtcclient-0.10.0-py3-none-any.whl
Size 39.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b968a166675b136963c77eeeaa87fbbcd6e41444ca5e26e8c741aa693ab31ed5
BLAKE2b-256 checksum
How to use checksums
c5ae347adbf0f31e18da30e85b0efb11fb81346a94df45bf872b969a716b8ded
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.10.18 Linux/6.11.0-1018-azure

Release history Release notifications | RSS feed

This release

0.10.0 This release

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page