basho / riak-python-client

The Riak client for Python.
Apache License 2.0
321 stars 183 forks source link

Python Client for Riak

Build Status

Build Status

Documentation

Documentation for the Riak Python Client Library is available here.

Documentation for Riak is available here.

Repository Cloning

NOTE: please clone this repository using the --recursive argument to git clone or follow the clone with git submodule update --init. This repository uses two submodules.

Installation

The recommended versions of Python for use with this client are Python 2.7.8 (or greater, 2.7.11 as of 2016-06-21), 3.3.x, 3.4.x and 3.5.x. The latest version from each series should be preferred. Older versions of the Python 2.7.X and 3.X series should be used with caution as they are not covered by integration tests.

Riak TS (Timeseries)

You must use version 2.7.11, 3.4.4 or 3.5.1 (or greater within a version series). Otherwise you will be affected by this Python bug.

From Source

python setup.py install

There are additional dependencies on Python packages setuptools and protobuf.

From PyPI

Official packages are signed and published to PyPI.

To install from PyPI directly you can use pip.

pip install riak

Testing

Unit Tests

Unit tests will be executed via tox if it is in your PATH, otherwise by the python2 and (if available), python3 executables:

make unit-test

Integration Tests

You have two options to run Riak locally - either build from source, or use a pre-installed Riak package.

Source

To setup the default test configuration, build a Riak node from a clone of github.com/basho/riak:

# check out latest release tag
git checkout riak-2.1.4
make locked-deps
make rel

Source build documentation.

When building from source, the protocol buffers port will be 8087 and HTTP will be 8098.

Package

Install using your platform's package manager (docs)

When installing from a package, the protocol buffers port will be 8087 and HTTP will be 8098.

Running Integration Tests

git submodule update --init
./tools/setup-riak
make integration-test

Contributors