Skip to main content

A Python API for interacting with Go Continuous Delivery

Project description

Coverage Status Build Status Documentation Status Latest Version Downloads Python versions Package status

The reason for this project is to provide a wrapper to easily perform operations against Go. I’ve been writing a lot of shell scripts to interact with Go using curl, but when going a little further than the most basic interactions I’ve always started to feel the need for doing all of this in a proper programming language. I.e. something that is beyond bash.

I’ve chosen to use Python and version 2.6.6 and newer as my target platform, with no external dependencies, to make it really straightforward to install/run on RHEL6 and other similar stable distributions. Python 3 is currently not supported but I want to support it.

This library was created to support a Go CLI, to handle some common scenarios you as an admin or advanced user would do.

API documentation available on read the docs.

Usage

The main interaction point for this library is the Server class, it contains helpers to instantiate the different API endpoints.

An example interaction:

>>> from gocd import Server
>>> server = Server('http://localhost:8153', user='ba', password='secret')
>>> pipeline = server.pipeline('Example-Pipeline')
>>> response = pipeline.history()
>>> bool(response)
True
>>> response.status_code
200
>>> response.content_type
'application/json'
>>> response.is_ok
True
>>> response.body
{"pagination":{"offset":0,"total":1,"page_size":10},"pipelines":[...]"}

Style

This project aims to follow the Google Python Style Guide and particularly the section on commenting the code.

License

MIT License.

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

gocd-0.8.0.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

gocd-0.8.0-py2-none-any.whl (13.7 kB view details)

Uploaded Python 2

File details

Details for the file gocd-0.8.0.tar.gz.

File metadata

  • Download URL: gocd-0.8.0.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for gocd-0.8.0.tar.gz
Algorithm Hash digest
SHA256 74f8084c80d86914bb89d317dc4e229a9e0adad0761e6c1ab411adcb7c477ccf
MD5 1e8af61601dd7e3be7788472a90c075a
BLAKE2b-256 7292ecbc9ca8fe4c10680939dffe3c7c2c54767ff41265cb9eaa731dba54a553

See more details on using hashes here.

File details

Details for the file gocd-0.8.0-py2-none-any.whl.

File metadata

File hashes

Hashes for gocd-0.8.0-py2-none-any.whl
Algorithm Hash digest
SHA256 1e774e6d5dc1cd151a87ed86f08dd43690331135a21b7bf54c60f8d11e67e50c
MD5 571b118fa49f8a6b3dbeea7ad2747187
BLAKE2b-256 4ba8cbe246f06b43cb4221371e7e984d01336d7987b084acd8a36527c31ebeca

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