A Python API for interacting with Go Continuous Delivery
Project description
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.
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.
Versioning
Semantic versioning is used.
License
MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file gocd-0.15.1.tar.gz
.
File metadata
- Download URL: gocd-0.15.1.tar.gz
- Upload date:
- Size: 15.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f9b19a5430c10be898503a07ad471acf957f4bfd2c7a4d51892279367b2bc322 |
|
MD5 | a2e3fbdaaec2325ab35c8ccf8e4e97be |
|
BLAKE2b-256 | 60a07c6e36c92ae363752b77c8b371307c6daea756b622747bcaad4c119ccd25 |
File details
Details for the file gocd-0.15.1-py3-none-any.whl
.
File metadata
- Download URL: gocd-0.15.1-py3-none-any.whl
- Upload date:
- Size: 21.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec8f1e40c39e96980261e4335acabb5ce16ee1e911c6d6e2a5133cdf8fec53d4 |
|
MD5 | ccc98d596139051ada74c97c5ab54ca3 |
|
BLAKE2b-256 | 256aa9a79ec0dae23179ca8f205c7060d6cecb7d6d575036a20885feb31bf54d |
File details
Details for the file gocd-0.15.1-py2-none-any.whl
.
File metadata
- Download URL: gocd-0.15.1-py2-none-any.whl
- Upload date:
- Size: 21.8 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b92ff86e8e1326bf47cca03ae64ab9a32f2ad98b86038a87c30041b7ed4a8d4e |
|
MD5 | efe1de753b01c3422e98af84d897ae38 |
|
BLAKE2b-256 | a34fa85bc4c0d9cc68ec718a2509ce9f6948572284ba06a1ecf93b9d731483c4 |