Skip to content

Latest commit

 

History

History
92 lines (64 loc) · 2.69 KB

File metadata and controls

92 lines (64 loc) · 2.69 KB
title:Developer Setup
description:Developer setup instructions for contributing to the Deis project.
keywords:deis, documentation, contributing, developer, setup, chef, knife

Developer Setup

Thank you for contributing to Deis! We have tried to make it simple to work on Deis, but as an open PaaS there are necessarily several moving pieces and some setup required. We welcome any suggestions for automating or simplifying this process.

Prerequisites

We assume you have a modern UNIX-like environment, such as Linux or Mac OS X. Many of the tools listed below will probably be present already, but install those that are not:

To contribute code back to Deis, you must also have a GitHub.com account in order to create a pull request.

First Things First

You should complete all the steps outlined in :ref:`installation` and ensure your CLI and controller are functional before moving on.

Clone the Deis Cookbook

If you want to modify Deis' Chef recipes, you should also clone its repository:

$ git clone -q https://github.com/opdemand/deis-cookbook.git

Make a Virtualenv

To keep Deis` requirements separate from other development you may do, it's preferable to create a virtual environment for python.

$ virtualenv venv --prompt='(deis)'
New python executable in venv/bin/python
Installing Setuptools.................................done.
Installing Pip........................................done.
$ source venv/bin/activate
(deis)$ pip install -r dev_requirements.txt --use-mirrors
Downloading/unpacking azure>=0.7.0 (from -r dev_requirements.txt (line 2))
  Downloading azure-0.7.0.zip (76kB): 76kB downloaded
  Running setup.py egg_info for package azure
Downloading/unpacking boto>=2.9.8 (from -r dev_requirements.txt (line 3))
...
Successfully installed azure boto ...
Cleaning up...
(deis)$

Make sure you install the requirements in the dev_requirements.txt file, which contains several additions over the runtime requirements.txt file. Please see the virtualenv documentation for more details on python virtual environments.

Modify Code and Test

When changing Python code in the Deis project, keep in mind our :ref:`standards`.

** More to come... **