resttest3

How to build

There are two options for how to work with code

Key scripts:

Conventions

Environments

  1. Local (native) python (Linux or Mac)
    • You’ll need to pip install the following packages:
    • pycurl
    • pyyaml
    • mock
    • django==1.6.5 (for functional testing server)
    • django-tastypie==0.12.1 (for functional testing server)
    • discover (if on a python 2.6 system) - Avoid a virtualenv unless you very carefully set it up for pycurl use (it may not find libcurl)
  2. Docker: see the docker folder, we have preconfigured images for a stable, clean verified dev/test environment
  3. (sudo) ‘build.sh’ will build docker images and verify the environment - pyresttest-build-centos6 acts as the python 2.6 / RPM-based distro environment - pyresttest-build-ubuntu-14 acts as the python 2.7 and apt-based distro environment - pyresttest-build-python3 acts as a clean testbed for work on python3 compatibility
  4. After building you can use them as dev environments in volumes: - (sudo) docker run -v pwd:/tmp/pyresttest -it –rm pyresttest-build-centos6 /bin/bash - (sudo) docker run -v pwd:/tmp/pyresttest -it –rm pyresttest-build-ubuntu-14 /bin/bash
  5. OR just run the images and clone the repo from within them: 1. (sudo) docker run -it –rm pyresttest-build-ubuntu-14 /bin/bash 2. Inside container: cd /tmp && git clone https://github.com/svanoort/pyresttest.git 3. Do your coding and commit/push, etc

Releasing

Release tooling requires its own special goodies. The docker images have it all baked in, for convenience’s sake.

  1. Tar (for packaging distributions)
  2. For CentOS 6, rpm-build