Hacking Python SDK » History » Version 1

Version 1/23 - Next » - Current version
Tom Clegg, 07/03/2014 10:52 AM


Hacking Python SDK

Prerequisites

sudo apt-get remove python-yaml
sudo apt-get install python python-pip python-dev python-virtualenv libyaml-dev

Get the source code

cd
git clone https://github.com/curoverse/arvados.git

Run tests

Strategy:
  1. Install your local (possibly modified) client library to a virtualenv
  2. Run the client library test suite
  3. Install your local (possibly modified) FUSE driver to the same virtualenv
  4. Run the FUSE driver test suite

Note: The test suite brings up a Keep server and an API server to run tests against. If this doesn't work, try Hacking Keep and Hacking API Server to make sure you have all the right dependencies for running the Keep and API servers.

Script:

VENVDIR=$(mktemp -d)
virtualenv --setuptools --system-site-packages "$VENVDIR" 

cd ~/arvados/sdk/python
"$VENVDIR/bin/pip" install -e .
GOPATH="$HOME/gocode" "$VENVDIR/bin/python" -m unittest discover tests

"$VENVDIR/bin/python" setup.py egg_info -b ".$(git log --format=format:%ct.%h -n1 .)" sdist rotate --keep=1
"$VENVDIR/bin/pip" install dist/arvados-python-client-0.1.*.tar.gz

cd ~/arvados/services/fuse
"$VENVDIR/bin/pip" install -e .
GOPATH="$HOME/gocode" "$VENVDIR/bin/python" -m unittest discover tests

"$VENVDIR/bin/python" setup.py egg_info -b ".$(git log --format=format:%ct.%h -n1 .)" sdist rotate --keep=1
"$VENVDIR/bin/pip" install dist/arvados_fuse-0.1.*.tar.gz