rtcclient


Namertcclient JSON
Version 0.9.0 PyPI version JSON
download
home_pagehttps://github.com/dixudx/rtcclient
SummaryRTCClient for Rational Team Concert
upload_time2023-03-29 11:44:23
maintainer
docs_urlNone
authorDi Xu
requires_python>=3.7.0,<4.0
licenseApache License Version 2.0
keywords rtcclient rational team concert rtc
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            rtcclient
=========

.. image:: https://readthedocs.org/projects/rtcclient/badge/?version=latest
    :target: https://readthedocs.org/projects/rtcclient

.. image:: https://img.shields.io/pypi/v/rtcclient.svg
    :target: https://pypi.python.org/pypi/rtcclient

.. image:: https://api.travis-ci.org/dixudx/rtcclient.svg?branch=master
    :target: https://pypi.python.org/pypi/rtcclient

.. image:: https://img.shields.io/badge/slack-rtcclient-blue.svg
    :target: https://rtcclient.slack.com

.. image:: https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg
    :target: https://saythanks.io/to/dixudx

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

.. _here: http://www.ibm.com/developerworks/downloads/r/rtc/

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

Important Links
---------------

Support and bug-reports:
https://github.com/dixudx/rtcclient/issues?q=is%3Aopen+sort%3Acomments-desc

Project source code: https://github.com/dixudx/rtcclient

Project documentation: https://readthedocs.org/projects/rtcclient/


Installation
------------

To install rtcclient, simply:

.. code-block:: bash

    $ 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:

.. code-block:: python

    >>> 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:

.. _tox: https://pypi.python.org/pypi/tox
.. _pytest: http://pytest.org/latest/

.. code-block:: bash

    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: https://python-poetry.org/

.. code-block:: bash

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

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/dixudx/rtcclient",
    "name": "rtcclient",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7.0,<4.0",
    "maintainer_email": "",
    "keywords": "rtcclient,Rational Team Concert,RTC",
    "author": "Di Xu",
    "author_email": "stephenhsu90@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/e1/ed/541d672ded313ee78ddd6382017e60c3ef2e02ea2fd144980b395b88f795/rtcclient-0.9.0.tar.gz",
    "platform": null,
    "description": "rtcclient\n=========\n\n.. image:: https://readthedocs.org/projects/rtcclient/badge/?version=latest\n    :target: https://readthedocs.org/projects/rtcclient\n\n.. image:: https://img.shields.io/pypi/v/rtcclient.svg\n    :target: https://pypi.python.org/pypi/rtcclient\n\n.. image:: https://api.travis-ci.org/dixudx/rtcclient.svg?branch=master\n    :target: https://pypi.python.org/pypi/rtcclient\n\n.. image:: https://img.shields.io/badge/slack-rtcclient-blue.svg\n    :target: https://rtcclient.slack.com\n\n.. image:: https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg\n    :target: https://saythanks.io/to/dixudx\n\nA Python-based Client/API for Rational Team Concert (RTC)\n\nAbout this library\n------------------\n\nIBM\u00ae Rational Team Concert\u2122, is built on the Jazz platform, allowing\napplication development teams to use one tool to plan across teams, code,\nrun standups, plan sprints, and track work. For more info, please refer\nto here_.\n\n.. _here: http://www.ibm.com/developerworks/downloads/r/rtc/\n\n**IMPORTANT NOTE: This is NOT an official-released Python-based RTC Client.**\n\nThis library can help you:\n\n* Interacts with an RTC server to retrieve objects which contain the detailed information/configuration, including **Project Areas**, **Team Areas**, **Workitems** and etc;\n* Creates all kinds of **Workitems** through self-customized templates or copies from some existing **Workitems**;\n* Performs some actions on the retrieved **Workitems**, including get/add **Comments**, get/add/remove **Subscribers**/**Children**/**Parent**, get/upload **Attachments** and etc;\n* Query **Workitems** using specified filtered rules or directly from your saved queries;\n* Logs all the activities and messages during your operation;\n\n\nPython & Rational Team Concert Versions\n---------------------------------------\n\nThis project has been tested against multiple Python versions, such as \"3.7\", \"3.8\", \"3.9\", \"3.10\" and \"3.11\".\n\nPlease 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.\n\nImportant Links\n---------------\n\nSupport and bug-reports:\nhttps://github.com/dixudx/rtcclient/issues?q=is%3Aopen+sort%3Acomments-desc\n\nProject source code: https://github.com/dixudx/rtcclient\n\nProject documentation: https://readthedocs.org/projects/rtcclient/\n\n\nInstallation\n------------\n\nTo install rtcclient, simply:\n\n.. code-block:: bash\n\n    $ pip install rtcclient\n\n\nExample\n-------\n\nRTCClient is intended to map the objects in RTC (e.g. Project Areas,\nTeam Areas, Workitems) into easily managed Python objects:\n\n.. code-block:: python\n\n    >>> from rtcclient.utils import setup_basic_logging\n    >>> from rtcclient import RTCClient\n    # you can remove this if you don't need logging\n    # default debug logging for console output\n    >>> setup_basic_logging()\n    # url ends with jazz\n    >>> url = \"https://your_domain:9443/jazz\"\n    >>> username = \"your_username\"\n    >>> password = \"your_password\"\n    # If your rtc server is behind a proxy, remember to set \"proxies\" explicitly.\n    # If your url ends with ccm, set ends_with_jazz to False.\n    # Please refer to issue #68 for detailed explanation\n    # 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\n    >>> myclient = RTCClient(url, username, password, ends_with_jazz=True, old_rtc_authentication=False)\n    # it will be faster if returned properties is specified\n    # see in below query example\n    >>> wk = myclient.getWorkitem(123456) # get a workitem whose id is 123456\n    # get all workitems\n    # If both projectarea_id and projectarea_name are None, all the workitems\n    # in all ProjectAreas will be returned\n    >>> workitems_list = myclient.getWorkitems(projectarea_id=None,\n                                               projectarea_name=None)\n    >>> myquery = myclient.query # query class\n    >>> projectarea_name = \"your_projectarea_name\"\n    # customize your query string\n    # below query string means: query all the workitems with title \"use case 1\"\n    >>> myquerystr = 'dc:title=\"use case 1\"'\n    # specify the returned properties: title, id, state, owner\n    # This is optional. All properties will be returned if not specified\n    >>> returned_prop = \"dc:title,dc:identifier,rtc_cm:state,rtc_cm:ownedBy\"\n    >>> queried_wis = myquery.queryWorkitems(query_str=myquerystr,\n                                             projectarea_name=projectarea_name,\n                                             returned_properties=returned_prop)\n\n\nTesting\n-------\n\nUsing a virtualenv is recommended. Setuptools will automatically fetch\nmissing test dependencies.\n\nIf you have installed the tox_ on your system already, you can run\nthe tests using pytest_ with the following command:\n\n.. _tox: https://pypi.python.org/pypi/tox\n.. _pytest: http://pytest.org/latest/\n\n.. code-block:: bash\n\n    virtualenv\n    source .venv/bin/active\n    (venv) tox -e test\n    (venv) tox -e flake\n    (venv) tox -e pycodestyle\n\n\nTesting with Poetry\n-------------------\n\nWhen using poetry_ , all dependencies and test environment are managed by this tool even when using tox_.\n\nIf you have already globally installed poetry_ on your system, you can run\nthe tests using pytest_ with the following command:\n\n.. _poetry: https://python-poetry.org/\n\n.. code-block:: bash\n\n    poetry install --with devel\n    poetry run tox -e test\n    poetry run tox -e flake\n    poetry run tox -e pycodestyle\n",
    "bugtrack_url": null,
    "license": "Apache License Version 2.0",
    "summary": "RTCClient for Rational Team Concert",
    "version": "0.9.0",
    "split_keywords": [
        "rtcclient",
        "rational team concert",
        "rtc"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8702c3362af47befbaa99935820a1f744fdc5eeb1a024ec14e989b2bf029229d",
                "md5": "64253c874c87d33ce4e052288a06ecd0",
                "sha256": "f98ec3c829a2557bf8ea7adb8a2ff7fb724ca5d1a2c9ca296156c3b78614985e"
            },
            "downloads": -1,
            "filename": "rtcclient-0.9.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "64253c874c87d33ce4e052288a06ecd0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7.0,<4.0",
            "size": 39319,
            "upload_time": "2023-03-29T11:44:21",
            "upload_time_iso_8601": "2023-03-29T11:44:21.891220Z",
            "url": "https://files.pythonhosted.org/packages/87/02/c3362af47befbaa99935820a1f744fdc5eeb1a024ec14e989b2bf029229d/rtcclient-0.9.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e1ed541d672ded313ee78ddd6382017e60c3ef2e02ea2fd144980b395b88f795",
                "md5": "d0f7e2379f8f8903e5a9abfe9ebf3c14",
                "sha256": "2dea05748e9cab87f2f9bca5c47cba5f58d8b2e312d81dee93d90d9ac913486f"
            },
            "downloads": -1,
            "filename": "rtcclient-0.9.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d0f7e2379f8f8903e5a9abfe9ebf3c14",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7.0,<4.0",
            "size": 60738,
            "upload_time": "2023-03-29T11:44:23",
            "upload_time_iso_8601": "2023-03-29T11:44:23.172512Z",
            "url": "https://files.pythonhosted.org/packages/e1/ed/541d672ded313ee78ddd6382017e60c3ef2e02ea2fd144980b395b88f795/rtcclient-0.9.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-03-29 11:44:23",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "dixudx",
    "github_project": "rtcclient",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "rtcclient"
}
        
Elapsed time: 0.05766s