Skip to main content

RTCClient for Rational Team Concert

Project description

https://readthedocs.org/projects/rtcclient/badge/?version=latest https://img.shields.io/pypi/v/rtcclient.svg https://api.travis-ci.org/dixudx/rtcclient.svg?branch=master 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 2.7, 3.5, 3.6, 3.7, 3.8 and 3.9.

Currently the newest release of rtcclient is 0.7.0, which works well with Rational Team Concert 6.0.6.1 and ELM 7.0.

For Rational Team Concert with version 5.0.1, 5.0.2, it is suggested to install rtcclient with version 0.6.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. detailed can be found in quick start of the doc
# if your url ends with ccm, set ends_with_jazz to False
# refer to issue #68 for detailed explanation
>>> myclient = RTCClient(url, username, password, ends_with_jazz=True)
# 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 py27
(venv) tox -e py35
(venv) tox -e pycodestyle

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rtcclient-0.7.0.zip (111.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rtcclient-0.7.0-py2.py3-none-any.whl (38.8 kB view details)

Uploaded Python 2Python 3

File details

Details for the file rtcclient-0.7.0.zip.

File metadata

  • Download URL: rtcclient-0.7.0.zip
  • Upload date:
  • Size: 111.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.6.13

File hashes

Hashes for rtcclient-0.7.0.zip
Algorithm Hash digest
SHA256 3c4e81729eeab9f4d45c5ba7f22a1c3682d7688c327ac9114f890c09efd87859
MD5 1e481f76d428123c15469ce977343725
BLAKE2b-256 8c0dc3989cd89b90853ae1ebcca3785d7af8ff9dd5a2c0682eda8e64c0398e85

See more details on using hashes here.

File details

Details for the file rtcclient-0.7.0-py2.py3-none-any.whl.

File metadata

  • Download URL: rtcclient-0.7.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 38.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.6.13

File hashes

Hashes for rtcclient-0.7.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b04689570a025aa7ae3479e61f325919e703ea0bed3677d27f0b41dc0a25e8c5
MD5 6111341bdca7e722f444e83e60adc1bf
BLAKE2b-256 b240db15306f9942ee8dbc51f7b58a259ecbd22df172eac0add9c7f27fd2d28c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page