Skip to main content

Use the TeamCity REST API from Python

Project description

PyTeamCity

Latest Version Travis CI Build Status AppVeyor Build Status Coveralls Coverage Status

Python interface to the REST API of TeamCity

Installation

pip install pyteamcity

New API work-in-progress

Note that I am working on a new API currently called pyteamcity.future (initially added in #37).

Goal here is to create a brand new API that is much more flexible and to have nicer code that is easier to work with. The old code encourages adding a zillion methods for different ways of filtering. The new code has an API with a smaller number of methods that are more consistent and more flexible in terms of filtering. It is modeled after the Django ORM API.

There’s no formal docs for this API yet, but you should be able to figure out how to use it by looking at the unit tests.

I am probably not going to merge PRs that add things to the old API, because I see the new API as the future. I of course am very interested in PRs that add things to the new API!

Examples

Connect to server

from pyteamcity import TeamCity

# This initialises the Client with the settings passed. <port> has to be an integer.
tc = TeamCity('account', 'password', 'server', <port>)

or specify no parameters and it will read settings from environment variables:

  • TEAMCITY_USER

  • TEAMCITY_PASSWORD

  • TEAMCITY_HOST

  • TEAMCITY_PORT (Defaults to 80 if not set)

from pyteamcity import TeamCity

# Initialises with environment variables: TEAMCITY_{USER,PASSWORD,HOST,PORT}
tc = TeamCity()

Getting data

tc.get_projects()
tc.get_project_by_project_id('MyProject')
tc.get_all_users()
tc.get_user_by_username('codyw')
tc.get_all_vcs_roots()
tc.get_all_build_types()
tc.get_changes_by_build_id(73450)
tc.get_build_statistics_by_build_id(73450)
tc.get_build_tags_by_build_id(73450)
tc.get_all_changes()
tc.get_change_by_change_id(16884)
tc.get_all_builds(start=0, count=3)
tc.get_build_by_build_id(73450)
tc.get_server_info()
tc.get_agents()
tc.get_all_plugins()

You can also look at sample.py or test_legacy.py

Acknowledgements

This is a heavily-modified fork of https://github.com/yotamoron/teamcity-python-rest-client so many thanks are due to Yotam Oron

Changes

Unreleased

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

pyteamcity-0.1.0.tar.gz (33.5 kB view details)

Uploaded Source

File details

Details for the file pyteamcity-0.1.0.tar.gz.

File metadata

  • Download URL: pyteamcity-0.1.0.tar.gz
  • Upload date:
  • Size: 33.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyteamcity-0.1.0.tar.gz
Algorithm Hash digest
SHA256 73fe91c15ea1fb4db6fffd1fa895845ae8cf1fb3089e8ddce5c95845bc22734a
MD5 9c7ea67eb930d77c1394b0dc84a037db
BLAKE2b-256 9754481b16aeb0faa90300843ec9a825ebfae86be12c99e94900475324140b33

See more details on using hashes here.

Supported by

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