This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

Python package wrapping the Gerrit command line API.

This is very much a work in progress, and intended to be the basis for building more sophisticated scripts and applications, for example automating complex work flows in large projects.

Rationale

This project was started as a test-bed for me to explore the wider world of Python, such as:

  • Unit testing
  • Continuous Integration
  • Sphinx rst documentation
  • tox, flake8, etc.
  • Supporting multiple versions of Python.
  • Pythonic style

Basically, everything that goes into making an industrial-strength Python library or application. So you are going to see novice mistakes and code which is not idiomatic.

All contributions and suggestions are welcome, and indeed that’s the logic behind making this open source. I want to learn from the experience of those who’ve been there before me.

Features

  • Handles the low-level details of the gerrit SSH command line syntax.
  • Makes the results of those commands available to the programmer in a format which is more natural for Python programmers to manipulate.
  • Is aware of which combinations of commands and versions are supported for versions of Gerrit from 2.4 through 2.8.
  • Supports Python 2.6, 2.7, 3.3, and 3.4

Planned Features

  • Support a broad range of commands including the latest commands for Gerrit v2.8 (such as ls-members)
  • Add a module to operate on sets of Review objects to perform more complex searches, such as building dependency graphs of open reviews.
  • Add support for the administrators gsql command
    • Implement queries such as examining the audit trail on group membership
    • Wrapping generation of properly quoted SQL statements
    • Extract the SCHEMA information with a \d command and dynamically clone the database into a memory-resident sqlite database.
  • Implement support for the stream-events command, serving up events using an observer-pattern approach to allow many threads to consume events.

Feedback

If you have any suggestions or questions about gerritssh feel free to email me at kderrick_public@att.net.

If you encounter any errors or problems with gerritssh, please let me know! Open an Issue at the GitHub http://github.com/kdopen/gerritssh main repository.

Documentation

The full documentation is at http://gerritssh.rtfd.org.

Release Notes

0.1.3 (2014-06-04)

  • Fixes #4 - Unit tests are not sufficient

    Added a baseline set of unit tests which perform end-to-end validation against a live Gerrit instance if GSSH_TEST_INSTANCE is set in the environment.

  • Corrects a bug found in the ssh client disconnect function by the new tests.

  • Adds new and extended make targets to better clean and test the package.

  • Updated documentation accordingly, including expanded testing information.

  • Removed pypi from the list of environments used on travis-ci.

    The tests all run fine under pypi locally, but something in travis’s pypi environment seems to be broken since they started supporting Python 3.4.

0.1.2 (2014-06-03)

  • Fixes #1 - gsshcli.py requires __version__ attribute

    Moved VERSION.py to inside the package so the metadata is avaialable to the package and its clients, then modified setup.py and conf.py to use execfile to read the data for their own purposes.

  • Fixes #2 - gsshcli.py query command fails when –limit option used

    The demo script now reconstitues all option arguments as strings.

  • Fixes #3 - Query command throws TypeError under Python2.7

    The JSON responses from the query command are correctly converted to strings in Python 2.x.

  • Initiates unit-test coverage reporting via coveralls.io

0.1.1 (2014-05-23)

  • Minor tweak for pip install

0.1.0 (2014-05-23)

  • First release on PyPI.
Release History

Release History

0.1.3

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
gerritssh-0.1.3.tar.gz (38.3 kB) Copy SHA256 Checksum SHA256 Source Jun 5, 2014

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting