Python wrapper for the CircleCI API
Project description
circleci.py
Python Wrapper around the CircleCI API
Installation
circleci.py requires Python 3. Python 2 will be EOL soon, it’s time to make the switch.
pip install circleci
Usage
Basic Usage
Make a new API token in the CircleCI application.
Import the CircleCI API and start using methods:
from circleci.api import Api circleci = Api("$YOUR_TOKEN") circleci.get_user_info()
Usage with CircleCI server
Make a new API token at https://<$YOUR_CIRCLECI_DOMAIN>/account/api.
Import the CircleCI API and start using methods:
from circleci.api import Api circleci = Api("$YOUR_TOKEN", "$YOUR_CIRCLECI_DOMAIN/api/v1.1") circleci.get_user_info()
See the tests for more examples.
Features
Supports the latest v1.1 of the CircleCI API.
Supports both circleci.com and CircleCI server (aka “Enterprise”).
Experimental Features
WARNING: All methods here work against the UNDOCUMENTED and UNSUPPORTED CircleCI API. Subject to change at any moment. Use at your own risk.
Retry a build without cache
from circleci.experimental import Experimental circleci = Experimental("$YOUR_TOKEN") circleci.retry_no_cache('$USERNAME', '$PROJECT', '$BUILD_NUMBER')
Sample Output (truncated for readability)
'author_date': '2017-10-24T12:00:27-07:00', 'author_email': 'lev@circleci.com', 'author_name': 'Lev Lazinskiy', 'body': '', 'branch': 'master', 'build_num': 21, 'fail_reason': None, 'failed': None, 'infrastructure_fail': False, 'is_first_green_build': False, 'job_name': None, 'lifecycle': 'scheduled', 'messages': [], ... 'no_dependency_cache': True, ...
Development
Your life will be a lot better if you use a virtualenv when working with python.
Fork and Clone this repo
Install python-pip and virtualenv if you do not already have it.
Create a new virtualenv with virtualenv -p python3 env.
Actiavte the new virtualenv with source env/bin/activate.
Run make dev
Hack away!
Running Tests
Tests are stored in the tests/ directory. You can run tests with make test. In order to run the integration tests you must have a valid CIRCLE_TOKEN set as an environment variable.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.